24
January, 2004
Developer’s Manual
Intel XScale® Core
Developer’s Manual
Programming Model
2.3.1.1
Multiply With Internal Accumulate Format
A new multiply format has been created to define operations on 40-bit accumulators.
Table 2-1,
“Multiply with Internal Accumulate Format” on page 2-24
shows the layout of the new format.
The opcode for this format lies within the coprocessor register transfer instruction type. These
instructions have their own syntax.
Two new fields were created for this format, acc and opcode_3. The acc field specifies 1 of 8
internal accumulators to operate on and opcode_3 defines the operation for this format. The Intel
XScale
®
core defines a single 40-bit accumulator referred to as acc0; future implementations may
define multiple internal accumulators. The Intel XScale
®
core uses opcode_3 to define six
instructions, MIA, MIAPH, MIABB, MIABT, MIATB and MIATT.
Table 2-1.
Multiply with Internal Accumulate Format
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9
8
7
6
5
4
3
2
1
0
cond
1
1
1
0
0
0
1
0
opcode_3
Rs
0
0
0
0
acc
1
Rm
Bits
Description
Notes
31:28
cond
- ARM condition codes
-
19:16
opcode_3
- specifies the type of multiply with
internal accumulate
The Intel XScale
®
core defines the following:
0b0000 =
MIA
0b1000 =
MIAPH
0b1100 =
MIABB
0b1101 =
MIABT
0b1110 =
MIATB
0b1111 =
MIATT
The effect of all other encodings are
unpredictable.
15:12
Rs
- Multiplier
7:5
acc
- select 1 of 8 accumulators
The Intel XScale
®
core only implements acc0;
access to any other acc has an unpredictable
effect.
3:0
Rm
- Multiplicand
-