Multiply–accumulate operation

A Multiplikationsakkumulator (MAK) or English Multiplier Accumulator (MAC) is used in the digital signal processing in specific signal processors or as an extension of conventional CPUs to use ( AltiVec SIMD ). MACs are used as arithmetic units with accumulator registers and ALUs.

It may be the MAC operation

Very quickly run through the direct implementation in hardware - in some signal processors within one clock cycle. Many CPUs available since the beginning of the 21st century, such as the present in PCs in use Intel Pentium, have MAC commands. Areas of application are in digital image processing and display of videos in real time. Other areas of application of MAC unit are in the range of digital filters and control engineering.

The arguments and the result of this operation can be integer, fixed-point or floating-point numbers, depending on the processor type and the selected data type.

In the early days of digital signal processing to about the mid-1990s MAC commands were available due to the higher hardware complexity for the multiplier only in specific signal processors. Dama Lige conventional CPUs like the 6502 or 80286 and microcontrollers for general applications realize the multiplication by software or multiplication own commands, but which need to run depending on the accuracy and data format up to several hundred clock cycles. Since the mid- 1990s MAC commands are part of virtually all processors.


In the MAC operation can improve the accuracy in the final result can be obtained in which the necessary rounding is performed only at the end of the MAC operation and the intermediate results are carried out internally at full resolution without rounding. This operation is also known as FMAC English Fused Multiply Accumulate, abbreviated, respectively. The FMAC operation conditionally, in contrast to the MAC operation and wider data paths and connected to an increased hardware effort.