0% fanden dieses Dokument nützlich (0 Abstimmungen)
27 Ansichten27 Seiten

Computerorganisation Modul 5

Das Dokument behandelt die Organisation und Funktionsweise der Basisverarbeitungseinheit (CPU) in Computern, einschließlich der Ausführung von Maschinenanweisungen und der Verwendung von Registern. Es beschreibt die Schritte zur Ausführung von Anweisungen, einschließlich Abruf, Ausführung und Datenübertragung zwischen Registern und dem Speicher. Zudem werden Konzepte wie Pipelining, superskalare Operationen und Mehrbus-Organisation erläutert, um die Leistung moderner Prozessoren zu verbessern.

Hochgeladen von

ScribdTranslations
Copyright
© © All Rights Reserved
Wir nehmen die Rechte an Inhalten ernst. Wenn Sie vermuten, dass dies Ihr Inhalt ist, beanspruchen Sie ihn hier.
Verfügbare Formate
Als PDF, TXT herunterladen oder online auf Scribd lesen
0% fanden dieses Dokument nützlich (0 Abstimmungen)
27 Ansichten27 Seiten

Computerorganisation Modul 5

Das Dokument behandelt die Organisation und Funktionsweise der Basisverarbeitungseinheit (CPU) in Computern, einschließlich der Ausführung von Maschinenanweisungen und der Verwendung von Registern. Es beschreibt die Schritte zur Ausführung von Anweisungen, einschließlich Abruf, Ausführung und Datenübertragung zwischen Registern und dem Speicher. Zudem werden Konzepte wie Pipelining, superskalare Operationen und Mehrbus-Organisation erläutert, um die Leistung moderner Prozessoren zu verbessern.

Hochgeladen von

ScribdTranslations
Copyright
© © All Rights Reserved
Wir nehmen die Rechte an Inhalten ernst. Wenn Sie vermuten, dass dies Ihr Inhalt ist, beanspruchen Sie ihn hier.
Verfügbare Formate
Als PDF, TXT herunterladen oder online auf Scribd lesen

MODUL – V 18CS34: Computerorganisation

MODUL-5
Basisverarbeitungseinheit
5.1Einleitung
Der Instruction Set Processor (ISP) oder Prozessor führt Maschinenanweisungen aus und
koordinieren die Aktivitäten anderer Einheiten.
Es wird auch als Zentraleinheit (CPU) bezeichnet. Der Begriff „Zentral“ ist weniger
heute angebracht, da viele moderne Computersysteme mehrere enthalten
Verarbeitungseinheiten.
Die Organisation von Prozessoren hat sich im Laufe der Jahre weiterentwickelt, angetrieben durch Fortschritte in
Technologie und die Notwendigkeit, hohe Leistung zu bieten.
Um hohe Leistung zu erzielen, lassen Sie verschiedene Funktionseinheiten parallel arbeiten.
Solche Hochleistungsprozessoren haben:
Pipelined-Organisation – die Ausführung einer Anweisung wird begonnen, bevor die
Die Ausführung der vorhergehenden Anweisung ist abgeschlossen.
*Superskalarer Betrieb – mehrere Befehle werden abgerufen und ausgeführt bei der
gleiche Zeit.
Hier besprechen wir grundlegende Ideen, die allen Prozessoren gemeinsam sind.

5.2 EINIGE GRUNDLEGENDEN KONSEPTE


Um ein Programm auszuführen, holt sich der Prozessor eine Anweisung nach der anderen und
führt die angegebenen Operationen aus.
Um einen Befehl auszuführen, muss der Prozessor die folgenden 3 Schritte durchführen:
1.Holen Sie den Inhalt der Speicheradresse, auf die der PC zeigt. Der Inhalt von
Dieser Standort ist die auszuführende Anweisung. Daher in den IR laden.
IR [[PC]]
2. Vorausgesetzt, der Speicher ist byteadressierbar, erhöhen Sie den Inhalt des
PC durch 4
PC [PC] + 4
3. Führen Sie die durch die Anweisung im IR festgelegten Aktionen aus.
1 & 2 sind die Abrufphase. 3 ist die Ausführungsphase.

Der MDR-Register hat 2 Eingänge und 2 Ausgänge.


Das Register MAR erhält Eingaben vom internen Bus und gibt Ausgaben an das Externe.
Bus.
Die Steuerleitungen des Speicherbusses sind mit dem Befehlsdecoder verbunden.
und Steuerlogikblock.
Diese Einheit ist verantwortlich für die Ausgabe der Signale, die den Betrieb von allem steuern.
die Einheiten innerhalb des Prozessors und zur Interaktion mit dem Speicherbus.
R0zu R(n-1) Werden die allgemeinen Register vom Programmierer verwendet.
Sonderzweckregister sind Index- oder Stapelzeiger.

Dr. M J Sudhamani, Fachbereich CSE, RNSIT 1


MODUL – V 18CS34: Computerorganisation

Y, Z, TEMP sind Register, die von keiner Anweisung referenziert werden.


