EasyManua.ls Logo

Infineon TriCore TC1.6P - ST.Q - Store Half-Word Signed Fraction

Infineon TriCore TC1.6P
484 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
TriCore
®
TC1.6P & TC1.6E
32-bit Unified Processor Core
Instruction Set
V1.0 2013-07
User Manual (Volume 2) 3-359
ST.Q
Store Half-word Signed Fraction
Description
Store the value in the most-significant half-word of data register D[a] to the memory location specified by the
addressing mode.
ST.Qoff18, D[a] (ABS)(Absolute Addressing Mode)
EA = {off18[17:14],14b'0,off18[13:0]};
M(EA, halfword) = D[a][31:16];
ST.QA[b], off10, D[a] (BO)(Base + Short Offset Addressing Mode)
EA = A[b] + sign_ext(off10);
M(EA, halfword) = D[a][31:16];
ST.Q P[b], D[a] (BO)(Bit-reverse Addressing Mode)
index = zero_ext(A[b+1][15:0]);
incr = zero_ext(A[b+1][31:16]);
EA = A[b] + index;
M(EA, halfword) = D[a][31:16];
new_index = reverse16(reverse16(index) + reverse16(incr));
A[b+1] = {incr[15:0], new_index[15:0]};
ST.Q P[b], off10, D[a] (BO)(Circular Addressing Mode)
index = zero_ext(A[b+1][15:0]);
length = zero_ext(A[b+1][31:16]);
EA = A[b] + index;
M(EA, halfword) = D[a][31:16];
new_index = index + sign_ext(off10);
new_index = new_index < 0 ? new_index + length : new_index % length;
A[b+1] = {length[15:0], new_index[15:0]};
ST.QA[b], off10, D[a] (BO)(Post-increment Addressing Mode)
31
off18[9:6]
28 27
00
H
26 25
off18[13:10]
22 21
off18[5:0]
16 15
off18[17:14]
12 11
a
8 7
65
H
0
31
off10[9:6]
28 27
28
H
22 21
off10[5:0]
16 15
b
12 11
a
8 7
89
H
0
31
-
28 27
08
H
22 21
-
16 15
b
12 11
a
8 7
A9
H
0
31
off10[9:6]
28 27
18
H
22 21
off10[5:0]
16 15
b
12 11
a
8 7
A9
H
0

Table of Contents

Related product manuals