Intel® IXP400 Software

Access-Layer Components: Performance Profiling (IxPerfProfAcc) API

17.10.2Internal Bus PMU

The Internal Bus PMU utility enables performance monitoring of components accessing or utilizing the north and south bus, provides statistics of the north and south bus and SDRAM, and allows the user to read the value of the Previous Master Slave Register.

The user may monitor their code/program in two ways:

From the CLI, call the appropriate Internal Bus PMU utility

In the user’s code itself, insert the appropriate Internal Bus PMU utility’s start and stop functions.

To run this utility:

1. Begin the measurements, call the start function with parameters:

ixPerfProfAccBusPmuStart( IxPerfProfAccBusPmuMode mode, IxPerfProfAccBusPmuEventCounters1 pecEvent1, IxPerfProfAccBusPmuEventCounters2 pecEvent2, IxPerfProfAccBusPmuEventCounters3 pecEvent3, IxPerfProfAccBusPmuEventCounters4 pecEvent4, IxPerfProfAccBusPmuEventCounters5 pecEvent5, IxPerfProfAccBusPmuEventCounters6 pecEvent6, IxPerfProfAccBusPmuEventCounters7 pecEvent7)

This function initializes all the counters and assigns the events associated with the counters. Selecting HALT mode will generate error. User should use ixPerfProfAccBusPmuStop() to HALT.

2.To end the measurements, call the stop function, to stop all the counters: ixPerfProfAccBusPmuStop()

3.If at any time before, during, or after the counting process, the user wishes to view the value of the counters, the user may call the following function, with parameter:

ixPerfProfAccBusPmuResultsGet (IxPerfProfAccBusPmuResults *busPmuResults)

It is the user’s responsibility to allocate the memory for the pointer before calling this function. The user may then read/print the values stored in this pointer to obtain the results of the measurements.

IxPerfProfAccBusPmuResults has two arrays:

— For the lower 27-bit of counter values —

UINT32 statsToGetLower27Bit [IX_PERFPROF_ACC_BUS_PMU_MAX_PECS]

For upper 32 Bit of counter values. The user should be aware that in the lower 27-bit counter, it only stores values up to 27 bits before causing an overflow —

UINT32 statsToGetUpper32Bit [IX_PERFPROF_ACC_BUS_PMU_MAX_PECS]

Programmer’s Guide

IXP400 Software Version 2.0

April 2005

 

Document Number: 252539, Revision: 007

261

Page 261
Image 261
Intel IXP400 manual Internal Bus PMU