Sie werden vom Prozessor für die temporäre Speicherung während der Ausführung verwendet.
einige Anweisungen.
MUX – Multiplexer wählt entweder den Ausgang von Y oder die Konstante 4 (um zu erhöhen die
Inhalte des Programmzählers.

2 mögliche Werte des MUX-Steuereingangs Select sind Select4 und SelectY.


Im Verlauf der Ausführung der Anweisungen werden Daten von einem Register übertragen.
zu einem anderen, der durch die ALU geht, um arithmetische und logische Operationen durchzuführen.

Die Instruktionsdecoder- und Steuerlogik-Einheit ist verantwortlich für die Umsetzung der
Aktionen, die durch die im IR-Register geladenen Anweisungen spezifiziert sind.

Der Decoder erzeugt die Steuersignale, die benötigt werden, um die Register auszuwählen.
involviert und leitet die Übertragung von Daten.
ALU und der verbindende Bus werden als Datenpfad bezeichnet.
Eine Anweisung kann ausgeführt werden, indem eine oder mehrere der folgenden Aktionen durchgeführt werden.
Betriebseingriffe in einer bestimmten Reihenfolge:

Dr. M J Sudhamani, Fachbereich CSE, RNSIT 2


MODUL – V 18CS34: Computerorganisation

Ri Übertragen Sie ein Wort von Daten von einem Prozessorregister in ein anderes oder zu
die ALU.

5.2.1 Registerübertragungen
Die Ausführung von Anweisungen umfasst Datenübertragungen von einem Register zu einem anderen.
Für jedes Register werden 2 Steuersignale verwendet. Es wird symbolisch dargestellt als
wie in Abbildung 7.2 gezeigt.

Werden Schalter von den Signalen Ri und Ri gesteuert?


in außen .

Wenn Ri aufin1 gesetzt ist, werden die Daten auf dem Bus in R geladen.ich.

Wenn Riaus. ist auf 1 gesetzt, der Inhalt des Registers Richwerden auf den Bus gesetzt.

Dr. M J Sudhamani, Fachbereich CSE, RNSIT 3


MODUL – V 18CS34: Computerorganisation

Bewege R,
1 R4 ist eine Anweisung. Dies kann wie folgt erreicht werden:

1 indem Sie R1 einstellen


Aktivieren Sie die Ausgabe von R, aus zu 1. Dies platziert den Inhalt von R1
auf demProzessorbus.
Aktivieren Sie die Eingabe von R4, indem inSie R4 auf 1 setzen. Dies lädt Daten vom Prozessor.
Bus in R4.
Alle Operationen und Datenübertragungen innerhalb des Prozessors finden innerhalb von Zeiträumen statt.
definiert durch den Prozessor-Takt.

Zu Beginn des Takzyklus, R 1aus und R sind auf 1 gesetzt.


4 Zoll
Register sind flankengetriggerte Flip-Flops.
4
Beim nächsten aktiven Flankenwechsel der Uhr werden die Daten in R geladen. Zur gleichen Zeit wird R und
1aus
zurückkehren 0.
R 4 Zoll zu

Alternativer Ansatz:
Datenübertragungen können sowohl steigende als auch fallende Flanken des Takts verwenden.
Wenn kantengetriggerte Flip-Flops nicht verwendet werden, können 2 oder mehr Taktsignale vorhanden sein
benötigt, um einen ordnungsgemäßen Datentransfer zu gewährleisten. Dies ist eine mehrphasige Taktung.

Wenn Riin=1, mux wählt Daten auf dem Bus aus. Daten werden bei steigendem Wechsel in das Flip-Flop geladen.
Rand des Uhr.
Wenn Riin=0, mux gibt den derzeit im Flip-Flop gespeicherten Wert zurück.
Wann Riout=0, der Ausgang des Gates befindet sich im Hochimpedanzzustand (elektrisch getrennt).
d.h. offen- Zustand des Schalters.
Wenn RAusgang=1, das Tor steuert den Bus auf 0 oder 1, abhängig vom Wert von Q.

5.2.2 Durchführung einer arithmetischen oder logischen Operation


Die ALU ist eine kombinatorische Schaltung, die keine interne Speicherung hat. Der Eingang zur ALU ist
durch Mux und vom Prozessor-Bus.
Das Ergebnis wird vorübergehend im Register Z gespeichert.

Dr. M J Sudhamani, Fachbereich Informatik, RNSIT 4


MODUL – V 18CS34: Computerorganisation

Reihenfolge der Operationen zur Durchführung von Add R1,R2,R3

1.R1aus, Yin
2.R2 ausWähleYin
3.Zaus, R3 Zoll
Nur eine Registerausgabe kann während eines beliebigen Taktes an den Bus angeschlossen werden.

5.2.3 Abrufen eines Wortes aus dem Speicher


Um ein WortInformation aus dem Speicher abzurufen, muss der Prozessor die Adresse angeben.
des Speicherorts, an dem diese Informationen gespeichert sind, und fordere ein Lesen an
Operation.
Information kann eine Anweisung oder ein Operanden sein
Der Prozessor überträgt die erforderliche Adresse an das MAR.
Der Prozessor verwendet Steuerleitungen, um anzuzeigen, dass eine Leseoperation erforderlich ist.
Wenn die angeforderten Daten aus dem Speicher empfangen werden, werden sie im Register gespeichert.
MDR

Der Prozessor führt einen internen Datentransfer in einem Taktzyklus aus.


Die Betriebsgeschwindigkeit des angesprochenen Geräts variiert je nach Gerät.
Geräte umfassen Cache-Speicher, Register in speicheradressierten I/O-Geräten, Hauptspeicher
Speicher usw.
Der Cache antwortet auf eine Leseanforderung in einem Taktzyklus.
Wenn ein Cache-Fehler auftritt, wird die Anfrage an den Hauptspeicher weitergeleitet, was Einführung bringt.
mehrere Taktzyklen-Verzögerung.
Um die Variabilität der Antwortzeit zu berücksichtigen, wartet der Prozessor, bis er erhält
eine Anzeige, dass die angeforderte Leseoperation abgeschlossen ist.
Ein Steuersignal namens Memory Function Completed (MFC) wird für diesen Zweck verwendet.
Das angesprochene Gerät setzt dieses Signal auf 1, um anzuzeigen, dass der Inhalt des angegebenen

Dr. M J Sudhamani, Fachbereich CSE, RNSIT 5


MODUL – V 18CS34: Computerorganisation

Die Standorte wurden gelesen und sind auf den Datenleitungen des Speicherbusses verfügbar.

Berücksichtigen Sie die Anweisung Bewege (R1)2Die erforderlichen Maßnahmen zur Durchführung dieser
Anweisungen sind:
oMAR [R1]
o Starten Sie einen Lesevorgang auf dem Speicherbus.
o Warten Sie auf die MFC-Antwort aus dem Speicher.
o Lade MDR vom Speicher-Bus.
oR2 [MDR]

Die Inhalte des MAR sind immer an den Adressleitungen des Speicherbusses verfügbar.
Wenn eine neue Adresse in MAR geladen wird, erscheint sie auf dem Speicherbus bei der
Beginn des nächsten Uhrzyklus, wie gezeigt.
Ein Lese-Steuersignal wird gleichzeitig aktiviert, wenn der MAR geladen wird.
Dieses Signal wird dazu führen, dass die Bus-Schnittstellenschaltung einen Lese-Befehl sendet,
MR (Speicherlesen) auf dem Bus.
MDRinEwartet aktiv auf eine Antwort aus dem Speicher.
Daten, die aus dem Speicher empfangen werden, werden am Ende des Taktzyklus in das MDR geladen.

Dr. M J Sudhamani, Fachbereich CSE, RNSIT 6


MODUL – V 18CS34: Computerorganisation

Welches MFC-Signal empfangen wird.


Im nächsten Taktzyklus. MDRaußerhalbwird aktiviert, um die Daten in das Register R zu übertragen2.
Signale werden wie folgt aktiviert:
1.R1aus, MARinLesen
2.MDRinE, WMFC (auf das Eintreffen des MFC-Signals warten.
3.MDRaus, R2 Zoll

5.2.4 Ein Wort im Speicher speichern

Die gewünschte Adresse ist in das MAR geladen.


Daten werden in MDR geladen.
Der Befehl zum Schreiben wird ausgegeben

Bewege R2,(R1) erfordert die folgende Abfolge:


1.R1aus, MARin
2.R2aus, MDRein, Schreiben
3.MDRoutE, WMFC
Hinweis: WMFC:- Auf das Eintreffen des MFC-Signals warten

5.3 AUSFÜHRUNG EINER VOLLSTÄNDIGEN ANWEISUNG


Berücksichtigen Sie die Anweisung Add (R3), R1
Die Ausführung dieser Anweisung erfordert die folgenden Maßnahmen:
Hol dir die Anleitung
Holen Sie den ersten Operand (den Inhalt der Speicherstelle, auf die verwiesen wird von
R3).
Führen Sie die Addition durch.
Laden Sie das Ergebnis in R1.
Steuersequenz für die Ausführung des Befehls Add (R3), R1
1.PCaus, MARin, Lesen, Auswählen4, Hinzufügen, Zin
Der Abrufvorgang wird initiiert, indem die Adresse im PC in das MAR geladen und ein Lesen gesendet wird.
Anfrage an den Speicher. Das Auswahl-Signal ist auf Select4 gesetzt, was den MUX dazu bringt, auszuwählen
konstante Wert 4. Dieser Wert wird zum Operanden am Eingang B (Inhalt des PC) hinzugefügt und
Das Ergebnis wird im Register Z gespeichert.
2.Zaus, PCin, Yin, WMFC
Der aktualisierte Wert in Z wird nach PC verschoben (um auf die nächste Adresse zu zeigen), während gewartet wird auf
die Erinnerung zu reagieren.
3.MDRaus, IRin
Sobald das MFC-Signal aus dem Speicher empfangen wird, wird die abgerufene Anweisung in
MDR und dann zu IR.
Diese 3 Phasen sind die Phase des Befehlsabrufs.
4.R3außerhalb, MARinLesen
Der Befehlsdecodierungskreis interpretiert den Inhalt des IR und der Prozessor startet.
die Ausführungsphase. Die Inhalte von R3 (Adresse des Operanden) werden in das MAR geladen

Dr. M J Sudhamani, Fachbereich CSE, RNSIT 7


MODUL – V 18CS34: Computerorganisation

und ein Lese-Signal wird ausgegeben.


5.R1aus, Yin, WMFC
Während man auf die Antwort des Speichers wartet, werden die Inhalte von R1 in das Y-Register übertragen.
6.MDRaus, Wählen Sie Y, Fügen Sie Z hinzuin
Der Speicher stellt Daten auf dem Bus zur Verfügung, die in den MDR und auf den B-Eingang verschoben werden.
von ALU. Der Inhalt von Y (Inhalt von R1) wird über SelectY in den Eingang A von ALU eingespeist.
Signal des MUX.
Das Steuerungssignal ist aktiviert.
Nach der Addition wird das Ergebnis an Z übergeben.
7.Zaus, R1in, Ende.
Schließlich wird die Summe aus dem Register Z in R1 verschoben. Das Endsignal verursacht neue
Der Befehlsabrufzyklus beginnt mit der Rückkehr zu Schritt 1.

Steuerfolge für die Anweisung Add (R3)+,, R1


1.PCraus, MARin, Lesen, Auswahl4, Hinzufügen, Zin
2.Zaus, PCin, Yin, WMFC
3.MDRaußen, IRin
4.R3aus, MARin, Lesen, Auswählen4, Hinzufügen, Zin
5.Zaus, R3in
6.R1aus, Yin, WMFC
7.MDRaus, WählenY, Hinzufügen, Zin
8.Zaus, R1in, Ende

Dr. M J Sudhamani, Fachbereich CSE, RNSIT 8


MODUL – V 18CS34: Computerorganisation

5.3.1 Verzweigungsanweisungen
Eine Sprunganweisung ersetzt den Inhalt des PC mit dem Sprungziel
Adresse.
Diese Adresse wird in der Regel durch Hinzufügen eines Offsets X erhalten, der in der
Sprungbefehl, zum aktualisierten Wert des PC.

Der Offset X, der in einer Sprunganweisung verwendet wird, ist die Differenz zwischen dem Sprung
Zieladresse und die Adresse unmittelbar nach der Sprunganweisung.
Wenn sich die Verzweigungsanweisung bei 2000 befindet und die Zieladresse der Verzweigung 2050 ist, dann ist der Wert von X
muss 46 sein. (Dies liegt daran, dass der PC während der Abrufphase erhöht worden wäre, sodass er
würde bereits auf 2004 zeigen. Daher ist nur 46 der Offset.)
Für einen bedingten Zweig müssen wir den Status der Bedingungscodes überprüfen, bevor
Laden eines neuen Wertes in den PC.
Für die (Branch > 0) Anweisung wird Schritt 4 durch das Offset-Feld des IR ersetzt.außerhalb, Hinzufügen, Zin, Wenn
N=0, dann Ende. Wenn N=0 ist, kehrt der Prozessor sofort nach Schritt 4 zu Schritt 1 zurück.
Wenn N=1 ist, wird Schritt 5 ausgeführt, um einen neuen Wert in das PC zu laden, wodurch der Sprung ausgeführt wird.
Betrieb.

5.4 Mehrbus-Organisation
Die einzelne Busstruktur führt zu Steuersequenzen, die ziemlich lang sind, da nur
Ein Element kann in 1 Taktzyklus über den Bus übertragen werden.
Um die Anzahl der Schritte zu reduzieren und die CPU-Leistung zu verbessern, modern
Prozessoren bieten mehrere interne Wege, die mehrere Übertragungen ermöglichen.
parallel platzieren.

Dr. M J Sudhamani, Fachbereich CSE, RNSIT 9


MODUL – V 18CS34: Computerorganisation

Alle allgemeinen Zwecke Register sind in einem einzigen Block zusammengefasst, der als Registerdatei bezeichnet wird.

Die Registerdatei hat 3 Teile.


o2-Ausgaben ermöglichen den Zugriff auf Inhalte von zwei verschiedenen Registern
gleichzeitig und ihre Inhalte sind auf A und B platziert.
Der o1-Port ermöglicht es, die Daten auf C gleichzeitig in das dritte Register zu laden.
Taktzyklus.
Die Busse A und B werden verwendet, um die Quelloperanden an die A- und B-Eingänge zu übertragen.
ALU.
Der Ausgang der ALU wird über den Bus C übertragen.
Wenn die ALU eines ihrer beiden Eingangsoperanden unverändert an den Bus C weitergibt, geben Sie an
verwende R=A oder R=B
Die Verwendung von Inkrementierung eliminiert die Notwendigkeit, 4 zum PC mithilfe der ALU hinzuzufügen und hinzuzufügen.
Operation.

- Steuersequenz für den Befehl Add R4, R5, R6 für die 3-Bus-Organisation

Dr. M J Sudhamani, Fachbereich CSE, RNSIT 10


MODUL – V 18CS34: Computerorganisation

1.PCaus, R=B, MARin, Read, IncPC


Die Inhalte des PCs werden über das Steuerungssignal R=B durch die ALU geleitet und geladen in
MAR, um einen Speicherlesevorgang zu starten. PC wird um 4 erhöht, um auf den nächsten zu verweisen.
Anweisung in Reihenfolge.
2. WMFC
Der Prozessor wartet auf das MFC-Signal vom Speicher.
3.MDRAusB, R=B, IRin
Der Instruktionscode wird im MDR empfangen und an den IR übertragen. Dies vervollständigt den Abruf.
Phase.
4.R4outA, R5outBWählenA, Hinzufügen, R6in, Ende.
Die Anweisung wird decodiert und die Additionsoperation findet statt.

5.5 Festverdrahtete Steuerung


Um Anweisungen auszuführen, muss der Prozessor über ein Mittel zur Generierung des verfügen.
Steuer_signale, die in der richtigen Reihenfolge benötigt werden.

Zwei Ansätze:
Festverdrahtete Steuerung
Mikroprogrammierte Steuerung

Der Decoder/Encoder-Block ist eine kombinatorische Schaltung, die das angeforderte erzeugt.
Steuersignale (Ausgänge) abhängig von den Zuständen aller Eingänge.

Dr. M J Sudhamani, Fachbereich CSE, RNSIT 11


MODUL – V 18CS34: Computer Organisation

Der Schrittdecoder bietet für jeden Schritt oder Zeitraum eine separate Signalleitung.
Steuerfolge.
Der Ausgang des Instruktionsdecoders besteht aus einer separaten Zeile für jede Maschine
Anweisung.
Für jede im IR geladene Anweisung wird eine der Ausgabelinien INS1 bis INSm auf gesetzt.
1 und alle anderen Zeilen sind auf 0 gesetzt.
Die Eingangssignale zum Encoder-Block werden kombiniert, um die einzelnen Steuerungen zu erzeugen.
Signale wie Yin, PCausHinzufügen

Dr. M J Sudhamani, Fachbereich CSE, RNSIT 12


MODUL – V 18CS34: Computerorganisation

Dieser Schaltkreis implementiert die Logikfunktion: Zin= T1+T4.Br+T6.Fügen Sie hinzu ...
Dieses Signal wird während des Zeitfensters T aktiviert.1für alle Anweisungen, während T4für
unbedingte Sprunganweisungen und T6für eine Addieranweisung.

RUN-Steuersignal:
Wenn auf 1 gesetzt, bewirkt RUN, dass der Zähler am Ende um eins erhöht wird.
jeder Taktzyklus.
Wenn auf 0 gesetzt, stoppt der Zähler. Dies ist erforderlich, wenn das WMFC-Signal ...
ausgegeben, um den Prozessor zum Warten auf eine Antwort vom Speicher zu bringen.

Logikfunktion:
Das Endsignal startet einen neuen Instruktionsabruffzyklus, indem es den Steuer-Schrittzähler zurücksetzt.
zu seinem Ausgangswert.
Die Steuerhardware kann als Zustandsmaschine betrachtet werden, die von einem...
Zustand zu einem anderen in jedem Taktschritt, abhängig von den Inhalten des IR, Bedingung
Codes und externe Eingaben.
Die Ausgänge der Zustandsmaschine sind Steuersignale.
Die Reihenfolge der von der Maschine durchgeführten Operationen wird durch die Verdrahtung bestimmt.
Logikelemente, daher der Name „hardwired“.

5.5.1 Ein vollständiger Prozessor


Die Steuereinheit holt die Anweisungen aus einem Befehls-Cache oder aus dem Hauptspeicher.
Speicher, wenn die gewünschten Anweisungen noch nicht im Cache sind.
Es hat separate Verarbeitungseinheiten, um mit Ganzzahl- und Fließkommadaten umzugehen.

Dr. M J Sudhamani, Fachbereich CSE, RNSIT 13


MODUL – V 18CS34: Computerorganisation

Die meisten Prozessoren verwenden heute separate Caches für Instruktionen und Daten.
Der Prozessor ist über die Bus-Schnittstelle mit dem Systembus verbunden.
Um das Potenzial für gleichzeitige Operationen zu erhöhen, mehrere Ganzzahlen und Fließkommazahlen
Punkteinheiten.
5.6 Mikroprogrammierte Steuerung
Durch die Verwendung von fest verdrahteter Steuerung können die im Prozessor erforderlichen Steuersignale sein
generiert mit einem Steuer-Schrittzähler und einem Decoder/Encoder-Schaltkreis.
Bei der mikroprogrammierten Steuerung werden die Steuersignale durch ein Programm erzeugt.
ähnlich wie Maschinenprogrammiersprachen.
Ein Steuerwort (CW) ist ein Wort, dessen einzelne Bits die verschiedenen Steuerungen repräsentieren.
Signale.
Eine Sequenz von CWs, die der Steuersequenz einer Maschine entspricht
Die Anweisung bildet die Mikroroutine für diese Anweisung.
Einzelne Steuerwörter in dieser Mikroroutine werden als Mikroanweisungen bezeichnet.
Die Mikro-Routinen für alle Befehle im Befehlssatz eines Computers sind gespeichert
in einem speziellen Speicher, der als Steuerstore bezeichnet wird.

Dr. M J Sudhamani, Fachbereich Informatik, RNSIT 14


MODUL – V 18CS34: Computerorganisation

Die Steuereinheit kann die Steuersignale für jede Anweisung generieren, indem sie nacheinander liest.
die CWs der Mikro-Routine aus dem Steuer-Speicher. Um dies zu erreichen, die Organisation von
CU kann sein:
Mikro Programmzähler (µPC) wird verwendet, um die Steuerwörter der Reihe nach zu lesen von der
Kontrollgeschäft.
Jedes Mal, wenn eine neue Anweisung in das IR geladen wird, ist die Ausgabe des als beschrifteten Blocks
„Startadresse-Generator“ wird in den µPC geladen.
µPC wird automatisch durch die Uhrzeit inkrementiert, was aufeinanderfolgende Mikro
Anweisungen, die aus dem Steuerlager gelesen werden sollen.

Dr. M J Sudhamani, Fachbereich Informatik, RNSIT 15


MODUL - V 18CS34: Computerorganisation

Daher werden die Steuersignale an verschiedene Teile des Prozessors geliefert in


korrekte Reihenfolge.
Diese Organisation kann eine Situation nicht bewältigen, in der die CU überprüfen muss
Status der Zustandscodes oder externen Eingaben.
Hardwired-Steuerung löst diese Situation, indem sie eine geeignete Logikfunktion einbezieht.
im Encoder-Schaltkreis.

In der mikroprogrammierten Steuerung wird ein alternatives Verfahren für bedingte Sprungmikro verwendet.
Anleitungen.
Die Mikro-Routine für die Sprunganweisung besagt, dass: Nach dem Laden von Branch<0 in den IR, ein
Branch-Mikroanweisung überträgt die Kontrolle an die entsprechende Mikro-Routine, die
Es wird angenommen, dass es an Standort 25 im Steuerstore beginnt.
Die Mikroanweisungen an der Stelle 25 testen das N-Bit der Bedingungscodes.
Wenn es 0 ist, erfolgt ein Sprung zu Speicherort 0, um eine neue Maschine abzurufen.
Anleitung.
Andernfalls wird die Mikroanweisung an der Stelle 26 ausgeführt. Dann folgt 27.
Um dieses Mikroprogrammereignis zu unterstützen, ist die CU wie folgt dargestellt:

Dr. M J Sudhamani, Fachbereich Informatik, RNSIT 16


MODUL – V 18CS34: Computerorganisation

5.6.1 Mikroanweisungen

Eine unkomplizierte Möglichkeit, Mikroanweisungen zu strukturieren, besteht darin, eine Bitposition zuzuordnen.
jedes Steuersignal.
Dieses Schema hat einen ernsthaften Nachteil - es werden einzelne Bits jedem Steuerungselement zugewiesen
Signale führen zu langen Mikroanweisungen, da die Anzahl der benötigten Signale ...
groß.
Nur wenige Bits sind auf 1 gesetzt, was bedeutet, dass der verfügbare Bitraum schlecht genutzt wird.

Ansätze zur Gestaltung eines Formats für Mikroanweisungen:


1) Unter der Annahme, dass ein Prozessor nur 4 Allgemeinregister enthält, R0, R1, R2 und
R3.
Aktiviere einige der Verbindungen in diesem Prozessor dauerhaft. Zum Beispiel
Ausgabe des IR an die Dekodierschaltungen – beide Eingänge zur ALU.
Verbindungen zu verschiedenen Registern erfordern 20 Steuersignale
Steuer-signale wie Lesen, Schreiben, Auswählen, WMFC und Endsignale benötigen
Raum.
Unter der Annahme von 16 Funktionen zur Durchführung von ALU, einschließlich Addieren, Subtrahieren, UND und

XOR.
Insgesamt werden 42 Steuersignale benötigt.
Nachteil dieses Ansatzes: Die meisten Signale werden nicht gleichzeitig benötigt.
und viele Signale sind gegenseitig exklusiv. Dieser Raum kann reduziert werden.
2) Die Signale können so gruppiert werden, dass alle sich gegenseitig ausschließenden Signale zusammen platziert werden.
Gruppe.
Ein binäres Codierungsschema wird verwendet, um die Signale innerhalb einer Gruppe darzustellen. In diesem CU,
Der µPC wird jedes Mal erhöht, wenn eine neue Mikroanweisung aus dem Mikro abgerufen wird.
Programmspeicher, mit Ausnahme der folgenden Situationen:
Wenn ein neuer Befehl in das IR geladen wird, wird der µPC mit dem Startwert geladen.
Adresse von µroutine für diese Anweisung.
Wenn eine Branch-µAnweisung getroffen wird und die Verzweigungsbedingung ist
Zufrieden wird die µPC mit der Zweigadresse geladen.
Wenn eine End-µAnweisung getroffen wird, wird der µPC mit dem geladen.
Adresse des ersten CW im µ-Routine für den Instruktionsabholzyklus.

