AMD Confidential
User Manual November 21
st
, 2008
110 Chapter 7: Device Configuration
7.22 XTR Device
XTR is a trace record and playback mechanism that is instrumental for applications that
are not dependent on the specific version of the CPU. An XTR trace contains the
interaction of the processor with the rest of the system in an XML based log file. The
XTR trace file can be played back and could be used to simulate behavior of one or more
devices within a system, which in turn may be used to analyze the CPU's performance or
to perform conformance analysis between various revs and models of the CPU. XTR may
also be used in studies where the behavior of some devices needed but the use of an
actual device or its software model is either difficult of impossible due to various
constraints.
XTR has two files, a binary file which has the memory dump of the system and an XML
based text file which contains the log of the events or messages that go in and out a non-
coherent port of the Northbridge, including the DMA signals from devices on the (host‟s)
secondary bus to the DIMM. XTR playback mechanism essentially replaces all the
devices including the Northbridge and downwards and feeds the processor with the data
present in the XTR XML file. The structure of both binary file and XML file is discussed
below.
XTR can be used both in uni-processor (XTR-UP) and multi-processor (XTR-MP)
configurations. However, currently only XTR-UP is supported while XTR-MP is under
development.
There are two modes of XTR, XTR Record and XTR Playback. The simulator supports
both modes and one mode does not necessitate the other. The simulator could be used to
record XTR traces only or playback XTR traces generated from other sources as far as
the XTR specification is followed correctly (see Section 7.22.4, “Limitations”, on page
117).
An XTR XML file contains Initialization Data, Events and Instructions. XTR
Initialization data stores the state of CPU just before XTR recording is initiated. This data
is used to initialize the CPU and memory parameters during Playback (the memory itself
is initialized from the contents of the binary file). Any register that does not have
corresponding initialization data in XTR XML file will be initialized with zero. XTR
events fall into two categories:
Dormant Events, which record an event occurrence but do not trigger an event
during playback.
Active events that are recorded in XTR file and are actively triggered during
playback.
IOR, IOW, MEMR, MEMW, RDMSR are examples of dormant events and INTR, APIC,
DMAW, EOT are examples of Active events. XTR Instructions are commands that are
injected in the XTR trace to give special instructions during XTR playback. FJMP (Force
Jump) is an XTR Instruction.