Hardware Reference
In-Depth Information
t 1
Operanden
Befehl
unit
Status
Q Y
Q Z
V Y
V Z
Ergebnis
FCMP test,r,:M
$6
$254
$9
BNP
test,2F
INT1
$9
2F
INT2
Direktop.
×
$10 (ung.)
LDA
temp1,...
Zum Zeitpunkt t 2 sind sowohl der BNP als auch der LDA fertig, aber es stellt
sich heraus, dass der LDA gar nicht auszufuhren ist, weil der Sprung aus-
gefuhrt wird und das Programm mit einem ganz anderen Befehl als ange-
nommen fortgesetzt werden muss. Der bereits ausgefuhrte Befehl muss also
verworfen werden, was durch das Symbol veranschaulicht wird. Als Er-
gebnis des Sprungbefehls wird hier ein neuer Wert fur den Befehlszahler BZ
bereit gestellt:
t 2
Operanden
Befehl
unit
Status
Q Y
Q Z
V Y
V Z
Ergebnis
$9
BNP
test,2F
2F
Neuer BZ
LDA
temp1,:Bmp:data
Wenn der erste Befehl vom tatsachlichen Sprungziel nicht schnell genug bereit
gestellt werden kann, dann ist der Reorder Buffer im nachsten Taktzyklus t 3
leer.
4.6
4.6 Umbenennung von Registern
Wie wir in den vorangegangenen Abschnitten gesehen haben, werden im Re-
order Buffer Kopien von Operanden sowie Ergebnisse gespeichert. Diesen
Aspekt wollen wir nun etwas genauer betrachten. Wir nehmen zur Beispiel-
konfiguration von Seite 66 eine Ausfuhrungseinheit fur Speicherzugriffe hin-
zu (Load-And-Store-Unit, kurz LSU)sowieeinenfunften Eintrag im Reorder
Buffer. Der Reorder Buffer sehe zu einem Zeitpunkt t 0 folgendermaßen aus:
t 0
Operanden
Befehl
unit
Status
Q Y
Q Z
V Y
V Z
Ergebnis
LSU
$1 (ung.)
LDO
$1,$254,0
$254
0
INT1 \\
×
LSU
neuer BZ (ung.)
BP
$1,1F
$2 (gultig)
ADD
$2,$3,$4
$3
$4
Wir gehen davon aus, dass der Ladebefehl (erster Eintrag) sehr lange lauft
und andere Befehle uberholen konnen. Der BP -Befehl (zweiter Eintrag) be-
obachtet die Load-And-Store-Unit, weil er deren Ergebnis benotigt. Der Ad-
Search WWH ::




Custom Search