Dr. M J Sudhamani, Fachbereich CSE, RNSIT 17


MODUL – V 18CS34: Computerorganisation

Nachteil dieses Ansatzes: Dieses Format erfordert etwas mehr Hardware, da das Dekodieren
Schaltungen müssen verwendet werden, um die Bitmuster jedes Feldes in einzelne Steuersignale zu decodieren.
Vorteil: - Dieses Format führt zu einem kleineren Steuerbereich. Es werden nur 20 Bits benötigt, um zu speichern.
Muster für 42 Signale.
3) Aufzählung der Muster der erforderlichen Signale in allen möglichen Mikroanweisungen.
Jede sinnvolle Kombination aktiver Steuersignale kann zugewiesen werden.
ein eindeutiger Code, der die Mikroanweisung repräsentiert.
Solch eine vollständige Kodierung reduziert die Länge der MW, erhöht jedoch die Komplexität von
erforderliche Dekoderschaltungen.
So stark kodierte Systeme, die kompakte Codes verwenden, um nur einen
eine kleine Anzahl von Steuerfunktionen in jeder µAnweisung wird als ein
vertikale Organisation
"Horizontale Organisation" ist ein kodiertes Schema, in dem viele Ressourcen
kann mit einer einzigen Anweisung gesteuert werden, wie in Abbildung 7.15 dargestellt.
Diese Organisation ist nützlich, wenn eine höhere Betriebs Geschwindigkeit gewünscht wird und

