Theoretische und technische Informatik - ganz praktisch - Letzte Fragen & Antworten in 2015-N-09 https://info2.aifb.kit.edu/qa/index.php?qa=qa&qa_1=2015-nachklausur&qa_2=2015-n-09 Powered by Question2Answer Beantwortet: c) wie kommt man auf die Taktzahlen? https://info2.aifb.kit.edu/qa/index.php?qa=6308&qa_1=c-wie-kommt-man-auf-die-taktzahlen&show=6323#a6323 Hallo,<br /> <br /> das Ergebnis wird ja schon während Takt 7 (WB) geschrieben. Zwar stehet es erst in Takt 8 zur weiteren Berechnung zur Verfügung, aber gespeichert ist es bereits in Takt 7 in R3. <br /> Auf die Taktzahl für Aufgabenteil a) kannst du ganz eifnach kommen, wenn du dir überlegst, dass ohne Piplining ja für jeden Befehl der ausgeführt wird ein Takt benötigt wird. Achtung man meint damit nicht jeden Befehl im Assemblercode, sondern im Maschinenbefehlszyklus. Du kannst einfach die einzelnen Operationen aus deiner Tabelle abzählen.<br /> <br /> Liebe Grüße<br /> <br /> Verena (Tutor) 2015-N-09 https://info2.aifb.kit.edu/qa/index.php?qa=6308&qa_1=c-wie-kommt-man-auf-die-taktzahlen&show=6323#a6323 Wed, 07 Feb 2018 09:32:06 +0000 Beantwortet: Registerinhalt b) Notation https://info2.aifb.kit.edu/qa/index.php?qa=5374&qa_1=registerinhalt-b-notation&show=5412#a5412 Ja, das ist erlaubt. In der Musterlösung wird der Inhalt der Speicheradresse nur angegeben, wenn er sich im Vergleich zum vorherigen Takt geändert hat. Es ist auch richtig, wenn man für jeden Takt den Inhalt der Speicheradressen angibt.<br /> <br /> Viele Grüße<br /> <br /> Philipp (Tutor) 2015-N-09 https://info2.aifb.kit.edu/qa/index.php?qa=5374&qa_1=registerinhalt-b-notation&show=5412#a5412 Mon, 06 Feb 2017 13:46:34 +0000 Beantwortet: Teilaufgabe b) Registerinhalt https://info2.aifb.kit.edu/qa/index.php?qa=4237&qa_1=teilaufgabe-b-registerinhalt&show=4240#a4240 <p> Hallo,</p> <p> 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:</p> <p> 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.</p> <p> <strong>Wichtig ist ab Takt 5, dass der LOAD-Befehl die Quelle(n), also die Operanden, während der Execution (EX) liest. </strong></p> <p> 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,... -&gt; Das Ergebnis dieser Operation ist dann <strong>m</strong>. 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).</p> <p> 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 <strong>0</strong>. Dieser Wert taucht dann erneut zwei Takte später (Takt 8) im Register R3 auf.</p> <p> Ich hoffe, dass der Ablauf und die Problematik des Pipelining in diesem Fall deutlich wird.</p> <p> Viele Grüße</p> <p> Max (Tutor)</p> 2015-N-09 https://info2.aifb.kit.edu/qa/index.php?qa=4237&qa_1=teilaufgabe-b-registerinhalt&show=4240#a4240 Sat, 13 Feb 2016 09:26:32 +0000