Wie erweitere ich einen Eintaktprozessor richtig?

Gehen wir davon aus, dass wir einen Eintaktprozessor haben. Nun soll der Eintaktprozessor so erweitert werden, dass er nach der Erweiterung auch einen neuen bestimmten Befehl ebenfalls ausführen kann. Dafür muss ich verstehen, wie all diese Komponenten zusammenhängen, um genau zu wissen, wo ich meinen neuen "Baustein" für den neuen Befehl hinzufügen kann.

Zum Beispiel kann dieser Eintaktprozessor die "add"-Operation ausführen, da er über Register-Dateien, einen Addierer, eine ALU, einen Multiplexer usw. verfügt. Da der Datenpfad für die "add"-Operation, die Operanden von den Registern zum Addierer leitet, das Ergebnis durch die ALU berechnet, und schließlich das Ergebnis in das Zielregister zurückführt...

Nun habe ich eine Beispiel-Aufgabe mit einer Lösung, bin mir aber unsicher, wie man zu dieser Lösung gelangt. Könnte mir jemand das erklären?

In dieser Aufgabe sollen Sie den dargestellten MIPS-Eintaktprozessor erweitern, sodass der neue Befehl Read Word Until Zero (rwuz) unterstützt wird. Der abgebildete Prozessor unterscheidet sich leicht von dem Ihnen bekannten Eintaktprozessor.
rwuz unterscheidet sich von anderen MIPS-Befehlen dadurch, dass er von dem Prozessor automatisch mehrfach ausgeführt werden soll, solange das gelesene Datenwort nicht null war.
rwuz soll ein Befehl im I-Format sein.
Für rwuz soll der Opcode 0x11 verwendet werden.
Der Direktoperand (immediate) soll zu dem rs-Register hinzuaddiert werden. Das Ergebnis dieser Operation soll im rt-Register gespeichert werden.
Das rt-Register soll gleichzeitig als Adresse für einen Lesezugriff auf den Datenspeicher verwendet werden.
Solange der gelesene Wert aus dem Speicher nicht null ist, soll der selbe rwuz-Befehl im nächsten Taktzyklus erneut ausgeführt werden (PC bleibt gleich). Falls der gelesene Datenwert null ist, soll die nächste Instruktion ausgeführt werden (PC um 4 erhöhen).
Das aus dem Speicher gelesene Datenwort soll nicht in einem Register abgelegt werden.
Tipp: Das Signal rZero zeigt an, ob das aus dem Speicher gelesene Datenwort null ist

Selbst wenn niemand in der Lage ist, mir dies genau zu erklären, kann mir jemand Quellen, Videos oder Bücher empfehlen, damit ich ein besseres Verständnis dafür entwickeln kann?

Bild zu Frage
CPU, Prozessor, Hardware, Assembler, Informatik, Universität, Rechnerarchitektur

Meistgelesene Fragen zum Thema Rechnerarchitektur