Dr. M J Sudhamani, Fachbereich CSE, RNSIT 18


MODUL – V 18CS34: Computerorganisation

wenn die Maschinenstruktur die parallele Nutzung von Ressourcen ermöglicht


Der zweite Ansatz ist eine horizontale Organisation.

5.6.2 Mikrogramm-Sequenzierung
Ein einfaches Mikroprogramm unter Verwendung des Formats in Abbildung 7.15 ist ziemlich einfach zu schreiben.
und Überprüfung. Aber dieses Schema hat 2 Nachteile:
Anforderung eines großen Steuerstores, da jede Maschinenanweisung eine hat
separate Mikro-Routine.
Wenn die Maschinenanweisungen mehrere Adressierungsmodi haben, gibt es eine separate
Mikroroutine für jede dieser Kombinationen kann Duplikate erzeugen von
gemeinsame Teile des Programms.
Um diese Probleme zu lösen, sollte das Mikrogramm so organisiert sein, dass Mikro
Routinen teilen die gemeinsamen Teile
Dies erfordert viele Verzweigungsanweisungen, um die Kontrolle zwischen verschiedenen zu übertragen
Teile.
Dies führt zu einem weiteren Problem - die Programmausführungszeit wird länger sein, da
Es wird mehr Zeit benötigt, um die Zweigbefehle auszuführen.
Betrachten Sie eine Anweisung „Add src,Rdst“, um die Komplexität der Sequenzierung zu veranschaulichen.
Betrieb
Diese Anweisung addiert das Quelloperand zu den Inhalten des Registers Rdst und
platziert die Summe in Rdst, dem Zielregister.
Der Quelloperand kann in einem der folgenden Adressierungsmodi sein: Register, Auto
inkrementieren
Ein Mikroprogramm wird in Form eines Flussdiagramms präsentiert, um das Verständnis zu erleichtern.
Jede Box im Diagramm repräsentiert eine Mikroanweisung, die die Transfers und steuert
Operationen, die im Kästchen angegeben sind.
Die Mikroanweisung (µAnweisung) befindet sich an der Adresse, die durch die oktale angezeigt wird.
Zahl oben in der oberen rechten Ecke des Feldes.
Jede octale Ziffer repräsentiert 3 Bits.
Verwendete Techniken:
Änderung der Zweigadresse durch Bit-OR-Operation
Aus dem Flussdiagramm ist ersichtlich, dass Zweige zu unterschiedlichen
Adressen, da einige Teile der Mikro-Routinen von allen geteilt werden.
Mikroprogramme
An einem Punkt mit der Bezeichnung α soll eine Entscheidung über das Verzweigen getroffen werden:
Wenn der Direktmodus festgelegt ist, wird die Anweisung an der Stelle 170 umgangen und
Die Kontrolle geht zu 171
Wenn der indirekte Modus angegeben ist, dann ist die µAnweisung an der Stelle 170
ausgeführt, um das Operanden aus dem Speicher abzurufen.
Dies wird mit einer Technik namens Bit-ORing durchgeführt.

