Architektur von Harvard

Die Architektur von Harvard ist eine Computerarchitektur mit der physisch getrennten Lagerung und den Signalpfaden für Instruktionen und Daten. Der Begriff hat vom Zeichen von Harvard mich relaisbasierter Computer hervorgebracht, der Instruktionen auf dem geschlagenen (24 Bit breiten) Band und den Daten in elektromechanischen Schaltern versorgt hat. Diese frühen Maschinen haben Datenlagerung völlig innerhalb der in einer Prozession gehenden Haupteinheit enthalten lassen, und haben keinen Zugang zur Instruktionslagerung als Daten zur Verfügung gestellt. Programme mussten von einem Maschinenbediener geladen werden; der Verarbeiter konnte sich nicht starten.

Heute führen die meisten Verarbeiter solche getrennten Signalpfade aus Leistungsgründen durch, aber führen wirklich eine Modifizierte Architektur von Harvard durch, so können sie Aufgaben wie das Laden eines Programms von der Plattenlagerung als Daten und dann Durchführung davon unterstützen.

Speicherdetails

In einer Architektur von Harvard gibt es kein Bedürfnis, die zwei Erinnerungen Eigenschaften teilen zu lassen. Insbesondere die Wortbreite, das Timing, die Durchführungstechnologie und die Speicheradressstruktur können sich unterscheiden. In einigen Systemen können Instruktionen im ROM-Speicher versorgt werden, während Datengedächtnis allgemein gelesen verlangt - schreiben Gedächtnis. In einigen Systemen gibt es viel mehr Instruktionsgedächtnis als Datengedächtnis, so sind Instruktionsadressen breiter als Datenadressen.

Unähnlichkeit mit Architekturen von von Neumann

Unter der reinen Architektur von von Neumann kann die Zentraleinheit entweder eine Instruktion lesen oder Daten von\zu dem Gedächtnis lesen/schreiben. Beide können zur gleichen Zeit nicht vorkommen, da die Instruktionen und Daten dasselbe Bussystem verwenden. In einem Computer mit der Architektur von Harvard kann die Zentraleinheit eine Instruktion sowohl lesen und einen Datenspeicherzugang zur gleichen Zeit sogar ohne ein geheimes Lager durchführen. Ein Architektur-Computer von Harvard kann so für eine gegebene Stromkreis-Kompliziertheit schneller sein, weil Instruktionsabrufe und Datenzugang um einen einzelnen Speicherpfad nicht kämpfen.

Außerdem hat eine Architektur-Maschine von Harvard verschiedenen Code und Datenadressräume: Instruktionsadressnull ist nicht dasselbe, weil Daten Null richten. Instruktionsadressnull könnte einen Vierundzwanzig-Bit-Wert identifizieren, während Daten Null richten, könnte ein Acht-Bit-Byte anzeigen, das nicht ein Teil dieses Vierundzwanzig-Bit-Werts ist.

Unähnlichkeit mit der Modifizierten Architektur von Harvard

Eine modifizierte Architektur-Maschine von Harvard ist sehr viel einer Architektur-Maschine von Harvard ähnlich, aber sie entspannt die strenge Trennung zwischen Instruktion und Daten, während sie noch die Zentraleinheit gleichzeitig Zugang zwei (oder mehr) Speicherbusse lässt. Die allgemeinste Modifizierung schließt getrennte Instruktion und geheime durch einen allgemeinen Adressraum unterstützte Datenlager ein. Während die Zentraleinheit vom geheimen Lager durchführt, handelt sie als eine reine Maschine von Harvard. Wenn es auf sich rückwärts bewegendes Gedächtnis zugreift, handelt es wie eine Maschine von von Neumann (wo Code wie Daten, eine starke Technik bewegt werden kann). Diese Modifizierung ist in modernen Verarbeitern wie die ARM-Architektur und X86 Verarbeiter weit verbreitet. Es wird manchmal eine Architektur von Harvard lose genannt, die Tatsache überblickend, dass es wirklich "modifiziert" wird.

Eine andere Modifizierung stellt einen Pfad zwischen dem Instruktionsgedächtnis (wie ROM oder Blitz) und der Zentraleinheit zur Verfügung, um Wörtern vom Instruktionsgedächtnis zu erlauben, als Read-Only-Daten behandelt zu werden. Diese Technik wird in einigen Mikrokontrolleuren, einschließlich des Atmel AVR verwendet. Das erlaubt unveränderliche Daten, wie Textschnuren oder Funktionstische, um zugegriffen zu werden, ohne zuerst ins Datengedächtnis kopiert werden zu müssen, knapp (und mit der Macht hungrig) Datengedächtnis für Lesen/Schreiben-Variablen bewahrend. Spezielle Maschinensprachinstruktionen werden zur Verfügung gestellt, um Daten vom Instruktionsgedächtnis zu lesen. (Das ist aus Instruktionen verschieden, die selbst unveränderliche Daten einbetten, obwohl für individuelle Konstanten die zwei Mechanismen einander auswechseln können.)

Geschwindigkeit

In den letzten Jahren ist die Geschwindigkeit der Zentraleinheit oft im Vergleich mit der Zugriffsgeschwindigkeit des Hauptgedächtnisses gewachsen. Sorge muss genommen werden, um die Anzahl von Zeiten zu vermindern, auf Hauptgedächtnis wird zugegriffen, um Leistung aufrechtzuerhalten. Wenn, zum Beispiel, jede in der Zentraleinheit geführte Instruktion einen Zugang zum Gedächtnis verlangt, gewinnt der Computer nichts für die vergrößerte Zentraleinheitsgeschwindigkeit — ein Problem gekennzeichnet als seiend "gebundenes Gedächtnis".

