Information Technology Reference
In-Depth Information
(auto), wenn prä- oder postmodifizierend auf den Hauptspeicher zugegriffen werden
soll. In Kombination mit lspfixr oder lspfixa ist es außerdem möglich, am jeweiligen
Cache vorbei auf den Hauptspeicher zuzugreifen (streaming). Ein Prefetch ist
erreichbar, indem als Zielregister 0xf im jeweiligen Befehl codiert wird. Mögliche
Ausnahmen werden dabei ignoriert. Codierung:
15
12
11
8
7
0
lspfixi
1 0
0 0
1
g 2
s
b
imm
lspfixr
1 0
0 0
0
g 2
s
b
i
+
st
imm
lspfixr. asi
1 0
0 0
0
g 2
s
b
0
+
st
1
asi
0 0
lspfixa
1 0
1 0
r
g 2
s
p
i
+
st
imm
lspfixa. asi
1 0
1 0
r
g 2
s
p
0
+
st
1
asi
0 0
asi:
Address-Space-Identifier : Index des zu verwendende ASI -Registers. Lade- und Spei-
cherebefehle, die in Kombination mit einer Adressraumkennung verwendet werden,
sind nur im Supervisor- oder PAL-Modus zugreifbar. Ein Zugriff im Benutzermodus
löst eine Privilege-Violation-Exception aus.
b:
Base : Der Zugriff erfolgt relativ zu einem Arbeits- ( c = 0) oder Basisregister ( c = 1).
Im Feld s1 des nachfolgenden Befehls ist codiert, ob der Befehlszähler ( s1 = 0xe)
oder der Stapelzeiger lrm.sp ( s1 = 0xf) als Basisregister Verwendung finden soll.
g 2 :
Group : Bit 2 des Gruppencodes. Die unteren beiden Bits sind implizit gleich 00.
i:
Immediate : Als Index wird ein Registerinhalt ( i = 0) oder ein unmittelbarer Wert
( i = 1) benutzt. Falls ein cpfix -Befehl verwendet wird, muss zur Vermeidung eines
Illegal-Operand-Exception i = 0 gesetzt sein.
imm:
Immediate-Value : Führende Bits eines unmittelbaren Indexes. Die unteren Bits sind
in s2_imm des nachfolgenden Befehls codiert. Falls ein unmittelbarer Index nicht
verwendet wird ( i = 0), muss imm = 0 sein.
p:
Premodification : Prä- ( p = 1) bzw. Postmodifikation ( p = 0).
r:
Round-Robin : Nutzung ( r = 1) oder nicht Nutzung ( r = 0) der Moduloadressierung.
s:
Scale : Index mit Eins ( s = 0) oder entsprechend des Zugriffstyps skalieren ( s = 1).
st:
Streaming : Zugegriffenes Datum wird in den Cache eingetragen ( st = 0) oder nicht
eingetragen ( st = 1).
+:
Basisadresse und Index addieren (+ = 1) bzw. subtrahieren (+ = 0).
Präfixbefehle für Coprozessorlade- und -speicherebefehle
Die Präfixbefehle lspfixcr , lspfixca sind reserviert für Speicherzugriffe von optional
vorhandenen Coprozessoren. Mit Ausnahme der Coprozessorkennung co (01 2 bis
11 2 ) sind die definierten Felder bedeutungsgleich mit denen der Präfixbefehle
lspfixr und lspfixa . Die exakte Funktionalität des Befehls ist vom verwendeten
Coprozessor abhängig. Codierung:
15
12
11
4
3
2
1
0
lspfixcr
1 0
0 0
0
x
s
b
0
+
st
0
x
co
lspfixcr.asi
1 0
0 0
0
x
s
b
0
+
st
1
asi
co
lspfixca
1 0
1 0
r
x
s
p
0
+
st
0
x
co
lspfixca.asi
1 0
1 0
r
x
s
p
0
+
st
1
asi
co
Search WWH ::




Custom Search