Dr. M J Sudhamani, Fachbereich CSE, RNSIT 19


MODUL – V 18CS34: Computerorganisation

Bit-ODER
Der einfachste Weg, die Kontrolle direkt an den Ort 171 zu übertragen, besteht darin, den vorhergehenden
Branch µAnweisung gibt die Adresse 170 an und verwendet dann ein ODER-Gatter, um zu ändern
Setzen Sie das LSB dieser Adresse auf 1, wenn der direkte Adressierungsmodus angegeben ist. Dies ist bekannt als
Bit-ORing-Technik.

Dr. M J Sudhamani, Fachbereich CSE, RNSIT 20


MODUL – V 18CS34: Computerorganisation

5.6.3 Weitreichende Adressierung


Das Flussdiagramm enthält einen breiten Zweig in der µAnweisung an der Stelle 003.
Der Instruktionsdecoder, InstDec, erzeugt die Startadresse der µRoutine, die
führt die Anweisung aus, die gerade in das IR geladen wurde.
In unserem Beispiel wird der Befehl „Add src, Rdst“ in das IR geladen.
Der Instruktionsdecoder erzeugt die µInstruktionsadresse 101.
Diese Adresse kann jedoch nicht direkt in das µPC geladen werden, da der src-Operand
kann in einem der mehreren Adressierungsmodi sein.
Das Flussdiagramm zeigt 5 mögliche Zweige von links nach rechts: indiziert, automatisch
Dekrement
Die Bit-OR-Technik wird verwendet, um die von der
Instruktionsdecoder, um den entsprechenden Pfad zu erreichen.
WMFC wird in einer Sprungmikroanweisung verwendet, da der Sprung nicht erfolgen darf, bis
Der Speichertransfer ist abgeschlossen.
Ein Fall, in dem das Quelloperanden im automatischen Inkrementmodus zugegriffen wird:
Add (Rsrc)+,Rdst

