
TM1300 Data Book
Philips Semiconductors
A-166
PRODUCT SPECIFICATION
8-bit store with displacement
pseudo-op for h_st8d
SYNTAX
[ IF r
guard ] st8d(d) rsrc1 rsrc2
FUNCTION
if r
guard then
mem[r
src1 + d]
← rsrc2<7:0>
ATTRIBUTES
Function unit
dmem
Operation code
29
Number of operands
2
Modier
7 bits
Modier range
–64..63
Latency
n/a
Issue slots
4, 5
DESCRIPTION
The st8d operation is a pseudo operation transformed by the scheduler into an h_st8d with the same arguments.
(Note: pseudo operations cannot be used in assembly les.)
The st8d operation stores the least-signicant 8-bit byte of r
src2 into the memory location pointed to by the address
formed from the sum r
src1 + d. The value of the opcode modier d must be in the range -64 and 63 inclusive. This
operation does not depend on the bytesex bit in the PCSW since only a single byte is stored.
The result of an access by st8d to the MMIO address aperture is undened; access to the MMIO aperture is
dened only for 32-bit loads and stores.
The st8d operation optionally takes a guard, specied in r
guard. If a guard is present, its LSB controls the
modication of the addressed memory location (and the modication of cache if the location is cacheable). If the LSB
of r
guard is 1, the store takes effect. If the LSB of rguard is 0, st8d has no side effects whatever; in particular, the LRU
and other status bits in the data cache are not affected.
EXAMPLES
Initial Values
Operation
Result
r10 = 0xd00, r80 = 0x44332211
st8d(3) r10 r80
[0xd03]
← 0x11
r50 = 0, r20 = 0xd01,
r70 = 0xaabbccdd
IF r50 st8d(-4) r20 r70
no change, since guard is false
r60 = 1, r30 = 0xd02,
r70 = 0xaabbccdd
IF r60 st8d(-4) r30 r70
[0xcfe]
← 0xdd
SEE ALSO
h_st8d st8 st16 st16d st32
st32d
st8d