1 / 50

Cours 5

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. Les circuits logiques.

Download Presentation

Cours 5

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. 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-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. sif-1053

  3. Les circuits logiques sif-1053

  4. 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’. sif-1053

  5. Le circuit OU sif-1053

  6. Le circuit ET sif-1053

  7. Identités de l’algèbre de Boole sif-1053

  8. 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. sif-1053

  9. Le circuit NET • Le circuit NET sif-1053

  10. 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. sif-1053

  11. Il est important de constater que le circuit NET peut, par de judicieuses combinaisons, servir à réaliser les trois portes logiques de base. Loi d’idempotence (AA = A) Loi de De Morgan (AB)’ = A’ + B’ sif-1053

  12. Le circuit OU EXCLUSIF (XOU) A A xor B • 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. sif-1053

  13. 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 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) 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)) sif-1053

  17. Circuits plus élaborés • Multiplexeur 4/1 avec la sélection de l’entrée par un décodeur 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 sif-1053

  19. Multiplexeur 4/1 O = (D0 ET (C1’ ET C2’) ) OU (D1 ET (C1 ET C2’)) OU (D2 ET (C1’ ET C2)) OU (D3 ET (C1 ET C2)) Permet de sélectionner une entrée parmi quatre 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 sif-1053

  21. Décodeur et ALU 0 1 1 sif-1053

  22. Décodeur 3/8 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 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’ sif-1053

  25. Circuits plus élaborés • Alimentation du segment a 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 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 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 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 sif-1053

  30. Circuits plus élaborés 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. 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 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 sif-1053

  34. Architecture RISC sif-1053

  35. Architecture CISC sif-1053

  36. Architecture CISC MAR: Memory adr. reg. MDR: Memory data reg. MBR: Memory byte reg. PC: Program counter SP: stack pointer LV: base pointer sif-1053

  37. Architecture CISC F0, F1: Opérations de l ’ALU ENA, ENB: Validation des entrées (ENABLE) INVA: Inversion de A INC: Tenir compte du carry in (+ 1) 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 sif-1053

  39. Architecture CISC MPC: program counter MIR: instruction register sif-1053

  40. Architecture CISC NEXT_ADR.: adr. de la prochaine instruction JAM: détermine comment la prochaine instr. est sélectionnée ALU: fonction du ALU ou shifter C: reg. destination Mem: fonction mémoire B: reg. source 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 sif-1053

  42. Architecture CISC (pile) PROC() { int a1, a2, a3 ; } sif-1053

  43. Architecture CISC (pile) { a1 = a2 + a3 ; } ILOAD a2 ILOAD a3 ADD ISTORE a1 sif-1053

  44. Architecture CISC == sif-1053

  45. Introduction au ISA deMIC-1 (Architecture CISC) • Jeu d’instructions sif-1053

  46. Exemple d’implantation 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) sif-1053

  48. instruction iadd1 iadd2 SP - 1 sif-1053

  49. instruction iadd2 iadd3 TOS sif-1053

  50. instruction iadd3 main1 MDR + H sif-1053

More Related