Dr. M J Sudhamani, Fachbereich Informatik, RNSIT 21


MODUL – V 18CS34: Computerorganisation

Oktal Binär
Adresse, die vom Instruktionsdekodierer erzeugt wurde 101 001 000 001
Indexiert 161 001 110 001
Autodekrement 141 001 100 001
Autoinkrement 121 001 010 001
Direkt registrieren 101 001 000 001
Indirekt registrieren 111 001 001 001

Modusbits-Annahmen:
10thBit 9thBit Modus
1 1 Indexiert
1 0 Automatische Dekrementierung
0 1 Automatische Inkrementierung
0 0 Registrieren

8thBit
0 Direkt
1 Indirekt

Der Prozessor hat 16 Register, die für die Adressierung verwendet werden, wobei jedes mit 4 Bit angegeben ist.
Code.
Es gibt 2 Phasen der Dekodierung:
Das Mikrobefehl-Feld muss dekodiert werden, um festzustellen, ob es sich um Rsrc oder Rdst handelt.
Das Register ist beteiligt.
Die dekodierte Ausgabe wird dann verwendet, um den Inhalt von Rsrc oder Rdst zu steuern.
Felder in IR. In den zweiten Dekodierer, der die Steuerungssignale erzeugt für
aktuelle Register R0 bis R15
Die Mikro-Routine für Add (Rsrc)+Rdst hat zwei Beispiele für Bit-ORing:
1) Mikroanweisung an Standort 003:
Es gibt 5 Startadressen für die Mikro-Routine, abhängig von der
Adressierungsmodus.
Diese Adressen unterscheiden sich nur in der mittleren oktalen Ziffer.
Die 3 Bits, die mit der mittleren Ziffer ODER-verknüpft werden sollen, werden von der Dekoderschaltung bereitgestellt.
verbunden mit der Quelladresse.

