3 accumulator register (acc), Accumulator register (acc) -5, Filter can be obtained by setting – Freescale Semiconductor ColdFire MCF52210 User Manual

Page 81

Advertising
background image

Multiply-Accumulate Unit (MAC)

MCF52211 ColdFire® Integrated Microcontroller Reference Manual, Rev. 2

Freescale Semiconductor

4-5

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

if <ea> = (An)

oa = An & {0xFFFF, MASK}

if <ea> = (An)+

oa = An

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

if <ea> =-(An)

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

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

if <ea> = (d16,An)

oa = (An + se_d16) & {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 4-3. Mask Register (MASK)

4.2.3

Accumulator Register (ACC)

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

Figure 4-4. Accumulator Register (ACC)

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 4-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.

BDM: 0x806 (ACC)

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

Accumulator

W

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

Advertising
This manual is related to the following products: