1 / 53

Systèmes numériques

Systèmes numériques. Du microprocesseur aux circuits logiques. Control Unit. Arith. Logic. Unit. Architecture des Ordinateurs. 1- Processeurs 2- Mémoire 3- Entrées-Sorties. mémoire. E/S. Processeur. bus. 1011 0001. 0000 0111. Organisation de la m é moire. Processeur.

danyl
Download Presentation

Systèmes numériques

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

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

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

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

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

  6. R/W 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 CS CS CS @ bus Décodage d ’adresse

  7. CPU • La mémoire contient la suite d ’instructions constituant le programme B1 07 langage machine assemblage assembleur ADD R1,#7 compilation langage évolué a=a+7 • Trois grands types d’instructions: transfert, calcul, branchement LD R1,#4 :chargement de la valeur numérique 4 dans le registre R1 MOV R2,ad1 :chargement du contenu de la mémoire @ad1 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 R1 :incrémentation de R1 de 1 BR,ad1 :branchement inconditionnel à l’adresse ad1 JE,ad2 :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 @ CD04 Code op. Compteur de programme @ CD07 Code op. @ CD08 Code op. @ CD10 Code op.

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

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

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

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

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

  14. UC pile SP ALU IR MDR B1 flag 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 X 2 implémentations matérielles machine cablée machine microprogrammée PC Z M@R 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 = 1048576 1 Méga Code héxadécimal 1100 0101 1011 0011 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… a1a0 + 1 = N + 1 4 = 0100 -4 = 1100

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

  18. 1 1 1 1 1 0 0 0 1 0 1 0 1 0 0 0 A A B B 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 Produit: A.B

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

  20. 1 1 1 0 1 0 1 0 A B A.B 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 B S

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

  22. 1 x 1 1 x 1 1 1 1 x x x x 1 01 11 0 0 10 00 BA DC 00 01 11 10 Portes logiques élémentaires Simplification d ’une fonction logique Exemple: afficheur 7-segments a N 0 1234567 8 9 10 11 12131415 DCBA 0000 00010010 0011 0100 0101 0110 0111 1000 10011010 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 table de Karnaugh:

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

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

  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. A ve1 ve2 vs2 vs1 =ve2 ve1 vs1 =ve2 Paramètres électriques et temporels Définition des niveaux logiques Vs Valim A A vs2 Ve Valim

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

  28. A ve1 Paramètres électriques et temporels Définition des niveaux logiques Vs Valim VOHmin A A 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. Valim vs IOH t vs t IOL Paramètres électriques et temporels Valim Valim Courants de sortie S S E E charge Valim Courant statique  0 Consommation de courant en commutation 0 1 =1 =0 S =0 =1 E =0 =1

  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. A7:A0 0 1 1 0 0 1 0 1 A7:A0 0 1 1 0 1 1 0 1 Seven Sodd 1 0 Seven Sodd 1 0 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: contradiction

  37. Quelques fonctions combinatoires Multiplexeur/Démultiplexeur 0 1 0 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. 0 1 0 1 0 1 Logique séquentielle Principe 0 E1 S1 1 0 S2 E2 1 État initial Mémorisation

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

  42. E1 E1 t t E2 E2 t t S2 S2 t t Logique séquentielle Principe 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 1 Q T 0 R 1 E2 R Table de vérité t S T 1 1 0 R 0 1 X S 1 0 X Q 1 0 t mém. T S t

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

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

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

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

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

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

  50. J Q T Q K 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 J Q Ck T T Q Q K K Compteur synchrone

More Related