Sun Microelectronics
284
UltraSPARC User’s Manual
17.5 Integer Execution Unit (IEU) Instructions
IEU instructions can be dispatched only if they are in the first three instruction
slots. A maximum of two IEU instructions can be executed in one cycle. There are
two IEU pipelines: IEU
0
and IEU
1
. The two data paths are slightly different, and
some IEU instructions can be dispatched only to a particular pipeline. The fol-
lowing instructions can dispatched to either IEU pipeline:
ADD
,
AND
,
ANDN
,
OR
,
ORN
,
SUB
,
XOR
,
XNOR
and
SETHI
. These instructions can be grouped together or
with older IEU
0
or IEU
1
specific instructions.
The IEU
0
data path has dedicated hardware for shift instructions:
SLL{X}
,
SRL{X}
.
SRA{X}
. Two shift instructions cannot be grouped together. Shift instructions can
be grouped with older IEU
1
specific instructions, but they cannot be grouped
with older non-specific IEU instructions. For example:
The IEU
1
datapath has dedicated hardware for the condition-code-setting instruc-
tions: (
TADDcc{TV}
,
TSUBcc{TV}
,
ADDcc
,
ANDcc
,
ANDNcc
,
ORcc
,
ORNcc
,
SUBcc
,
XORcc
,
XNORcc
),
EDGE
and
ARRAY
.
CALL
,
JMPL
,
BPr
,
PST
and
FC-
MP{LE,NE,GT,EQ}{16,32}
also require the IEU
1
data path (besides counting as CTI,
store, or floating-point instructions respectively), since they must access the inte-
ger register file. Two instructions requiring the use of IEU
1
cannot be grouped to-
gether; for example, only one instruction that sets the condition codes can be
dispatched per cycle. An IEU
1
instruction can be grouped with older shift in-
structions and non-specific IEU instructions.
Note:
For UltraSPARC-II, a valid control transfer instruction (CTI) that was
fetched from the end of a cache line is not dispatched until its delay slot also has
been fetched.
17.5.1 Multi-Cycle IEU Instructions
Some integer instructions execute for several cycles and sometimes prevent the
dispatch of subsequent instructions until they complete.
MULScc
inserts one bubble after it is dispatched.
SDIV{cc}
inserts 36 bubbles,
UDIV{cc}
inserts 37 bubbles, and
{U,S}DIVX
inserts 68
bubbles after they are dispatched.
ADD
i1, i2, i6
G
E
C
N
1
N
2
N
3
W
SLL
i6, 2, i8
G
E
C
N
1
N
2
N
3
W
Artisan Technology Group - Quality Instrumentation ... Guaranteed | (888) 88-SOURCE | www.artisantg.com