Operació de multiplicació-acumulació
En informàtica, especialment en el processament de senyals digitals, l'operació de multiplicació-acumulació (amb acrònim anglès MAC) o multiplicació-agregació (MAD) és un pas comú que calcula el producte de dos nombres i afegeix aquest producte a un acumulador. La unitat de maquinari que realitza l'operació es coneix com a multiplicador-acumulador (unitat MAC); l'operació en si mateixa sovint s'anomena també operació MAC o MAD. L'operació MAC modifica un acumulador a:
Quan es fa amb nombres de coma flotant, es pot realitzar amb dos arrodoniments (típic en molts DSP) o amb un únic arrodoniment. Quan es realitza amb un únic arrodoniment, s'anomena multiplicació-acumulació fusionada (FMA) o multiplicació-acumulació fusionada (FMAC).
Els ordinadors moderns poden contenir un MAC dedicat, que consisteix en un multiplicador implementat en lògica combinacional seguit d'un sumador i un registre acumulador que emmagatzema el resultat. La sortida del registre es retroalimenta a una entrada del sumador, de manera que en cada cicle de rellotge, la sortida del multiplicador s'afegeix al registre. Els multiplicadors combinacionals requereixen una gran quantitat de lògica, però poden calcular un producte molt més ràpidament que el mètode de canvi i addició típic dels ordinadors anteriors. Percy Ludgate va ser el primer a concebre un MAC a la seva Màquina analítica de 1909,[1] i el primer a explotar un MAC per a la divisió (utilitzant la multiplicació sembrada per recíproca, mitjançant la sèrie convergent (1+x)−1). Els primers processadors moderns equipats amb unitats MAC van ser els processadors de senyals digitals, però la tècnica ara també és comuna en els processadors d'ús general.[2][3][4][5]
Referències
[modifica]- ↑ «The Feasibility of Ludgate's Analytical Machine» (en anglès). Arxivat de l'original el 2019-08-07. [Consulta: 30 agost 2020].
- ↑ Lyakhov, Pavel; Valueva, Maria; Valuev, Georgii; Nagornov, Nikolai (en anglès) Applied Sciences, 10, 24, 1-2020, pàg. 9052. DOI: 10.3390/app10249052 [Consulta: free].
- ↑ Tung Thanh Hoang; Sjalander, M.; Larsson-Edefors, P. 2009 IEEE International Symposium on Parallel Distributed Processing, 5-2009, pàg. 1–7. DOI: 10.1109/IPDPS.2009.5161212.
- ↑ Kang, Jongsung; Kim, Taewhan (en anglès) Integration, 71, 01-03-2020, pàg. 76–85. DOI: 10.1016/j.vlsi.2019.11.003. ISSN: 0167-9260.
- ↑ «mad - ps» (en anglès). [Consulta: 14 agost 2021].