Trace Trash Heap
Publication Date: 2003-Aug-20
The IP.com Prior Art Database
AbstractDisclosed is a method that uses a trace trash heap to manage the lines in a trace cache (TC) with a heap structure. Benefits are discussed in the General Description.
Trace Trash Heap
Disclosed is a method that uses a trace trash heap to manage the lines in a trace cache (TC) with a heap structure. Benefits are discussed in the General Description.
The disclosed method addresses an issue known as “trace clobbering” in traditional trace cache configurations. Traces can be arbitrarily truncated and severed anywhere along the trace as new traces are added to the trace cache. This artifact creates “orphaned” entries in the trace cache and adds to the overall complexity in managing a trace cache. This proposal addresses the issues of trace stability (i.e. trace clobbering, orphaned lines, and complexity) with the addition of a trash heap. Traces are constructed from available entries off of a Trash Heap. The Trash Heap can be thought of as an unordered heap of available empty entries in the TC. The trash heap removes the need to construct traces in a formal, i.e. sequential, manner in the TC address space.
For the disclosed method to work, the trash heap must have one-cycle access, or there needs to be a structure that pre-reads the trash heap structure to present the next usable entry to the trace build logic. The disclosed method must have a staging structure in the build logic to hold up to two trash heap entries. Each trash heap contains four pointers into the trace cache data array. Two entries are in the sequencing logic so that while one is in use the next can be called. There are four trace cache ...