Es ist möglich, äußerst schnelles Gedächtnis zu machen, aber das ist nur für kleine Beträge des Gedächtnisses für Kosten, Macht und Signalroutenplanungsgründe praktisch. Die Lösung ist, einen kleinen Betrag des sehr schnellen Gedächtnisses zur Verfügung zu stellen, das als ein geheimes Zentraleinheitslager bekannt ist, das hält, kürzlich hat auf Daten zugegriffen. So lange die Daten, die die Zentraleinheit braucht, im geheimen Lager sind, ist der Leistungserfolg viel kleiner, als es ist, wenn sich das geheime Lager umdrehen und die Daten vom Hauptgedächtnis bekommen muss.

Inner gegen das Außendesign

Moderne hohe Leistungszentraleinheitsspan-Designs vereinigen Aspekte sowohl von Harvard als auch von Architektur von von Neumann. Insbesondere die Modifizierte Architektur von Harvard ist sehr üblich. Zentraleinheitsgedächtnis des geheimen Lagers wird in ein geheimes Instruktionslager und ein geheimes Datenlager geteilt. Architektur von Harvard wird als die Zentraleinheitszugänge das geheime Lager verwendet. Im Fall von einem geheimen Lager wird Fräulein, jedoch, die Daten vom Hauptgedächtnis wiederbekommen, das in die getrennte Instruktion und Datenabteilungen nicht formell geteilt wird, obwohl es getrennte Speicherkontrolleure gut haben, die für den gleichzeitigen Zugang zum RAM, ROM verwendet sind, und (NOCH) Gedächtnis aufblitzen lassen kann.

So, während eine Architektur von von Neumann in einigen Zusammenhängen, solcher als sichtbar ist, wenn Daten und Code durch denselben Speicherkontrolleur durchkommen, gewinnt die Hardware-Durchführung die Wirksamkeit der Architektur von Harvard für Zugänge des geheimen Lagers und mindestens einige Hauptspeicherzugänge.

Außerdem haben Zentraleinheiten häufig Pufferspeicher, die Zentraleinheiten weitergehen lassen, nachdem nichtversteckten Gebieten schreibt. Die Natur von von Neumann des Gedächtnisses ist dann sichtbar, wenn Instruktionen als Daten durch die Zentraleinheit geschrieben werden und Software sicherstellen muss, dass die geheimen Lager (Daten und Instruktion) und Pufferspeicher vor dem Versuchen synchronisiert werden, jene gerade geschriebenen Instruktionen durchzuführen.

Moderner Gebrauch der Architektur von Harvard

Der Hauptvorteil der reinen Architektur von Harvard — Parallelzugriffs zu mehr als einem Speichersystem — ist durch modifizierte Verarbeiter von Harvard mit modernen Zentraleinheitssystemen des geheimen Lagers reduziert worden. Relativ reine Architektur-Maschinen von Harvard werden größtenteils in Anwendungen verwendet, wo Umtausche, wie die Kosten und Macht-Ersparnisse davon, geheime Lager wegzulassen, die Programmierstrafen davon überwiegen, verschiedenen Code und Datenadressräume zu haben.

  • Digitalsignalverarbeiter (DSPs) führen allgemein kleine, hoch optimierte in einer Prozession gehende oder Audiovideoalgorithmen durch. Sie vermeiden geheime Lager, weil ihr Verhalten äußerst reproduzierbar sein muss. Die Schwierigkeiten, mit vielfachen Adressräumen fertig zu werden, sind von sekundärer Bedeutung zur Geschwindigkeit der Ausführung. Infolgedessen haben einige DSPs vielfache Datenerinnerungen in verschiedenen Adressräumen, um SIMD und VLIW-Verarbeitung zu erleichtern. Instrumente von Texas TMS320 C55x Verarbeiter, als ein Beispiel, haben vielfache parallele Datenbusse (zwei, schreiben drei gelesene), und ein Instruktionsbus.
  • Mikrokontrolleure werden charakterisiert, indem sie kleine Beträge des Programms (Blitz-Gedächtnis) und Daten (SRAM) Gedächtnis ohne geheimes Lager haben, und nutzen die Architektur von Harvard zur Geschwindigkeit aus, die durch die gleichzeitige Instruktion und den Datenzugang in einer Prozession geht. Die getrennte Lagerung bedeutet das Programm, und Datenerinnerungen können verschiedene Bit-Breiten, zum Beispiel mit 16 Bit breiten Instruktionen und 8 Bit breiten Daten haben. Sie bedeuten auch, dass Instruktionsvorabruf in der Parallele mit anderen Tätigkeiten durchgeführt werden kann. Beispiele, schließen der AVR durch Atmel Corp., das FOTO durch Microchip Technology, Inc. und den ARM-Verarbeiter des Kortexes-M3 ein (nicht alle ARM-Chips haben Architektur von Harvard).

Sogar in diesen Fällen ist es üblich, spezielle Instruktionen zu haben, auf Programm-Gedächtnis als Daten für Read-Only-Tische, oder für die Wiederprogrammierung zuzugreifen.

Links


Tora! Tora! Tora! / Listen von Kriegen
Impressum & Datenschutz