Origine de l'architecture de Harvard, modèle, comment cela fonctionne

4549
Egbert Haynes

La L'architecture de Harvard est une configuration informatique dans laquelle les données et les instructions d'un programme sont situées dans des cellules de mémoire séparées, qui peuvent être adressées indépendamment. 

Autrement dit, c'est le terme utilisé pour un système informatique qui contient deux zones distinctes: pour les commandes ou instructions et pour les données. Par conséquent, la fonction principale de cette architecture est de stocker les données physiquement séparées, fournissant différents chemins de signaux pour les instructions et les données..

Source: De Nessa los - Travail personnel, CC BY-SA 3.0, commons.wikimedia

Dans cette architecture, le format et le support de ces deux segments du système peuvent être inégaux, puisque les deux parties sont constituées de deux structures distinctes..

Certains exemples d'architectures de Harvard impliquent des systèmes informatiques anciens, où les instructions de programme pourraient être sur un support, par exemple, sur des cartes perforées, et les données stockées pourraient être sur un autre support, par exemple, sur des bandes magnétiques..

Index des articles

  • 1 Applications
  • 2 Origine
  • 3 modèle
    • 3.1 Architecture Harvard modifiée
  • 4 Comment fonctionne l'architecture de Harvard??
    • 4.1 Ajouts en architecture
    • 4.2 Adresses mémoire
    • 4.3 Système de mémoire
  • 5 avantages
    • 5.1 Niveau de protection
    • 5.2 Vitesse plus élevée
  • 6 Inconvénients
    • 6.1 Plus grande complexité et coût
    • 6.2 Peu d'utilisation
    • 6.3 Mauvaise utilisation de l'espace mémoire
  • 7 Références

Applications

Ce type d'architecture a une large application dans les produits de traitement vidéo et audio. Avec chaque outil de traitement vidéo et audio, vous pourrez voir la figure de l'architecture de Harvard.

Les processeurs Analog Devices Blackfin sont le périphérique particulier sur lequel il a trouvé son utilisation principale. Dans d'autres produits à base de puces électroniques, l'architecture Harvard est également largement utilisée.

Cependant, la plupart des ordinateurs utilisent l'architecture von Neumann et utilisent des caches CPU pour obtenir un chevauchement.

Origine

Le travail effectué à l'Université de Harvard dans les années 1940 sous la direction de Howard Aiken a créé un ordinateur original basé sur un relais, appelé Harvard Mark I, qui est le terme à partir duquel le concept d'architecture de Harvard est né..

Cet ordinateur utilisait des unités de mémoire séparées pour stocker les données et les instructions. Ensuite, il y a eu un développement significatif avec cette architecture.

Aiken a encouragé l'utilisation de mémoires séparées pour les données et pour les instructions de programme, avec des bus séparés pour chacune..

L'architecture originale de Harvard stockait généralement des instructions sur des bandes perforées et des données sur des compteurs électromécaniques..

Le stockage des données de ces premières machines était entièrement au sein de l'unité centrale de traitement. En revanche, ils n'ont pas donné accès aux instructions à stocker sous forme de données. Un opérateur devait charger les programmes.

Une architecture Harvard peut traiter des données et exécuter des instructions en même temps, car chacune d'elles possède son propre bus d'adresses.

Modèle

Ce modèle est caractérisé en ce que les bus d'information et le stockage sont physiquement séparés pour les données et le code programme..

Comme les bus fonctionnent de manière autonome, les données et les instructions de programme peuvent être obtenues en même temps, améliorant ainsi la vitesse par rapport à la conception de bus unique..

Par conséquent, le modèle de Harvard s'avère plus complexe. Cependant, avoir les bus indépendamment évite le goulot d'étranglement produit par l'architecture von Neumann.

Un ordinateur peut être plus rapide pour un circuit d'une certaine complexité, car la recherche d'instructions et l'accès aux données ne doivent pas se battre pour un seul bus mémoire.

