STW
Store Word to Memory With a 5-Bit Unsigned Constant Offset or Register Offset
3-246
Instruction Set
SPRU733
Increments and decrements default to 1 and offsets default to zero when no
bracketed register or constant is specified. Stores that do no modification to
the
baseR
can use the syntax *R. Square brackets, [ ], indicate that the
ucst
5
offset is left-shifted by 2. Parentheses, ( ), can be used to set a nonscaled,
constant offset. For example,
STW
(.unit)
src
, *+
baseR
(12)
represents an
offset of 12 bytes; whereas,
STW
(.unit)
src
, *+
baseR
[12]
represents an offset
of 12 words, or 48 bytes. You must type either brackets or parentheses around
the specified offset, if you use the optional offset parameter.
Word addresses must be aligned on word (two LSBs are 0) boundaries.
Execution
if (cond)
src
→
mem
else nop
Pipeline
Stage
E1
Read
baseR, offsetR, src
Written
baseR
Unit in use
.D2
Instruction Type
Store
Delay Slots
0
For more information on delay slots for a store, see Chapter 4.
See Also
STB, STH
Example
STW .D1
A1,*++A10[1]
Before
instruction
1 cycle after
instruction
3 cycles after
instruction
A1
9A32 7634h
A1
9A32 7634h
A1
9A32 7634h
A10
0000 0100h
A10
0000 0104h
A10
0000 0104h
mem 100h
1111 1134h
mem 100h
1111 1134h
mem 100h
1111 1134h
mem 104h
0000 1111h
mem 104h
0000 1111h
mem 104h
9A32 7634h
Pipeline