SIMPLIFIED EVENT SELECTION FOR A PERFORMANCE MONITOR UNIT
First Claim
Patent Images
1. A processor suitable for use in a data processing system, comprising:
- first and second functional units for processing instructions executable by the processor, each functional unit being enabled to generate a direct event signal and an indirect event signal, wherein each event signal indicates the occurrence of a corresponding instruction processing event in the processor;
a bus shared by the first and second functional units wherein a set of first indirect event signals is connected to the shared bus when the first functional unit is a master of the shared bus and a set of second indirect event signals is connected to the shared bus when the second functional unit is a master of the shared bus;
and a performance monitor unit (PMU) including a plurality of performance monitor counters suitable for counting instruction processing events, wherein the PMU is connected to the shared bus and to the set of direct event signals such that, during any selected cycle, each direct event signal may be monitored by at least one of the counters and further wherein at least a portion of the indirect event signals associated with the functional unit that is master of the shared bus may be monitored by at least one of the counters;
wherein the performance monitor unit includes a monitor mode control register (MMCR) associated with each of the counters, wherein the MMCR provides a signal from the direct event signals and shared bus signals for monitoring, the monitoring by comparison of at least one bit of a byte of the signal to at least one mask bit and at least one match bit and based on the comparison, the signal provides a set of event signals for counting by one of the associated counters.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and a processor for counting events in a performance monitor unit (PMU) of the processor includes using a mask bit and match bit comparison for event data to determine occurrence of events and routing indications of occurrences to a counter for counting.
30 Citations
10 Claims
-
1. A processor suitable for use in a data processing system, comprising:
-
first and second functional units for processing instructions executable by the processor, each functional unit being enabled to generate a direct event signal and an indirect event signal, wherein each event signal indicates the occurrence of a corresponding instruction processing event in the processor; a bus shared by the first and second functional units wherein a set of first indirect event signals is connected to the shared bus when the first functional unit is a master of the shared bus and a set of second indirect event signals is connected to the shared bus when the second functional unit is a master of the shared bus; and a performance monitor unit (PMU) including a plurality of performance monitor counters suitable for counting instruction processing events, wherein the PMU is connected to the shared bus and to the set of direct event signals such that, during any selected cycle, each direct event signal may be monitored by at least one of the counters and further wherein at least a portion of the indirect event signals associated with the functional unit that is master of the shared bus may be monitored by at least one of the counters; wherein the performance monitor unit includes a monitor mode control register (MMCR) associated with each of the counters, wherein the MMCR provides a signal from the direct event signals and shared bus signals for monitoring, the monitoring by comparison of at least one bit of a byte of the signal to at least one mask bit and at least one match bit and based on the comparison, the signal provides a set of event signals for counting by one of the associated counters. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method for counting events in a performance monitor unit (PMU) of a processor, comprising:
-
selecting a processor comprising first and second functional units for processing instructions executable by the processor, each functional Unit being enabled to generate a direct event signal and an indirect event signal, wherein each event signal indicates the occurrence of a corresponding instruction processing event in the processor;
a bus shared by the first and second functional units wherein a set of first indirect event signals is connected to the shared bus when the first functional unit is a master of the shared bus and a set of second indirect event signals is connected to the shared bus when the second functional unit is a master of the shared bus; and
a performance monitor unit (PMU) including a plurality of performance monitor counters suitable for counting instruction processing events, wherein the PMU is connected to the shared bus and to the set of direct event signals such that, during any selected cycle, each direct event signal may be monitored by at least one of the counters and further wherein at least a portion of the indirect event signals associated with the functional unit that is master of the shared bus may be monitored by at least one of the counters;
wherein the performance monitor unit includes a monitor mode control register (MMCR) associated with each of the counters;providing a signal from the direct event signals and shared bus signals for monitoring; comparing at least one bit within a byte of at least one of the direct event signals and shared bus signals to at least one mask bit and at least one match bit and based on the state of the comparison, providing a set of event signals; counting elements of the set of event signals using an associated counter. - View Dependent Claims (7, 8, 9)
-
-
10. A computer program product for counting events in a performance monitor unit (PMU) of a processor that comprises first and second functional units for processing instructions executable by the processor, each functional unit being enabled to generate a direct event signal and an indirect event signal, wherein each event signal indicates the occurrence of a corresponding instruction processing event in the processor;
- a bus shared by the first and second functional units wherein a set of first indirect event signals is connected to the shared bus when the first functional unit is a master of the shared bus and a set of second indirect event signals is connected to the shared bus when the second functional unit is a master of the shared bus; and
a performance monitor unit (PMU) including a plurality of performance monitor counters suitable for counting instruction processing events, wherein the PMU is connected to the shared bus and to the set of direct event signals such that, during any selected cycle, each direct event signal may be monitored by at least one of the counters and further wherein at least a portion of the indirect event signals associated with the functional unit that is master of the shared bus may be monitored by at least one of the counters;
wherein the performance monitor unit includes a monitor mode control register (MMCR) associated with each of the counters;
the product comprising instructions for;providing a signal from the direct event signals and shared bus signals for monitoring; comparing at least one bit within a byte of at least one of the direct event signals and shared bus signals to at least one mask bit by performing an AND function with the at least one bit and the at least one mask bit; and
providing a result and performing a XOR function with the result and the at least one match bit; and
determining an element for a set of event signals; andcounting elements of the set of event signals using an associated counter.
- a bus shared by the first and second functional units wherein a set of first indirect event signals is connected to the shared bus when the first functional unit is a master of the shared bus and a set of second indirect event signals is connected to the shared bus when the second functional unit is a master of the shared bus; and
Specification