3 accumulator registers (acc0-3), 3 accumulator registers (acc0–3) -6, Move.l, macsr – Motorola ColdFire MCF5281 User Manual

Page 84: 3 accumulator registers (acc0–3)

Advertising
background image

Enhanced Multiply-Accumulate Unit (EMAC)

3-6

Freescale Semiconductor

The and operator enables the MASK use and causes bit 5 of the extension word to be set. The exact
algorithm for the use of MASK is:

if extension word, bit [5] = 1, the MASK bit, then

if <ea> = (An)

oa = An and {0xFFFF, MASK}

if <ea> = (An)+

oa = An

An = (An + 4) and {0xFFFF, MASK}

if <ea> =-(An)

oa = (An - 4) and {0xFFFF, MASK}

An = (An - 4) and {0xFFFF, MASK}

if <ea> = (d16,An)

oa = (An + se_d16) and {0xFFFF0x, MASK}

Here, oa is the calculated operand address and se_d16 is a sign-extended 16-bit displacement. For
auto-addressing modes of post-increment and pre-decrement, the updated An value calculation is also
shown.

Use of the post-increment addressing mode, {(An)+} with the MASK is suggested for circular queue
implementations.

Figure 3-3. Mask Register (MASK)

3.2.3

Accumulator Registers (ACC0–3)

The accumulator registers store 32-bits of the MAC operation result. The accumulator extension registers
form the entire 48-bit result.

BDM: 0x805 (MASK)

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 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

MASK

W

Reset 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

Table 3-4. MASK Field Descriptions

Field

Description

31–16

Reserved, must be set.

15–0

MASK

Performs a simple AND with the operand address for MAC instructions.

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

Advertising
This manual is related to the following products: