Information Technology Reference
In-Depth Information
wendete Arbeitsregister wird anschließend entsprechend der Summe oder Differenz
aus Basis und skaliertem Index modifiziert. Ein Zugriff bezieht sich i.Allg. auf den
vom Betriebsmodus abhängigen Adressraum. Durch Angabe eines ASI-Registers
sind jedoch auch andere Adressräume ansprechbar.
Data Memory
31
0
s1
Data
Basis
Index
sign
imm prefix
imm instr
1, Size
Data Memory
31
0
s1
Data
Basis
s2
Index
1, Size
Prämodifizierende Moduloadressierung (pre calulated round robin)
Mit Hilfe der prämodifizierenden Moduloadressierung lässt sich ein Ringpuffer
(Fifo) verwalten. Die Basisadresse ergibt sich durch Und-Verknüpfung des Indexes
mit einer negierten unmittelbaren oder in einem Register befindlichen Maske (des-
sen untere n Bits alle gesetzt und dessen obere 32 - n Bits alle gelöscht sein müs-
sen). Die Endadresse berechnet sich durch Addition der Basisadresse und der
Maske. Vor einem Zugriff wird der Index jeweils um 1 oder entsprechend des
Zugriffstyps inkrementiert bzw. dekrementiert und die erzeugte Adresse ggf. auf den
Anfang oder das Ende des Ringpuffers gesetzt. Die berechnete Adresse überschreibt
mit dem Zugriff den Inhalt des Indexregisters. Ein Zugriff bezieht sich auf einen
vom Betriebsmodus abhängigen Adressraum. Andere Adressräume lassen sich
durch Angabe eines ASI-Registers ansprechen.
1, Size
Data Memory
31
0
s1
&
|
Data
Index
Mask
sign
imm prefix
imm instr
~
&
1, Size
Data Memory
31
0
s1
&
|
Data
Index
Mask
s2
~
&
Postmodifizierende Moduloadressierung (post calulated round robin)
Die postmodifizierende Moduloadressierung ist das Gegenstück zur prämodifizie-
renden Moduloadressierung. Der Zugriff auf den Datenspeicher erfolgt indirekt zum
Inhalt des Indexregisters. Anschließend wird der Index um 1 oder entsprechend des
Zugriffstyps inkrementiert bzw. dekrementiert. Im Falle eines Überlaufs wird die
erzeugte Adresse auf den Anfang oder das Ende des Ringpuffers gesetzt. Ein Zugriff
Search WWH ::




Custom Search