
MOTOROLA
Chapter 7. Instruction Timing
7-21
Execution Unit Timings
a multiple-cycle integer instruction is executed, no other integer instructions can also begin
to execute. See Table 7-4 for integer instruction execution timing.
7.4.3
Floating-Point Unit Execution Timing
The FPU on the G2 core executes all floating-point computational instructions. The LSU
performs integer floating-point loads and stores. Execution of most floating-point
instructions is pipelined within the FPU, allowing up to three instructions to be executing
in the FPU concurrently. While most floating-point instructions execute with three- or
four-cycle latency, and one- or two-cycle throughput, three instructions (
fdivs
,
fdiv
, and
fres
) execute with latencies of 18 to 33 cycles. The
fdivs
,
fdiv
,
fres
,
mtfsb0
,
mtfsb1
,
mtfsfi
,
mffs
, and
mtfsf
instructions block the floating-point unit pipeline until they
complete execution, and thereby inhibit the dispatch of additional floating-point
instructions. With the exception of the
mcrfs
instruction, all floating-point instructions will
immediately forward their CR results to the BPU for fast branch resolution without waiting
for the instruction to be retired by the completion unit, and the CR updated. See Table 7-5
for floating-point instruction execution timing.
7.4.4
Load/Store Unit Execution Timing
The LSU executes all floating-point and integer loads and stores. It also executes other
instructions that address memory. The execution of most load and store instructions is
pipelined. The LSU has two pipeline stages; the first is for effective address calculation and
MMU translation, and the second is for accessing the physically addressed memory. Load
and store instructions have a two-cycle latency and one-cycle throughput.
If operands are misaligned, additional latency may be required either for an alignment
exception to be taken or for additional bus accesses. Load instructions that miss in the cache
prevent subsequent cache accesses during the cache line refill. See Table 7-6 for load and
store instruction execution timing.
7.4.5
System Register Unit Execution Timing
Most SRU instructions access or modify nonrenamed registers, or directly access renamed
registers. They generally execute in a serial manner. Results from these instructions are not
available or forwarded for use by subsequent instructions until the instruction completes
and is retired. The SRU can also execute the integer instructions
addi
,
addis
,
add
,
addo
,
cmpi
,
cmp
,
cmpli
, and
cmpl
without serialization and in parallel with another integer
instruction. Refer to Section 7.3.3.2, “Instruction Serialization,” for additional information
on serializing instructions and Table 7-2, Table 7-3, and Table 7-4 for SRU instruction
execution timing.
F
Freescale Semiconductor, Inc.
For More Information On This Product,
Go to: www.freescale.com
n
.