Method and apparatus for implementing loop compression in a program counter trace

   
   

A system is disclosed in which an on-chip logic analyzer (OCLA) includes a loop detector logic which receives incoming program counter (PC) data and detects when software loops exist. When a software loop is detected, the loop detector may be configured to store the first loop in memory, while all subsequent iterations are not stored, thus saving space in memory which would otherwise be consumed. The loop detector comprises a content addressable memory (CAM) which is enabled by a user programmed signal. The CAM may be configured with a programmable mask to determine which bits of the incoming PC data to compare with the CAM entries. The depth of the CAM also is programmable, to permit the CAM to be adjusted to cover the number of instructions in a loop.

Ein System wird freigegeben, in dem ein Aufspan Logikanalysator (OCLA) eine Schleife Detektorlogik einschließt, die ankommende Daten des Programmkostenzählers (PC) empfängt und ermittelt, wann Programmendlosschleifen bestehen. Wenn eine Programmendlosschleife ermittelt wird, kann der Schleife Detektor zusammengebaut werden, um die erste Schleife im Speicher zu speichern, während alle folgenden Wiederholungen nicht gespeichert werden, so Einsparungraum im Gedächtnis, das anders verbraucht würde. Der Schleife Detektor enthält einen Assoziativspeicher (NOCKEN) der durch ein Benutzer programmiertes Signal ermöglicht wird. Der NOCKEN kann mit einer programmierbaren Schablone zusammengebaut werden, um festzustellen, welche Spitzen der ankommenden PC Daten, zum mit den NOCKEN-Eintragungen zu vergleichen. Die Tiefe des NOCKENS ist auch programmierbar, den NOCKEN zu ermöglichen justiert zu werden, um die Zahl Anweisungen in einer Schleife zu umfassen.

 
Web www.patentalert.com

<

< Circuit and method for hardware-assisted software flushing of data and instruction caches

> Cache test sequence for single-ported row repair CAM

> Pseudo random address generator for 0.75M cache

~ 00101