PowerPC e500 Core Family Reference Manual, Rev. 1
2-52 Freescale Semiconductor
Register Model
2.14.2 Accumulator (ACC)
The 64-bit architectural accumulator register holds the results of the multiply accumulate (MAC)
forms of SPE integer instructions. The accumulator allows back-to-back execution of dependent
MAC instructions, something that is found in the inner loops of DSP code such as finite impulse
response (FIR) filters. The accumulator is partially visible to the programmer in that its results do
not have to be explicitly read to use them. Instead, they are always copied into a 64-bit destination
GPR specified as part of the instruction. The accumulator, however, has to be explicitly cleared
when starting a new MAC loop. Based upon the type of instruction, an accumulator can hold either
a single 64-bit value or a vector of two 32-bit elements.
The Initialize Accumulator instruction (evmra) is provided to initialize the accumulator.
2.15 Performance Monitor Registers (PMRs)
The Freescale Book E implementation standards defines a set of register resources used
exclusively by the performance monitor. PMRs are similar to the SPRs defined in the Book E
architecture and are accessed by mtpmr and mfpmr, which are also defined by the EIS.
Table 2-36 lists supervisor-level PMRs. User-level software that attempts to read or write
supervisor-level PMRs causes a privilege exception.
Table 2-36. Performance Monitor Registers—Supervisor Level
Abbreviation Register Name PMR Number pmr[0–4] pmr[5–9] Section/Page
PMGC0 Performance monitor global control register 0 400 01100 10000 2.15.1/2-53
PMLCa0 Performance monitor local control a0 144 00100 10000 2.15.3/2-55
PMLCa1 Performance monitor local control a1 145 00100 10001
PMLCa2 Performance monitor local control a2 146 00100 10010
PMLCa3 Performance monitor local control a3 147 00100 10011
PMLCb0 Performance monitor local control b0 272 01000 10000 2.15.5/2-56
PMLCb1 Performance monitor local control b1 273 01000 10001
PMLCb2 Performance monitor local control b2 274 01000 10010
PMLCb3 Performance monitor local control b3 275 01000 10011
PMC0 Performance monitor counter 0 16 00000 10000 2.15.7/2-57
PMC1 Performance monitor counter 1 17 00000 10001
PMC2 Performance monitor counter 2 18 00000 10010
PMC3 Performance monitor counter 3 19 00000 10011