3 functional description, Functional description -8 – Motorola ColdFire MCF5281 User Manual

Page 86

Advertising
background image

Enhanced Multiply-Accumulate Unit (EMAC)

3-8

Freescale Semiconductor

Figure 3-6. Accumulator Extension Register (ACCext23)

3.3

Functional Description

The MAC speeds execution of ColdFire integer-multiply instructions (MULS and MULU) and provides
additional functionality for multiply-accumulate operations. By executing MULS and MULU in the MAC,
execution times are minimized and deterministic compared to the 2-bit/cycle algorithm with early
termination that the OEP normally uses if no MAC hardware is present.

The added MAC instructions to the ColdFire ISA provide for the multiplication of two numbers, followed
by the addition or subtraction of the product to or from the value in an accumulator. Optionally, the product
may be shifted left or right by 1 bit before addition or subtraction. Hardware support for saturation
arithmetic can be enabled to minimize software overhead when dealing with potential overflow conditions.
Multiply-accumulate operations support 16- or 32-bit input operands in these formats:

Signed integers

Unsigned integers

Signed, fixed-point, fractional numbers

The EMAC is optimized for single-cycle, pipelined 32

× 32 multiplications. For word- and

longword-sized integer input operands, the low-order 40 bits of the product are formed and used with the
destination accumulator. For fractional operands, the entire 64-bit product is calculated and truncated or
rounded to the most-significant 40-bit result using the round-to-nearest (even) method before it is
combined with the destination accumulator.

For all operations, the resulting 40-bit product is extended to a 48-bit value (using sign-extension for
signed integer and fractional operands, zero-fill for unsigned integer operands) before being combined
with the 48-bit destination accumulator.

BDM: 0x808 (ACCext23)

Access: User read/write

BDM read/write

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

R

ACC2U

ACC2L

ACC3U

ACC3L

W

Reset – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –

Table 3-7. ACCext23 Field Descriptions

Field

Description

31–24

ACC2U

Accumulator 2 upper extension byte

23–16

ACC2L

Accumulator 2 lower extension byte

15–8

ACC3U

Accumulator 3 upper extension byte

7–0

ACC3L

Accumulator 3 lower extension byte

MCF5282 and MCF5216 ColdFire Microcontroller User’s Manual, Rev. 3

Advertising
This manual is related to the following products: