MADDF32 MRd, MRe, MRf ||MMOV32 MRa, mem32
32-Bit Floating-Point Addition with Parallel Move
Operands
MRd
CLA floating-point destination register for the MADDF32 (MR0 to
MR3).
MRd cannot be the same register as MRa.
MRe
CLA floating-point source register for the MADDF32 (MR0 to MR3)
MRf
CLA floating-point source register for the MADDF32 (MR0 to MR3)
MRa
CLA floating-point destination register for the MMOV32 (MR0 to
MR3).
MRa cannot be the same register as MRd.
mem32
32-bit memory location accessed using one of the available
addressing modes. This is the source for the MMOV32.
Opcode
LSW: mmmm mmmm mmmm mmmm
MSW: 0001 ffee ddaa addr
Description
Perform an MADDF32 and a MMOV32 operation in parallel. Add MRf to the contents
of MRe and store the result in MRd. In parallel move the contents of the 32-bit location
mem32 to MRa.
MRd = MRe + MRf;
MRa = [mem32];
Restrictions
The destination register for the MADDF32 and the MMOV32 must be unique. That is,
MRa and MRd cannot be the same register.
Flags
This instruction modifies the following flags in the MSTF register:
Flag
TF
ZF
NF
LUF
LVF
Modified
No
Yes
Yes
Yes
Yes
The MSTF register flags are modified as follows:
• LUF = 1 if MADDF32 generates an underflow condition.
• LVF = 1 if MADDF32 generates an overflow condition.
The MMOV32 Instruction will set the NF and ZF flags as follows:
NF = MRa(31);
ZF = 0;
if(MRa(30:23) == 0) { ZF = 1; NF = 0; };
Pipeline
The MADDF32 and the MMOV32 both complete in a single cycle.
Control Law Accelerator (CLA)
SPRUH18I – JANUARY 2011 – REVISED JUNE 2022
TMS320x2806x Microcontrollers
601
Copyright © 2022 Texas Instruments Incorporated
Содержание TMS320 2806 Series
Страница 2: ......