An apparatus for performing imprecise bus tracing in a distributed memory
symmetric multiprocessor system is disclosed. The apparatus includes a
bus trace macro (BTM) module that can control the snoop traffic seen by
one or more of the memory controllers in the data processing system and
utilize a local memory attached to the memory controller for storing
trace records. After the BTM module is enabled for tracing operations,
the BTM module snoops transactions on the interconnect and packs
information contained within these transactions into a block of data of a
size that matches the write buffers within the memory controller. In
addition, the BTM module also includes a dropped record counter for
counting the number of address transactions that were not converted to
trace records because all the write buffers were completely full. After
an occurence of the write buffers full condition, a time stamp trace
record is inserted before a new trace record can be written. The time
stamp trace record includes a count of the number of address transactions
that were not converted to trace records.