Texas Instruments TMS320C67X/C67X+ DSP User Manual

Page 307

Advertising
background image

Store Word to Memory With a 15-Bit Unsigned Constant Offset

STW

3-247

Instruction Set

SPRU733

Store Word to Memory With a 15-Bit Unsigned Constant Offset

STW

Syntax

STW (.unit) src, *+B14/B15[ucst15]

.unit = .D2

Compatibility

C62x, C64x, C67x, and C67x+ CPU

Opcode

31

29

28

27

23

22

8

7

6

4

3

2

1

0

creg

z

src

ucst15

y 1 1 1 1 1 s p

3

1

5

15

1

1

1

Description

Stores a word to memory from a general-purpose register (src). The memory
address is formed from a base address register B14 (y = 0) or B15 (y = 1) and
an offset, which is a 15-bit unsigned constant (ucst15). The assembler selects
this format only when the constant is larger than five bits in magnitude. This
instruction executes only on the .D2 unit.

The offset, ucst15, is scaled by a left-shift of 2 bits. After scaling, ucst15 is
added to baseR. The result of the calculation is the address that is sent to
memory. The addressing arithmetic is always performed in linear mode.

For STW, the entire 32-bits of the src register are stored. src can be in either
register file. The s bit determines which file src is read from: s = 0 indicates src
is in the A register file and s = 1 indicates src is in the B register file.

Square brackets, [ ], indicate that the ucst15 offset is left-shifted by 2. Paren-
theses, ( ), can be used to set a nonscaled, constant offset. For example,
STW (.unit) src, *+B14/B15(60) represents an offset of 12 bytes; whereas,
STW (.unit) src, *+B14/B15[60] represents an offset of 60 words, or 240 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

Note:
This instruction executes only on the B side (.D2).

Advertising