Architecture de Von Neumann: caractéristiques et limites

Architecture de von Neumann

L'architecture Von Neumann est l'architecture commune à tous les processeurs PC. Chacun des processeurs, de BRAS à x86, de 8086 à Ryzen en passant par Pentium. Toutes sont des architectures von Neumann et elles héritent toutes d'un certain problème commun.

John Von Neumann était un mathématicien d'origine hongroise qui est célèbre pour deux choses. Le premier est d'avoir travaillé sur le projet Manhattan où la bombe atomique que les États-Unis ont larguée contre le Japon à la fin de la Seconde Guerre mondiale a été développée. Le second est le développement de l'architecture de base que nos PC utilisent aujourd'hui, quelle que soit leur taille, ainsi que la forme des programmes qu'ils exécutent.

Qu'est-ce que l'architecture Von Neumann?

Architecte Von Neumann

L'architecture Von Neumann est basée sur tous les processeurs PC, car tous sont organisés avec une série de composants communs, qui sont les suivants:

  • Unité de contrôle: In charge des étapes d'acquisition et de décodage du cycle d'instruction.
  • Unité arithmétique logique ou ALU: In chargé d'effectuer les opérations mathématiques et logiques requises par les programmes.
  • Mémoire: La mémoire dans laquelle le programme est stocké, que nous appelons mémoire RAM
  • Dispositif d'entrée: À partir de laquelle nous communiquons avec l'ordinateur.
  • Dispositif de sortie: À partir de laquelle l'ordinateur communique avec nous.

Comme vous pouvez le voir, c'est l'architecture commune à tous les processeurs et c'est pourquoi elle n'a plus de secret, mais il existe un autre type d'architecture connue sous le nom d'architecture Harvard dans laquelle le RAM la mémoire est divisée en deux puits différents, dans l'un d'eux. Ils stockent les instructions de programme et les données dans l'autre mémoire, ayant des bus séparés pour l'adressage de la mémoire et les instructions.

Quelles sont les limites de l'architecture Von Neumann?

Le principal inconvénient est que la mémoire RAM, où se trouvent les instructions et les données à traiter, est unifiée et partagée via le même bus de données et un adressage commun. Les instructions et les données doivent donc être capturées séquentiellement à partir de la mémoire. Ce goulot d'étranglement est ce que l'on appelle le goulot d'étranglement de Von Neumann. C'est pourquoi les différents microprocesseurs ont le cache le plus proche du processeur divisé en deux types, l'un pour les données et l'autre pour les instructions.

Ces dernières années, les vitesses de processeur ont augmenté beaucoup plus rapidement que la mémoire RAM, augmentant ainsi le temps nécessaire pour que les données soient communiquées à partir de la mémoire. Ce qui a obligé à développer des solutions pour atténuer ce problème, un produit du goulot d'étranglement de Von Neumann.

Dans les processeurs où l'architecture Harvard est normalement utilisée, ils sont autonomes et n'ont donc pas accès à la RAM commune du système, mais exécutent à la place leur propre mémoire et programme indépendamment du principal Processeur. Ces processeurs reçoivent la liste des données et des instructions sur deux branches de données différentes. Un pour la mémoire d'instructions et l'autre pour la mémoire de données dudit processeur.

Pourquoi est-il utilisé dans le CPU et le GPU?

Rendu du processeur

La raison principale est le fait que l'augmentation du nombre de bus signifie augmenter le périmètre du processeur lui-même, car pour communiquer avec la mémoire externe, il est nécessaire que l'interface soit à l'extérieur de celle-ci. Cela conduit à des processeurs beaucoup plus gros et beaucoup plus chers. Ainsi, la principale raison pour laquelle l'architecture de Von Neumann est devenue standardisée est le coût.

La deuxième raison est que les deux puits de mémoire doivent être synchronisés afin qu'une instruction ne s'applique pas aux données erronées. Ce qui conduit à devoir créer des systèmes de coordination entre les deux puits de mémoire. Bien entendu, une bonne partie des goulots d'étranglement serait éliminée en séparant les deux bus. Mais cela ne réduirait pas non plus complètement le goulot d'étranglement de Von Neumann.

Cela est dû au fait que le goulot d'étranglement de Von Neumann, bien qu'il soit une conséquence du stockage des données et des instructions dans la même mémoire, peut également se produire dans une architecture Harvard si elle n'est pas assez rapide pour alimenter le processeur. C'est pourquoi les architectures Harvard ont été réduites notamment aux microcontrôleurs et DSP. Alors que Von Neumann est commun sur le processeur et GPU