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 numériques
  4. Objectifs et évaluation du cours
  5. Évolution historique du calcul
  6. Architecture de von Neumann
  7. Composants et cycle processeur
  8. Instructions et modèles d’exécution
  9. Pipeline et performance

1. Couches d’abstraction informatiques

Notions clés & Définitions

  • Architecture informatique : Wikipédia — Étude et conception des couches d’abstraction qui composent un système et des relations entre ces couches.
  • Couche d’abstraction : Couche logicielle qui simplifie la manipulation de la couche inférieure.
  • Système : Ensemble de moyens matériels ou logiciels ayant pour finalité d’élaborer, traiter, stocker, acheminer, présenter ou détruire des données.

Points essentiels

  • Les couches bas niveau étudiées en BAI sont:
    • l’architecture matérielle
    • l’architecture de jeu d’instructions
    • la programmation bas niveau

Astuce mémo

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

2. Pourquoi traverser les couches

Points essentiels

  • La traduction d’un problème vers les électrons passe successivement par le choix d’un algorithme et de structures de données, le choix d’un langage, la compilation ou l’interprétation, l’assemblage, puis l’implémentation matérielle.

📌 La connaissance de l’implémentation d’une couche n’est généralement pas nécessaire si son interface est connue.

  • Traverser les couches d’abstraction devient utile lorsqu’un programme produit une erreur comme une segmentation fault ou un coredump, consomme trop de batterie, est lent ou sature la mémoire.

Astuce mémo

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

3. Universalité et limites numériques

★ À maîtriser

  • Selon la thèse de Turing de 1937, tout calcul peut être réalisé par une machine de Turing, et les ordinateurs peuvent émuler ces machines avec assez de mémoire.

📌 Les téléphones et les supercalculateurs peuvent effectuer les mêmes calculs, mais ils diffèrent par leur efficacité en temps, en espace, en énergie et en coût.

  • Pour les nombres flottants, l’associativité de l’addition n’est pas toujours vérifiée : avec a = 1e20, b = -1e20 et c = 3.14, a + (b + c) est différent de (a + b) + c.

Compléments

📌 Les ordinateurs traitent des représentations finies des données dont les propriétés peuvent différer de celles des objets mathématiques idéaux.

Astuce mémo

Même calcul possible, mais efficacité différente ; réel mathématique ≠ float

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 un test Moodle représentant 20 % de la note finale, un second test Moodle représentant 30 % et un QCM final sur table représentant 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. Évolution historique du calcul

★ À maîtriser

  • 🔄 Les premières étapes historiques sont: l’utilisation manuelle des cailloux, de l’abaque et de la règle à calcul, la mécanisation du calcul avec la Pascaline, la mécanisation du contrôle et du calcul avec la machine analytique

  • La machine analytique, inventée par Babbage en 1833, est présentée comme le premier ordinateur universel, mais elle n’a jamais été entièrement construite.

  • L’ENIAC est le premier ordinateur électronique universel et date de 1946 ; il mesure 30 mètres, pèse 30 tonnes et comporte 18 000 tubes à vide.

  • L’EDVAC, successeur de l’ENIAC en 1951, introduit une architecture à programme enregistré dite architecture de von Neumann.

Compléments

  • Le métier Jacquard, mis au point par Jacquard en 1801, est un métier à tisser programmable utilisant des cartes perforées.

  • Le transistor, découvert le 16 décembre 1947, a fortement réduit le coût, la taille et la consommation des circuits tout en améliorant leur fiabilité.

Astuce mémo

Cailloux → Pascaline → cartes perforées → électronique → microprocesseur

6. Architecture de von Neumann

Notions clés & Définitions

  • Architecture de von Neumann : Architecture à programmes enregistrés dans laquelle les instructions et les données sont stockées dans une même mémoire, les cellules sont identifiées par leur adresse, 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 : Contrôle le flot de données et 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 provenant de la mémoire ou du banc de registres.
  • Bus : Transmet les informations d’une unité ou d’un composant à un ou plusieurs autres composants.

Astuce mémo

Instructions et données dans une même mémoire adressée, pilotées par un processeur

7. Composants et cycle processeur

Notions clés & Définitions

  • Compteur ordinal : Contient l’adresse de la prochaine instruction à exécuter.
  • Registre d’instruction : Contient l’instruction en cours de traitement.
  • Horloge : L’horloge cadence le travail des unités et sa fréquence s’exprime en MHz ou en GHz.

★ À maîtriser

  • 🔄 Le cycle d’exécution comporte cinq étapes:
    1. chargement de l’instruction à exécuter
    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

  • Le décodeur d’instruction traduit l’instruction en séquences de signaux de contrôle et peut être câblé en dur ou micro-programmé.

Astuce mémo

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

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

Notions clés & Définitions

  • Instruction machine : Instruction que le processeur est capable d’exécuter et qui spécifie l’action, les opérandes source, l’opérande destination et l’adresse de la prochaine instruction.
  • Assembleur : Représentation lisible par l’humain des données et instructions machine, dans laquelle les adresses deviennent des labels et les opcodes des noms d’instructions.

★ À maîtriser

  • Les quatre types d’instructions machine sont:
    • les opérations d’entrée-sortie
    • les transferts de données entre registres et mémoire
    • les opérations arithmétiques et logiques
    • les opérations de contrôle

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

Compléments

  • Les modèles d’accès à la mémoire comprennent:
    • l’architecture à pile
    • l’architecture à accumulateur
    • l’architecture registre-mémoire
    • l’architecture registre-registre
    • l’architecture mémoire-mémoire

Astuce mémo

Pile, accumulateur, registre-mémoire, registre-registre, mémoire-mémoire

9. Pipeline et performance

★ À maîtriser

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

Compléments

  • Dans une architecture à pile, le calcul A = B + C s’écrit PUSH B, PUSH C, ADD, puis POP A.

  • Dans une architecture registre-registre, le calcul A = B + C nécessite de charger B et C dans des registres, d’effectuer l’addition entre registres, puis de stocker le résultat dans A.

  • L’architecture mémoire-mémoire nécessite peu d’instructions, mais elle est peu intéressante car la mémoire centrale est lente par rapport aux processeurs actuels.

Tableaux de synthèse

Composants principaux du processeur

ComposantRôleÉléments ou caractéristiques
MémoireStocker instructions et donnéesCellules adressables, registre d’adresse, registre de donnée
Unité de contrôleCoordonner les unitésCompteur ordinal, registre d’instruction, décodeur
Unité de traitementRéaliser les calculsUAL et banc de registres
BusTransmettre les informationsDonnées bidirectionnel, adresses et contrôle unidirectionnels

Modèles d’accès à la mémoire

ArchitectureAccès des opérationsExemple ou propriété
À pileSommet de pileUtilisée par la machine virtuelle Java
À accumulateurAccumulateur impliciteUtilisée par l’EDVAC et Cardiac
Registre-mémoireRegistres et mémoireUtilisée par x86
Registre-registreRegistres uniquementUtilisée par ARM
Mémoire-mémoireMémoire directementPeu intéressante à cause de la lenteur mémoire

Teste tes connaissances

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

1. Quel est l’objet principal 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 57 flashcards interactives.

Qu'est-ce que l'architecture informatique étudie et conçoit ?

Les couches d'abstraction d'un système et leurs relations.

Qu'est-ce qu'un système en informatique ?

Un ensemble de moyens matériels ou logiciels pour traiter des données.

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

Une couche logicielle simplifiant la manipulation de la couche inférieure.

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