2) Mikroanweisung an Standort 123:


Es führt zu einem Sprung zur Mikroanweisung an der Stelle 170, was verursacht
ein weiterer Abruf aus dem Speicher unter Verwendung des indirekten Adressierungsmodus.

Im direkten Adressierungsmodus wird der zusätzliche Abruf umgangen durch


ORing das Inverse des indirekten Bits im Quelladressfeld (Bit 8 im IR)
mit der 0-Bit-Position des Mikroprozessors

Dr. M J Sudhamani, Fachbereich CSE, RNSIT 22


MODUL – V 18CS34: Computerorganisation

5.6.4 Mikroanweisungen mit nächster Adresse Feld


Das Flussdiagramm in Abbildung 7.20 enthält mehrere Zweig-µAnweisungen, die ausführen
Keine nützliche Operation im Datenpfad.
Diese Anweisungen sind nur erforderlich, um die Adresse des nächsten zu bestimmen.
µAnweisung.
Eine höhere Anzahl solcher Anweisungen verringert die Rechengeschwindigkeit.
Die Lösung für dieses Problem ist:
Fügen Sie ein Adressfeld als Teil jeder µAnweisung hinzu, um den Standort anzugeben.
nächste µAnweisung, die abgerufen werden soll.
Der Vorteil dieses Schemas ist:
Der Bedarf an einer separaten Zweig-µAnweisung entfällt.
Es ist kein Zähler erforderlich, um die Adresse im Auge zu behalten. Daher wird der µPC ersetzt.
durch µAR (Mikroinstruktionsadressregister). Dieses Register wird von nächster
Adressfeld jeder µAnweisung.
Neue Mikroprogrammsteuerungsstruktur mit µAR und Bit-ODER-Fähigkeit kann
gestaltet als:
Die Dekodierschaltungen erzeugen die Startadresse einer bestimmten Mikro-Routine auf der Grundlage
von Opcode im IR.
Die nächsten Adressbits werden über OR-Gatter an µAR weitergeleitet.

Dr. M J Sudhamani, Fachbereich CSE, RNSIT 23


MODUL – V 18CS34: Computerorganisation