Pour travailler, il y a deux adresses mémoire. Par conséquent, il existe un registre de mémoire pour les instructions de la machine et un autre registre de mémoire pour les données..

Contrairement à l'architecture von Neumann, qui utilise un bus pour déplacer les instructions et les données en mémoire, l'architecture Harvard utilise une zone de mémoire pour les données et une autre pour les instructions..

Architecture de Harvard modifiée

Dans les ordinateurs d'aujourd'hui, il n'y a pas de désintégration physique des zones de mémoire utilisées par les programmes et les données. Pour cette raison, on pourrait dire que technologiquement ils ont une architecture Von Neumann.

Cependant, l'architecture Harvard modifiée sert à mieux représenter les ordinateurs d'aujourd'hui..

Bien que les unités de traitement actuelles partagent la mémoire, elles comportent certains éléments, tels que des instructions uniques, qui empêchent les données de s'emmêler avec les instructions. C'est ce qu'on appelle l'architecture Harvard modifiée..

Ainsi, l'architecture Harvard modifiée a deux bus séparés, un pour le code et un pour les données, mais la mémoire elle-même est un élément physiquement partagé..

Le contrôleur de mémoire est l'endroit où se trouve le changement, car ce périphérique est celui qui gère la mémoire et comment il doit être utilisé.

Les conceptions informatiques modernes sont prises en charge par l'architecture Harvard modifiée. Utilisé dans les microcontrôleurs et le traitement numérique du signal.

Comment fonctionne l'architecture de Harvard?

L'architecture Harvard a différentes zones d'adresses mémoire pour le programme et pour les données.

Il en résulte la possibilité de concevoir un circuit de telle manière qu'un bus et un circuit de commande peuvent être utilisés pour gérer le flux d'informations de la mémoire de programme et un autre pour gérer le flux d'informations vers la mémoire de données..

L'utilisation de bus séparés signifie qu'il est possible pour un programme d'être récupéré et exécuté sans être interrompu par le transfert occasionnel de données vers la mémoire de données..

Par exemple, dans une version simple de cette architecture, l'unité de récupération de programme pourrait être occupée à récupérer l'instruction suivante dans la séquence de programme et à effectuer en parallèle une opération de transfert de données qui aurait pu faire partie de l'instruction de programme précédente..

A ce niveau, l'architecture de Harvard a une limitation, car il n'est généralement pas possible de placer le code du programme en mémoire de données et de l'exécuter à partir de là.

Ajouts en architecture

De nombreuses variantes existantes plus complexes peuvent être ajoutées à la forme simple de l'architecture de Harvard..

Un ajout courant consiste à ajouter un cache d'instructions au bus de données du programme, ce qui permet à l'unité d'exécution d'instructions d'accéder plus rapidement à l'étape suivante du programme, sans avoir à aller dans une mémoire plus lente pour accéder à l'étape du programme à chaque fois qu'elle est obligatoire.

Adresses mémoire

Un ordinateur d'architecture Harvard a différentes zones d'adresse de données et d'instruction: l'adresse d'instruction 1 n'est pas la même zone que l'adresse de données 1.

L'adresse d'instruction un pourrait contenir une valeur de vingt-quatre bits, tandis que l'adresse de données un pourrait indiquer un octet de huit bits, qui ne fait pas partie de cette valeur de vingt-quatre bits..

Système de mémoire

Comme il existe une zone mémoire séparée pour les instructions et les données, séparant à la fois les signaux et la mémoire de stockage du code et des données, cela permet d'accéder simultanément à chacun des systèmes de mémoire..

avantage

- Il y a moins de risque de corruption lors de la transmission, car les données et les instructions sont transférées via différents bus.

- L'accès aux données et aux instructions s'effectue de la même manière.

- Permet différents supports de stockage pour les instructions et les données. Par exemple, vous pouvez mettre les instructions dans une ROM peu coûteuse et les données dans une RAM coûteuse..

- Les deux mémoires peuvent utiliser des tailles de cellules différentes, faisant une utilisation efficace des ressources.

