Hardware Reference
In-Depth Information
quenz verdoppelt wird. Vernachlassigen Sie dabei die Zeit, welche die Pipeline
zum Einschwingen benotigt.
Bei superskalaren Pipelines ist die Lage komplizierter und hangt vom jewei-
ligen Programmkontext ab. Wir wollen die Extremfalle an kunstlichen Bei-
spielen demonstrieren. In allen anderen Fallen mussen Abschatzungen oder
Messungen durchgefuhrt werden.
Das folgende einfache Programm enthalt lediglich eine Verzweigung und lauft
in einer Endlosschleife. Das Verhalten des Sprungbefehls wird gesteuert durch
den 64-Bit-Wert in dem globalen Register YesNo , der in jedem Schleifendurch-
lauf um ein Bit nach rechts rotiert wird. Nach rechts zu rotieren bedeutet,
dass alle Bits um eine Position nach rechts rutschen und das niederwertigste
Bit zum hochstwertigen wird. Die Verzweigung wird genau dann ausgefuhrt,
wenn das niederwertigste Bit dieses Registers nicht gesetzt ist ( PBEV , Probable
Branch if Even). Es lassen sich durch Modifikationen des Wertes in dem glo-
balen Register YesNo Muster einer Folge von Taken- (T) und Not Taken- (N)
Verzweigungen vorgeben und damit die Reaktion der Vorhersageverfahren
beobachten. Die entstehenden Muster von Taken/Not Taken-Verzweigungen
entsprechen direkt dem Bitmuster des Wertes in YesNo .AlsoderWert #AAAA
AAAA AAAA AAAA wird zu dem Muster TNTNTN 2 usw. fuhren. Entsprechend
wird der Wert #FFFF FFFF FFFF FFFF zu lauter Not Taken fuhren. Der Be-
fehl in Zeile 8 zahlt zunachst einfach die Not Taken-Verzweigungen. Wir
werden spater sehen, wie die Beobachtung der erfolgreichen Vorhersagen mit
den Moglichkeiten des Pipeline-Simulators durchgefuhrt werden kann.
simple.mms
1 YesNo
GREG
#AAAAAAAAAAAAAAAA
2
3 P
IS
$2
4 q
IS
$3
5
6
LOC
#100
7 Main
PBEV
YesNo,1F
8
ADD
P,P,1
Misserfolge zahlen
9 1H
AND
q,YesNo,1 rotieren
10
SLU
q,q,63
11
SRU
YesNo,YesNo,1
12
OR
YesNo,YesNo,q
2 Die Sprungmuster sind von links nach rechts zu lesen. Im Muster TN“ tritt
zuerst ein Taken auf, gefolgt von einem Not Taken.
Search WWH ::




Custom Search