Mac core, Ds4830a user’s guide, Internal registers – Maxim Integrated DS4830A Optical Microcontroller User Manual

Page 150

Advertising
background image

DS4830A User’s Guide

150


The specified hardware multiplier operation begins when the final operand(s) is loaded and will complete in a single
cycle. The read-only MC1R, MC0R result registers can be accessed in the very next cycle unless
accumulation/subtraction with MC2:0 is requested (MCW = 0 and MMAC = 1), in which case, one cycle is required
so that stable data can be read. When MCW = 0, the MC2:0 registers always require one wait cycle before the
operation result is accessible. The single wait cycle needed for updating the MC2:0 registers with a calculated result
does not prevent initiating another calculation. Back-to-back operations can be triggered (independent of data type
and operand count) without the need of wait state between the loadings of operands.

Table 18-1 Hardware Multiplier

Operations

MCW:MSUB:MMAC

OPERATION

MC2

MC1

MC0

MC1R:MC0R

OF STATUS

000

Multiply

MA*MB

MA*MB

No

001

Multiply-Accumulate

MC+(MA*MB)

32lsbits of (MC+2*(MA*MB))

Yes

010

Multiply-Negate (SUS = 0 only)

-(MA*MB)

-(MA*MB)

No

011

Multiply-Subtract

MC-(MA*MB)

32lsbits of (MC-2*(MA*MB))

Yes

100

Multiply

MC2

MC1

MC0

MA*MB

No

101

Multiply-Accumulate

MC2

MC1

MC0

32lsbits of (MC+(MA*MB))

No

110

Multiply-Negate (SUS = 0 only)

MC2

MC1

MC0

-(MA*MB)

No

111

Multiply-Subtract

MC2

MC1

MC0

32lsbits of (MC-(MA*MB))

No

The DS4830A has two sets of internal MAC registers to allow interruptible MAC operation. The MACRSEL bit in the
MACSEL register selects one of the MAC registers.

Internal Registers

MCNT0

MA0

MB0

MC0_0

MC2_0

MC1_0

MC0R_0

MC1R_0

MUX

MAC

CORE

MACRSEL

MCNT1

MA1

MB1

MC0_1

MC2_1

MC1_1

MC0R_1

MC1R_1

MCNT

MA

MB

MC0

MC2

MC1

MC0R

MC1R

MAC SFRs

Figure 18-2: Dual MAC Registers Organization

Advertising