Origine de l'architecture Harvard, modèle, comment ça marche
- 1507
- 457
- Raphaël Meyer
La Architecture de Harvard Il s'agit d'une configuration informatique dans laquelle les données et les instructions d'un programme se trouvent dans des cellules distinctes, qui peuvent être traitées indépendamment.
C'est-à-dire que c'est le terme utilisé pour un système informatique qui contient deux domaines distincts: pour les commandes ou les instructions et pour les données. Par conséquent, la fonction principale de cette architecture est de stocker les données séparément, en fournissant des itinéraires de signal différents pour les instructions et les données.
Source: Nessa Los - propre travail, CC par -sa 3.0, Commons.WikimediaDans cette architecture, le format et les médias de ces deux segments du système peuvent être inégaux, car les deux parties sont composées de deux structures distinctes.
Certains exemples d'architectures de Harvard impliquent les premiers systèmes informatiques, où les instructions du programme pourraient être dans un support, par exemple, dans des cartes perforées, et les données stockées pourraient être dans un autre support, par exemple, dans des bandes magnétiques.
[TOC]
Applications
Ce type d'architecture a une large application dans les produits de traitement vidéo et audio. Avec chaque outil pour traiter la vidéo et l'audio, vous pouvez remarquer la figure de Harvard Architecture.
Les dispositifs analogiques Les processeurs noirs sont l'appareil particulier où il a réalisé son utilisation principale. Dans d'autres produits basés sur des puces électroniques, l'architecture de 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 40 sous la direction de Howard Aiken a créé un ordinateur basé à relais original, appelé Harvard Mark I, qui est le terme à partir duquel le concept d'architecture de Harvard découle.
Cet ordinateur a utilisé des unités de mémoire distinctes pour stocker les données et les instructions. Ensuite, il y a eu un développement significatif avec cette architecture.
Aiken a invité à utiliser des souvenirs séparés pour les données et pour les instructions du programme, avec des bus séparés pour chaque.
L'architecture de Harvard originale stockait généralement les instructions dans les bandes et les données perforées dans les compteurs électromécaniques.
Le stockage de données de ces premières machines était totalement dans l'unité de traitement centrale. D'un autre côté, ils n'ont pas donné accès afin que les instructions aient été stockées sous forme de données. Un opérateur a dû charger les programmes.
Une architecture de Harvard peut traiter les données et exécuter les instructions en même temps, car chacune d'entre elles a son propre bus d'adresse.
Modèle
Ce modèle est caractérisé que les bus d'information et le stockage sont physiquement séparés pour les données et le code du programme.
Peut vous servir: machines compositesComme les bus fonctionnent de manière autonome, les données et les instructions du programme peuvent être obtenues en même temps, améliorant ainsi la vitesse sur la conception de bus unique.
Par conséquent, le modèle de Harvard doit avoir une plus grande complexité. Cependant, avoir les bus indépendamment éviter 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 n'ont pas à se battre pour un seul bus mémoire.
Pour travailler, il y a deux adresses mémoire. Par conséquent, il y a un enregistrement de mémoire pour les instructions de la machine et un autre enregistrement de mémoire pour les données.
Contrairement à Von Neumann Architecture, qui utilise un bus pour déplacer les instructions et les données de mémoire, Harvard Architecture utilise une zone de mémoire pour les données et une autre pour les instructions.
Architecture de Harvard modifiée
Dans les ordinateurs actuels, il n'y a pas de désintégration 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 de Harvard modifiée sert à représenter les ordinateurs d'aujourd'hui aujourd'hui.
Bien que les unités de traitement actuelles partagent de la mémoire, ils ont certains éléments, tels que des instructions exclusives, qui empêchent les données dans les instructions. C'est ce qu'on appelle l'architecture de Harvard modifiée.
Ainsi, la Harvard Architecture 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ù le changement est basé, car cet appareil est celui qui gère la mémoire et comment il doit être utilisé.
Les conceptions d'ordinateurs modernes sont soutenues par une architecture de Harvard modifiée. Ils sont utilisés dans les microcontrôleurs et le traitement du signal numérique.
Comment fonctionne Harvard Architecture?
Harvard Architecture a différents domaines 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 circuit de bus et de contrôle puisse être utilisé pour gérer le flux d'informations à partir de la mémoire du programme et un autre séparé pour gérer le flux d'informations vers la mémoire des données.
L'utilisation de bus séparés signifie qu'il est possible que la récupération et l'exécution d'un programme soient effectuées sans aucune interruption par un transfert occasionnel de données à la mémoire de données.
Peut vous servir: les 10 éléments d'un ordinateur plus importantPar exemple, dans une version simple de cette architecture, l'unité de récupération du programme pourrait être occupée en récupérant les instructions suivantes dans la séquence du programme et en parallèle une opération de transfert de données qui aurait pu faire partie de l'instruction précédente du programme.
À ce niveau, Harvard Architecture a une limitation, car il n'est généralement pas possible de placer le code du programme dans la mémoire des données et de l'exécuter à partir de là.
Ajouts en architecture
À la forme simple de l'architecture de Harvard, de nombreuses variantes existantes de plus grande complication peuvent être ajoutées.
Un ajout courant consiste à ajouter un cache d'instructions de stockage au bus de données du programme, qui permet à l'unité d'exécution des instructions un accès plus rapide à la prochaine étape du programme, sans avoir à aller dans une mémoire plus lente pour obtenir l'étape du programme Chaque fois que c'est nécessaire.
Adresses mémoire
Un ordinateur avec Harvard Architecture a différents domaines d'adresses et d'instructions de données: l'adresse L'une des instructions n'est pas la même zone que l'adresse de l'une des données.
L'adresse que l'une des instructions pourrait contenir une valeur de vingt-quatre bits, tandis que l'adresse de l'une des données 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 vous avez une zone de mémoire distincte pour les instructions et les données, séparant à la fois les signaux et le stockage dans le code et la mémoire des données, ce qui permet d'accéder simultanément à chacun des systèmes de mémoire.
avantage
- Il y a moins de possibilités de corruption dans la transmission, car les données et les instructions sont transférées dans différents bus.
- Les données et les instructions sont accessibles de la même manière.
- Permet différents supports de stockage pour les instructions et les données. Par exemple, vous pouvez mettre des instructions sur une ROM économique et des données dans un RAM coûteux.
- Les deux souvenirs peuvent utiliser des tailles de cellules différentes, ce qui utilise efficacement les ressources.
- Il existe une bande passante de mémoire plus élevée, qui est plus prévisible pour avoir des souvenirs séparés pour les instructions et les données.
Niveau de protection
Dans les systèmes qui n'ont pas d'unité d'administration de la mémoire, offrent un niveau de protection supplémentaire, car les données ne peuvent pas être exécutées comme s'il s'agissait du code, ce qui exposerait le système à de nombreux problèmes, tels que le débordement de tampon.
Peut vous servir: logiciel commercialC'est pourquoi il est populaire auprès de petits systèmes intégrés, comme le micro-ondes ou l'horloge.
Vitesse plus élevée
Harvard Architecture peut lire une instruction et également accéder à la mémoire de données simultanément à une vitesse rapide.
Offre des performances plus élevées, car il permet à l'obtention simultanée de données et d'instructions à stocker dans des souvenirs séparés et à voyager dans différents bus.
Une architecture de Harvard aidera généralement un ordinateur avec un certain niveau de complexité à fonctionner plus rapidement qu'une architecture von Neumann, à condition qu'il ne soit pas nécessaire de partager des ressources entre les souvenirs de données et le code.
Si les limites des broches ou d'autres facteurs forcent l'utilisation d'un seul bus pour accéder aux deux espaces de mémoire, ces avantages sont susceptibles d'être annulés dans une large mesure.
Désavantages
Plus grande complexité et coût
Le problème avec l'architecture de Harvard est sa grande complexité et coût car, au lieu d'un bus de données, deux sont maintenant nécessaires.
La production d'un ordinateur avec deux bus est beaucoup plus chère et prend plus de temps pour la fabriquer. Il nécessite une unité de contrôle pour deux bus, ce qui est plus compliqué et dont le développement est coûteux et a besoin de plus de temps.
Cela signifie une implémentation plus complexe pour les fabricants. Il nécessite plus d'épingles sur le processeur, une carte mère plus complexe et d'avoir à doubler les puces RAM, ainsi qu'une conception de cache plus complexe.
Peu d'utilisation
Harvard Architecture n'est pas beaucoup utilisé, il est donc plus difficile à mettre en œuvre. C'est pourquoi il est rarement utilisé en dehors du processeur.
Cependant, cette architecture est parfois utilisée dans le processeur pour gérer ses collines.
Utilisation abusive de l'espace mémoire
Lorsqu'il y a un espace libre dans la mémoire de données, il ne peut pas être utilisé pour stocker les instructions et vice versa.
Par conséquent, les souvenirs particuliers dédiés à chacun d'eux doivent être soigneusement équilibrés dans leur fabrication.
Les références
- Différences de liste (2019). Différence entre Von Neumann et Harvard Architecture? Tiré de: listdifferences.com.
- PC Magazine (2019). Définition de: Harvard Architecture. Tiré de: pcmag.com.
- Ravepedia (2019). Architecture de Harvard. Tiré de: Ravepedia.com.
- Scott Thornton (2018). Quelle est la différence entre les architectures de von-neumann et de Harvard? Conseils de microcontrôleur. Tiré de: Microcontrolertips.com.
- Wikipedia, The Free Encyclopedia (2019). Architecture de Harvard. Pris de: dans.Wikipédia.org.
- The Crazy Programmer (2019). Différence entre Von Neumann et Harvard Architecture. Tiré de: ThecrazyProgrammer.com.
- « Réseaux, types, avantages et inconvénients caractéristiques
- Caractéristiques de nutrition hétérotrophe, étapes, types, exemples »