- Il a une bande passante mémoire plus élevée, ce qui est plus prévisible en ayant des mémoires séparées pour les instructions et les données..

Niveau de protection

Dans les systèmes qui ne disposent pas d'unité de gestion de la mémoire, il offre un niveau de protection supplémentaire, car il ne sera pas possible de commencer à exécuter des données comme s'il s'agissait de code, ce qui exposerait le système à de nombreux problèmes, tels qu'un dépassement de mémoire tampon..

C'est pourquoi il est populaire auprès des petits systèmes embarqués, comme un micro-ondes ou une horloge..

Vitesse plus élevée

L'architecture Harvard peut lire une instruction et également effectuer un accès à la mémoire de données simultanément à une vitesse rapide.

Il offre de meilleures performances, car il permet l'obtention simultanée de données et d'instructions en étant sauvegardées dans des mémoires séparées et en voyageant à travers différents bus.

Une architecture Harvard aidera généralement un ordinateur avec un certain niveau de complexité à fonctionner plus rapidement qu'une architecture Von Neumann, tant qu'il n'est pas nécessaire de partager des ressources entre les données et les mémoires de code..

Si les limitations de broches ou d'autres facteurs forcent l'utilisation d'un seul bus pour accéder aux deux espaces mémoire, ces avantages sont susceptibles d'être largement annulés..

Désavantages

Plus grande complexité et coût

Le problème avec l'architecture de Harvard est sa grande complexité et son coût car, au lieu d'un bus de données, il en faut maintenant deux..

La production d'un ordinateur à deux bus est beaucoup plus coûteuse et prend beaucoup de temps à fabriquer. Nécessite une unité de contrôle pour deux bus, ce qui est plus compliqué et plus long et coûteux à développer.

Cela signifie une mise en œuvre plus complexe pour les fabricants. Il nécessite plus de broches sur le processeur, une carte mère plus complexe et la duplication des puces RAM, ainsi qu'une conception de cache plus complexe.

Peu d'utilisation

L'architecture de Harvard n'est pas largement utilisée, ce qui la rend plus difficile à mettre en œuvre. C'est pourquoi il est rarement utilisé en dehors du CPU.

Cependant, cette architecture est parfois utilisée dans le CPU pour gérer ses caches..

Utilisation abusive de l'espace mémoire

Lorsqu'il y a de l'espace libre dans la mémoire de données, il ne peut pas être utilisé pour stocker des instructions et vice versa.

Par conséquent, les mémoires particulières qui sont dédiées à chacun d'entre eux doivent être soigneusement équilibrées dans leur fabrication..

Les références

  1. Liste des différences (2019). Différence entre l'architecture de Von Neumann et de Harvard? Tiré de: listdifferences.com.
  2. Magazine PC (2019). Définition de: architecture de Harvard. Tiré de: pcmag.com.
  3. Techopedia (2019). Architecture de Harvard. Tiré de: plafondpedia.com.
  4. Scott Thornton (2018). Quelle est la différence entre les architectures Von-Neumann et Harvard? Conseils sur les microcontrôleurs. Tiré de: microcontrollertips.com.
  5. Wikipédia, l'encyclopédie gratuite (2019). L'architecture de Harvard. Tiré de: en.wikipedia.org.
  6. Le programmeur fou (2019). Différence entre Von Neumann et Harvard Architecture. Tiré de: thecrazyprogrammer.com.

nzbyvpqzel ([email protected]) 2021-12-05 04:59:26

PokemongoPlanet | Origine de l'architecture de Harvard, modèle, comment cela fonctionne <a href="http://www.ga6t02l1q4o6m1npuc9d4s3da950050ms.org/">anzbyvpqzel</a> nzbyvpqzel http://www.ga6t02l1q4o6m1npuc9d4s3da950050ms.org/ [url=http://www.ga6t02l1q4o6m1npuc9d4s3da950050ms.org/]unzbyvpqzel[/url]