Die Adresse kann je nach den Daten in der IR, den Zustandscodes und
Externe Eingaben.
Überdenken der Anweisung „Add (Rsrc)+, Rdst“
oµroutine wird in Abbildung 7.21 gezeigt
Wenn wir die gerade entworfenes Kontrollstruktur verwenden, müssen wir die
µBefehlsformat, das in Abbildung 7.19 entworfen wurde
Zusätzliche Felder, die zusammen mit dem vorherigen Format hinzugefügt werden sollen, sind:
oSignal ODERModuswird verwendet, um anzugeben, ob das Bit-ORing verwendet wird oder nicht.
o Das Signal ORindsrc wird verwendet, um anzuzeigen, ob eine indirekte Adressierung der Quelle vorliegt.
Der Operand wird für das breite Branching im Flussdiagramm von Abbildung 7.20 verwendet.
o Ein Bit in der µAnweisung wird verwendet, um anzuzeigen, wann die Ausgabe des
Der Befehlsdecoder soll in die µAR gesteuert werden.
o Jede µAnweisung enthält ein 8-Bit-Feld, das die Adresse der nächsten enthält
µAnweisung.

Dr. M J Sudhamani, Fachbereich CSE, RNSIT 24


MODUL – V 18CS34: Computerorganisation

Die Zweig-µAnweisung an der Stelle 123 wird mit 122 fortgesetzt.


Wenn die µInstruction-Sequenzierung durch µPC gesteuert wird, wird das Endsignal verwendet, um zurückzusetzen.
der µPC, um auf die Startadresse der µ-Anweisung zu verweisen, die die nächste anfordert
Maschinenanweisung, die ausgeführt werden soll.
In der Organisation, die µAR in Betracht zieht, ist diese Startadresse 0008 (d.h. 000 im Oktalsystem).
Das Endsignal ist im FO-Feld ausdrücklich angegeben.

Dr. M J Sudhamani, Fachbereich CSE, RNSIT 25


MODUL – V 18CS34: Computerorganisation

Die Abbildungen 7.25 und 7.26 des Lehrbuchs geben ein detailliertes Bild der Steuerstruktur der Abbildung.
7.22 und Schaltungen zum Bit-ODERing.

5.6.5 Vorab-Laden von Mikrobefehlen


Ein Nachteil der µprogrammierten Steuerung ist, dass sie zu einer langsameren Betriebsgeschwindigkeit führt.
wegen der Zeit, die benötigt wird, um µInstruktionen aus dem Steuerstore abzurufen
Eine schnellere Ausführung wird erreicht, wenn die nächste µ-Anweisung vorab geladen wird, während die aktuelle
einer wird hingerichtet.
Die Ausführungszeit kann mit der Abholzeit überlappt werden.
Das Vorladen hat einige Probleme:
Die Statusanzeigen und Ergebnisse der aktuell ausgeführten µAnweisungen werden benötigt, um
Bestimmen Sie die Adresse der nächsten µ-Anweisung.
Daher bringt straightforward prefetching gelegentlich eine falsche Vorabladung.
µAnweisung.
In solchen Fällen muss der Abruf mit der korrekten Adresse wiederholt werden, die
fordert komplexe Hardware.
Diese Nachteile sind geringfügig und die Vorab-Lade-Technik wird häufig verwendet.

Problem
Schreiben Sie die Steuersequenz der Ausführung der Anweisung ADD (R3), R1. Dafür
Eine Abfolge von Anweisungen, der Prozessor wird von einer kontinuierlich laufenden Uhr angetrieben, die
dass jeder Steuerungsschritt eine Dauer von 2 ns hat. Wie lange wird der Prozessor warten müssen in
Schritte 2 und 5, vorausgesetzt, dass eine Speicherleseoperation 16 ns dauert? Außerdem
Berechnen Sie den Prozentsatz der Zeit, während der der Prozessor während der Ausführung untätig ist.
diese Anweisung.

Lösung:
Steuersequenz:
1.PCaus, MARin, Lesen, Auswählen4, Hinzufügen, Zin
2.Zaus, PCin, Yin, WMFC
3.MDRraus, IRin
4.R3aus, MARin, Lies
5.R1aus, Yin, WMFC
6.MDRaus, WählenY, Hinzufügen, Zin
7.Zaus, R1in, Ende.

Die gesamte Ausführungszeit beträgt: (5X2)+(2X16)=42ns Es gibt insgesamt 7 Schritte.


Jeder Schritt dauert 2 ns.
Schritt 2 und 5 dauern 16 ns
Daher benötigen 5 Schritte 2 ns. Die verbleibenden 2 Schritte benötigen 16 + 16 = 32 ns.

Deshalb ist (5X2)+(2X16)=42ns

Dr. M J Sudhamani, Fachbereich CSE, RNSIT 26


MODUL – V 18CS34: Computerorganisation

Der Prozessor ist während der Speicherlesevorgänge untätig. d.h. für eine Dauer von 32 ns aus
42ns. Daher beträgt die Leerlaufzeit des Prozessors = 32ns/42ns = 76,2% der Gesamtzeit.

5.7 Vergleich zwischen festverdrahtet und mikroprogrammiert


Kontrolle

Attribut Festverdrahtete Steuerung Mikroprogrammierte Steuerung

Geschwindigkeit Schnell Langsam

Steuerungsfunktion In Hardware implementiert In Software implementiert

Not flexible, to accommodate new More flexible, to accommodate new


Flexibilität
Systemanforderungen oder neue Systemanforderungen oder neu
Anweisungen Eine Neugestaltung der Anweisungen ist erforderlich.

Fähigkeit, große/komplexe zu handhaben Schwierig Einfacher


Befehlssätze

Fähigkeit zur Unterstützung von Betriebssystemen und Diagnosen

Eigenschaften Sehr schwierig Einfach

Designprozess Einigermassen kompliziert Ordentlich und systematisch

Vorwiegend RISC-Mikroprozessoren Mainframes, einige Mikroprozessoren


Anwendungen

In der Regel unter 100 Anweisungen


Befehlssatzgröße In der Regel über 100 Anweisungen

2K bis 10K bei 20-40 Bit


ROM-Größe - Mikroanweisungen

Chip-Flächeneffizienz Verwendet die geringste Fläche Benötigt mehr Fläche

Dr. M J Sudhamani, Fachbereich CSE, RNSIT 27

Das könnte Ihnen auch gefallen