Contenus | Capacités attendues | Commentaires |
---|---|---|
Modèle d’architecture séquentielle (von Neumann) | Distinguer les rôles et les caractéristiques des différents constituants d’une machine. | La présentation se limite aux concepts généraux. On distingue les architectures monoprocesseur et les architectures multiprocesseur. |
L’animation du CEA vous présente le fonctionnement général d’un ordinateur. Si votre appareil ne supporte pas flash, vous pouvez consulter la version vidéo.
Vidéo servie sans cookie via Project Segfault
Réaliser en grand format, une vue schématique d’un ordinateur en indiquant le nom des diverses parties, leurs connexions et leurs rôles.
Le premier ordinateur électronique conçu pour être une machine de Turing est l’ENIAC réalisé en 1943.
Son architecture fut décrite par John von Neumann, un mathématicien et physicien américano-hongrois pour la réalisation de l’EDVAC en juin 1945 (le successeur binaire de l’ENIAC qui était décimal).
Cette architecture sert de base, à quelques améliorations près, à l’architecture de tous les ordinateurs depuis.
C’est un modèle pour un ordinateur qui utilise une structure de stockage unique pour conserver à la fois les instructions et les données demandées ou produites par le calcul.
L’architecture de Von Neumann est centrée autour de deux composants principaux:
Ces deux circuits sont reliés par des fils appelés bus de communication.
D’autre part, le processeur dispose de bus d’entrée et de sortie qui le relient à d’autres parties de l’ordinateur appelées les périphériques comme le disque dur, l’écran, le clavier…
Le processeur joue le rôle du chef d’orchestre, il donne des ordres aux périphériques et à la mémoire et est responsable de l’exécution du programme de l’ordinateur.
Un ordinateur avec cette architecture est un ordinateur à programme enregistré: il enregistre les instructions des programmes qu’il exécute dans sa mémoire vive.
Au contraire, l’architecture de type Harvard est une conception des processeurs qui sépare physiquement la mémoire de données et la mémoire programme. L’accès à chacune des deux mémoires s’effectue via deux bus distincts.
Au sein du processeur le traitement des tâches a été séparé en deux:
Lorsque l’opération est terminée, l’unité de commande passe à l’instruction suivante du programme. La fréquence d’exécution du processeur est contrôlée par un signal d’horloge: la cadence des processeurs actuels est de l’ordre du GHz à l’heure actuelle.
La mémoire désignée dans l’architecture de Von Neumann est ce que l’on appelle aujourd’hui la mémoire vive (RAM). Celle-ci est rapide, mais a besoin d’être alimentée en permanence pour garder les données, ainsi à chaque extinction de l’ordinateur, elle est perdue, on la qualifie de mémoire volatile.
Pour résoudre ce problème on recourt à deux types de mémoires non volatiles:
La mémoire de masse: Pour stocker les données et les programmes, on ajoute un périphérique appelé mémoire de masse: le disque dur de vos ordinateurs, ou une mémoire flash dans le cas des tablettes et smartphones. Cette mémoire est capable de stocker une grande quantité de données, mais à l’inconvénient d’être beaucoup moins rapides que la mémoire vive(RAM Random Access Memory), c’est pour cela que lors du lancement d’un programme les données nécessaire à son exécution sont généralement transférées vers la RAM pour une exécution plus rapide.
La mémoire morte est une mémoire qui ne peut être que lue(ROM Read Only Memory), elle contient en général le firmware de l’ordinateur (BIOS ou UEFI) qui est le programme qui se charge à chaque allumage de l’ordinateur.
Les registres du processeur: Le processeur possède également un très petit nombre de cases mémoires très rapides appelées des registres dont la capacité dépasse rarement quelques dizaines d’octet pour des raisons de coût et de place. Source Wikipedia
Classer les diverses mémoires présentes dans un ordinateur par “rapidité”, et expliquer leurs principales caractéristiques.
On utilise aujourd’hui des architectures multiprocesseurs afin d’améliorer la rapidité d’exécution sans augmenter la fréquence d’horloge.
L’utilisation efficace des architectures multiprocesseurs nécessite de pouvoir traiter les informations de manière simultanée, pour cela il faut des algorithmes spécialisés: on parle de parallélisme.