Infineon Technologies C166S V2 User Manual page 360

16-bit microcontroller
Table of Contents

Advertisement

CoMACMu
Group
Syntax
Source Operand(s)
Destination Operand(s)
Operation
(tmp) ← ((op1))*((op2))
(ACC) ← (ACC) + (tmp)
((IDXi(-*))) ← ((IDXi))
Description
Multiplies the two unsigned 16-bit source operands op1 and op2. The resulting
unsigned 32-bit product is first zero-extended; then, it is added to the 40-bit ACC
register contents before being stored in the 40-bit ACC register. In parallel to the
arithmetic operation and to the two parallel reads, the data pointed to by IDXi overwrites
another data located in memory (DPRAM). The address of the overwritten data
depends on the operation executed on IDXi.
MAC Flags
MV
MSL
*
*
MV
Set if an arithmetic overflow occurred, i.e. the result cannot be
represented in the 40-bit data type. Cleared otherwise.
MSL
Set if the contents of ACC is automatically saturated. Not affected
otherwise.
ME
Set if the MAE is used. Cleared otherwise.
MSV Set if an arithmetic overflow occurred. Not affected otherwise.
MC
Set if a carry is generated. Cleared otherwise.
MZ
Set if result equals zero. Cleared otherwise.
MN
Set if the most significant bit of the result is set. Cleared otherwise.
Encoding
Mnemonic
CoMACMu
[IDXi*], [Rw
User Manual
Multiply-Accumulate & Move
Multiply/Multiply-Accumulate Instructions
CoMACMu op1, op2
op1, op2 → WORD
ACC → 40-bit signed value
ME
MSV
*
*
*]
m
Detailed Instruction Description
MC
MZ
*
*
Format
93 Xm 18 rrr0:0qqq
8-360
User Manual
C166S V2
CoMACMu
MN
Sat.
*
yes
Bytes
4
V 1.7, 2001-01

Advertisement

Table of Contents
loading

Table of Contents