Fiche de révision : Bases de l’architecture informatique

Plan du Cours

  1. Couches d’abstraction informatiques
  2. Pourquoi traverser les couches
  3. Universalité et limites du calcul
  4. Objectifs et évaluation du cours
  5. Architecture de von Neumann
  6. Composants et cycle processeur
  7. Instructions et modèles d’exécution
  8. Architectures d’accès mémoire

Repères chronologiques

  1. 1642La Pascaline a mécanisé le calcul. — Pascal, 1642
  2. 1801Le métier Jacquard était un métier à tisser programmable utilisant des cartes perforées.
  3. 1833La machine analytique était le premier ordinateur universel, mais elle ne fut jamais entièrement construite. — Babbage, 1833
  4. 1951L’EDVAC était le successeur de l’ENIAC et utilisait un programme enregistré selon l’architecture de von Neumann.
  5. 1971L’Intel 4004 était le premier microprocesseur commercial et comportait 2300 transistors.

1. Couches d’abstraction informatiques

Notions clés & Définitions

  • Architecture informatique : Wikipédia — Étude et conception des couches d’abstraction d’un système et des relations entre ces couches.
  • Couche d’abstraction : Couche logicielle qui simplifie la manipulation de la couche inférieure.

★ À maîtriser

  • 🔄 La traduction vers les couches inférieures suit cette chaîne:
    1. Problème en langage naturel
    2. Algorithme et structures de données
    3. Langage de programmation
    4. Code objet
    5. Assembleur
    6. Langage machine
    7. Architecture interne
    8. Circuits logiques
    9. Composants matériels
    10. Science physique

Compléments

  • L’architecture matérielle concerne l’agencement interne des circuits électroniques, l’architecture de jeu d’instructions spécifie fonctionnellement le processeur et la programmation bas niveau utilise notamment l’assembleur et les représentations de l’information.

Astuce mémo

Problème → algorithme → langage → assembleur → machine → circuits

2. Pourquoi traverser les couches

Points essentiels

  • Connaître l’interface d’une couche d’abstraction suffit généralement sans connaître son implémentation, ce qui améliore la productivité du programmeur.

  • Il faut traverser les couches d’abstraction lorsqu’un programme produit une erreur, consomme trop de batterie, est lent ou sature la mémoire.

Astuce mémo

Bug, lenteur ou mémoire saturée → exploration des couches inférieures

3. Universalité et limites du calcul

Points essentiels

  • Selon la thèse de Turing de 1937, tout calcul peut être réalisé par une machine de Turing disposant notamment d’un ruban infini, d’un état et d’une table finie d’instructions.

📌 Tous les ordinateurs peuvent calculer les mêmes choses avec assez de mémoire, mais ils diffèrent par leur efficacité en temps, espace, énergie et coût.

  • Pour les nombres flottants, l’égalité a + (b + c) = (a + b) + c n’est pas toujours vraie, comme le montre l’exemple a = 1e20, b = -1e20 et c = 3.14.

Astuce mémo

Même capacité de calcul, mais efficacité différente

4. Objectifs et évaluation du cours

★ À maîtriser

  • Les objectifs du cours sont:

    • Comprendre les grandes lignes du fonctionnement d’un processeur
    • Connaître les éléments fondamentaux d’une architecture matérielle
    • Acquérir des bases de programmation en assembleur
    • Repérer les pièges de la programmation haut niveau
  • L’évaluation comprend deux tests Moodle comptant respectivement pour 20 % et 30 % de la note finale, ainsi qu’un QCM final sur table comptant pour 50 %.

Compléments

📌 Aucun document n’est autorisé au contrôle final, sauf le processeur Cardiac papier et sa documentation, chaque document devant porter le nom de l’étudiant.

5. Architecture de von Neumann

Notions clés & Définitions

  • Architecture de von Neumann : Architecture à programmes enregistrés où les instructions et les données sont stockées dans une même mémoire, le processeur et la mémoire sont séparés, et les instructions sont exécutées séquentiellement.
  • Mémoire : Stocke les instructions et les données dans des cellules identifiables par leur adresse.
  • Unité de contrôle : Coordonne les autres unités en traduisant une instruction en signaux de contrôle.
  • Unité de traitement : Réalise les calculs à partir de données présentes dans la mémoire ou dans le banc de registres.

Astuce mémo

Instructions et données partagent la mémoire, mais processeur et mémoire sont séparés

6. Composants et cycle processeur

