11-2
MPC7400 RISC Microprocessor Users Manual
Overview
¥
Counts
dst
x
instruction eventsdispatches, misses, refreshes, suspensions,
premature cancellations, and resumptions
Counts cycles in which the VALU had a valid
mfvscr
dispatch but could not execute
it because it is not at the bottom of the completion queue (CQ)
¥
11.1 Overview
The performance monitor uses the following resources deTned by the PowerPC
architecture:
¥
The performance monitor mark bit in the MSR (MSR[PMM]). This bit identiTes
programs to be monitored.
Special-purpose registers (SPRs):
The performance monitor counter registers (PMC1DPMC4) are 32-bit counters
used to record the number of times a software-selectable event has occurred.
UPMC1DUPMC4 provide user-level read access to these registers.
The monitor mode control registers (MMCR0DMMCR2). Control Telds in the
MMCR
x
registers select events to be counted, determine whether performance
monitor exceptions are caused by a time base register transition, counter
overow, or assertion of SMI, and specify the conditions under which counting
is enabled. UMMCR0DUMMCR2 provide user-level read access to these
registers.
The sampled instruction address register (SIAR) contains the effective address
of the last instruction that completes before the performance monitor exception
is signaled. USIAR provides user-level read access to the SIAR.
Note that the MPC7400 does not implement the sampled data address register
(SDAR) or the user-level, read-only USDAR register deTned by the architecture.
However, for compatibility with processors that do, those registers can be written
to by boot code without causing an exception.
The performance monitor interrupt exception follows the normal PowerPC
exception model and has a deTned exception vector offset (0x00F00). Its priority is
below the external interrupt and above the decrementer interrupt.
¥
¥
11.2 Performance Monitor Interrupt
The performance monitor provides the ability to generate a performance monitor interrupt
triggered by an enabled condition or event. This exception is triggered by an enabled
condition or event deTned as follows:
¥
A PMC
x
register overow condition occurs
MMCR0[PMC1CE] and PMC1[0] are both set
MMCR0[PMCjCE] and PMCj[0] are both set (j > 1)