![Freescale Semiconductor MCF52230 ColdFire Скачать руководство пользователя страница 86](http://html1.mh-extra.com/html/freescale-semiconductor/mcf52230-coldfire/mcf52230-coldfire_reference-manual_2330648086.webp)
Enhanced Multiply-Accumulate Unit (EMAC)
MCF52235 ColdFire® Integrated Microcontroller Reference Manual, Rev. 6
Freescale Semiconductor
4-13
4.3.3
EMAC Instruction Execution Times
The instruction execution times for the EMAC can be found in
Section 3.3.5.6, “EMAC Instruction
.
The EMAC execution pipeline overlaps the AGEX stage of the OEP (the first stage of the EMAC pipeline
is the last stage of the basic OEP). EMAC units are designed for sustained, fully-pipelined operation on
accumulator load, copy, and multiply-accumulate instructions. However, instructions that store contents
of the multiply-accumulate programming model can generate OEP stalls that expose the EMAC execution
pipeline depth:
mac.w
Ry, Rx, Acc0
move.l
Acc0, Rz
The MOVE.L instruction that stores the accumulator to an integer register (Rz) stalls until the
program-visible copy of the accumulator is available.
shows EMAC timing.
Figure 4-9. EMAC-Specific OEP Sequence Stall
, the OEP stalls the store-accumulator instruction for three cycles: the EMAC pipleline depth
minus 1. The minus 1 factor is needed because the OEP and EMAC pipelines overlap by a cycle, the
AGEX stage. As the store-accumulator instruction reaches the AGEX stage where the operation is
performed, the recently updated accumulator 0 value is available.
Load Accumulator
Extensions 23
move.l {Ry,#imm},ACCext23
Loads the accumulator 2,3 extension bytes with a 32-bit
operand
Store Accumulator
Extensions 01
move.l ACCext01,Rx
Writes the contents of accumulator 0,1 extension bytes into a
CPU register
Store Accumulator
Extensions 23
move.l ACCext23,Rx
Writes the contents of accumulator 2,3 extension bytes into a
CPU register
Table 4-8. EMAC Instruction Summary (continued)
Command
Mnemonic
Description
DSOC
AGEX
mac
mac
EMAC EX1
EMAC EX2
EMAC EX3
EMAC EX4
mac
mac
mac
move
move
move
move
Three-cycle
regBusy stall
Accumulator 0
old
new
mac
Because
of
an
order
from
the
United
States
International
Trade
Commission,
BGA-packaged
product
lines
and
part
numbers
indicated
here
currently
are
not
available
from
Freescale
for
import
or
sale
in
the
United
States
prior
to
September
2010:MCF52234CVM60,
MCF52235CVM60