Mentre realitzen diverses operacions, les CPU han de calcular les adreces de memòria necessàries per obtenir dades de la memòria; per exemple, les posicions a la memòria dels elements de la matriu s'han de calcular abans que la CPU pugui obtenir les dades de les ubicacions reals de la memòria. Aquests càlculs de generació d'adreces impliquen diferents operacions aritmètiques de nombres enters, com ara sumes, restes, operacions de mòdul o desplaçaments de bits. Sovint, el càlcul d'una adreça de memòria implica més d'una instrucció de màquina de propòsit general, que no necessàriament es descodifiquen i s'executen ràpidament. En incorporar una AGU en un disseny de CPU, juntament amb la introducció d'instruccions especialitzades que utilitzen l'AGU, es poden descarregar diversos càlculs de generació d'adreces de la resta de la CPU i sovint es poden executar ràpidament en un sol cicle de CPU.[4][5]
Les capacitats d'una AGU depenen d'una CPU particular i de la seva arquitectura. Així, alguns AGU implementen i exposen més operacions de càlcul d'adreces, mentre que alguns també inclouen instruccions especialitzades més avançades que poden operar en diversos operands alhora.[6][7] A més, algunes arquitectures de CPU inclouen múltiples AGU, de manera que es pot executar més d'una operació de càlcul d'adreces simultàniament, aportant més millores de rendiment aprofitant la naturalesa superescalar dels dissenys avançats de CPU. Per exemple, Intel incorpora múltiples AGU a les seves microarquitecturesSandy Bridge i Haswell, que augmenten l'amplada de banda del subsistema de memòria de la CPU permetent que s'executin múltiples instruccions d'accés a la memòria en paral·lel.[8][9][10]