Notions clés & Définitions

  • Horloge : L’horloge cadence le travail des composants et sa fréquence s’exprime en MHz ou en GHz.

★ À maîtriser

  • Les principaux bus sont:

    • Bus de données bidirectionnel
    • Bus d’adresses unidirectionnel
    • Bus de contrôle unidirectionnel
  • 🔄 Le cycle d’exécution comporte cinq étapes:

    1. Chargement de l’instruction
    2. Incrémentation du compteur ordinal
    3. Décodage de l’instruction
    4. Exécution de l’instruction
    5. Écriture des résultats

Compléments

  • Un pipeline décompose le cycle d’exécution en plusieurs étages afin de traiter simultanément plusieurs instructions et d’optimiser les ressources matérielles.

Astuce mémo

Charger → incrémenter → décoder → exécuter → écrire

7. Instructions et modèles d’exécution

Notions clés & Définitions

  • Instruction machine : Une instruction machine spécifie une action, ses opérandes source, son opérande destination et l’adresse de la prochaine instruction.
  • Assembleur : Représentation lisible par l’humain des instructions machine et des données, dans laquelle les adresses deviennent des labels et les opcodes deviennent des noms d’instructions.

Points essentiels

  • Les instructions machine comprennent les opérations d’entrée-sortie, les transferts entre registres et mémoire, les opérations arithmétiques et logiques, et les opérations de contrôle.

📌 Un jeu RISC comporte généralement des dizaines d’instructions, comme ARM, tandis qu’un jeu CISC peut en comporter des centaines, comme x86.

Astuce mémo

RISC réduit contre CISC complexe

8. Architectures d’accès mémoire

★ À maîtriser

  • Dans une architecture à pile, le calcul A = B + C s’effectue en empilant B et C, en additionnant les deux valeurs au sommet de la pile, puis en dépilant le résultat dans A.

📌 Dans une architecture registre-mémoire, l’unité arithmétique et logique peut utiliser directement des données en registre et en mémoire, tandis que dans une architecture registre-registre elle ne travaille que sur des données du banc de registres.

Compléments

  • Dans une architecture à accumulateur, le calcul A = B + C charge B dans l’accumulateur, ajoute C, puis stocke le contenu de l’accumulateur dans A.

  • Les architectures x86 utilisent le modèle registre-mémoire, tandis que les architectures ARM utilisent le modèle registre-registre.

📌 Une architecture mémoire-mémoire ne dispose d’aucun registre et effectue directement les opérations en mémoire, mais elle est peu intéressante en raison de la lenteur de la mémoire centrale par rapport aux processeurs actuels.

Astuce mémo

Pile → accumulateur → registre-mémoire → registre-registre → mémoire-mémoire

Tableaux de synthèse

Principaux composants du processeur

ComposantRôleÉléments associés
MémoireStocker instructions et donnéesRegistre d’adresse, registre de donnée, cellules mémoire
Unité de contrôleCoordonner les unitésCompteur ordinal, registre d’instruction, décodeur
Unité de traitementRéaliser les calculsUAL, banc de registres
BusTransmettre les informationsDonnées, adresses, contrôle

Modèles d’accès mémoire

ModèleAccès des opérationsExemple
PileSommet de pileMachine virtuelle Java
AccumulateurAccumulateur impliciteEDVAC, Cardiac
Registre-mémoireRegistres et mémoirex86
Registre-registreRegistres uniquementARM
Mémoire-mémoireMémoire uniquementPeu intéressante

Teste tes connaissances

Teste tes connaissances sur Bases de l’architecture informatique avec 11 questions à choix multiples et corrections détaillées.

1. Quelle est la caractéristique centrale de l’architecture informatique ?

2. Quel rôle joue une couche d’abstraction dans un système informatique ?

Faire le QCM →

Révisez avec les flashcards

Mémorisez les concepts clés de Bases de l’architecture informatique avec 11 flashcards interactives.

Qu'est-ce que l'architecture informatique selon Wikipédia ?

L'étude et la conception des couches d'abstraction d'un système et leurs relations.

Qu'est-ce qu'une couche d'abstraction en informatique ?

Une couche logicielle qui simplifie la manipulation de la couche inférieure.

Pourquoi connaître l’interface d’une couche d’abstraction est suffisant ?

Cela améliore la productivité du programmeur.

Voir les flashcards →

Cours similaires

Crée tes propres fiches de révision

Importe ton cours et l'IA génère fiches, QCM et flashcards en 30 secondes.

Générateur de fiches