Theoretische und technische Informatik - ganz praktisch
Herzlich willkommen auf der Question/Answer-Plattform zu Grundlagen der Informatik II. Wir wünschen Ihnen viel Spaß beim Lernen und Diskutieren!
Loggen Sie sich mit Ihrem KIT-Account (u...) ein, um loszulegen!
Beachten Sie auch diese Informationen zum Schnelleinstieg.
(Nicht-KIT-Studierende beachten bitte diese Informationen.)

Teilaufgabe b) Registerinhalt

+2 Punkte
152 Aufrufe
Hallo,

mir ist leider unklar, wie ich auf den Registerinhalt für R3 komme. Die um 1 Takt versetzten Eintrage in R1 und R2 kann ich noch nachvollziehen. Ich wäre dankbar, wenn man mir die Vorgehensweise erläutern könnte.

Vielen herzlichen Dank im Voraus
Gefragt 13, Feb 2016 in 2015-N-09 von uldya uldya Lernwillige(r) (250 Punkte)  

Eine Antwort

+1 Punkt
 
Beste Antwort

Hallo,

nachdem du die versetzten Einträge für R1 und R2 noch nachvollziehen kannst und für R3 auch insbesondere die Befehle III und IV relevant sind, steigen wird dort ein:

In den Takten 3 und 4 wird zunächst für Befehl III nur der Befehl gelesen bzw. der Operationscode decodiert, für Befehl IV wird nur der Befehl gelesen. Hier geschieht also noch nichts mit den Operanden.

Wichtig ist ab Takt 5, dass der LOAD-Befehl die Quelle(n), also die Operanden, während der Execution (EX) liest.

Für Takt 5 kannst du, insofern wie gesagt die Einträge für R1 und R2 klar sind, sehen, dass R1=m, R2 jedoch noch null ist, daher wird Befehl III ungefähr so ausgeführt: ADD m, 0,... -> Das Ergebnis dieser Operation ist dann m. Dieser Wert taucht erst in Takt 7 im Register R3 auf, weil er in Takt 6 geschrieben wird und dann einen Takt später zur Verfügung steht (siehe Erklärung in Aufgabe).

Für Befehl Nr. IV müssen wir jetzt noch Takt 6 betrachten: Dort werden die Quellen (R3 und R3) gelesen, die ja, wie wir gerade festgestellt haben, zu diesem Zeitpunkt noch null ist/sind! Daher wird die Addition mit den Summanden 0 und 0 ausgeführt und ergibt wieder 0. Dieser Wert taucht dann erneut zwei Takte später (Takt 8) im Register R3 auf.

Ich hoffe, dass der Ablauf und die Problematik des Pipelining in diesem Fall deutlich wird.

Viele Grüße

Max (Tutor)

Beantwortet 13, Feb 2016 von udebm udebm Tutor(in) (105,070 Punkte)  
ausgewählt 13, Feb 2016 von uldya uldya
Vielen Dank, hat mir sehr geholfen.
...