![Intel IXP45X Developer'S Manual Download Page 134](http://html1.mh-extra.com/html/intel/ixp45x/ixp45x_developers-manual_2073092134.webp)
Intel
®
IXP45X and Intel
®
IXP46X Product Line of Network Processors—Intel XScale
®
Processor
Intel
®
IXP45X and Intel
®
IXP46X Product Line of Network Processors
Developer’s Manual
August 2006
134
Order Number: 306262-004US
3.6.12.1.2
Trace Buffer Register (TBREG)
The trace buffer is read through TBREG, using MRC and MCR. Software should only
read the trace buffer when it is disabled. Reading the trace buffer while it is enabled,
may cause unpredictable behavior of the trace buffer. Writes to the trace buffer have
unpredictable results.
Reading the trace buffer returns the oldest byte in the trace buffer in the least
significant byte of TBREG. The byte is either a message byte or one byte of the 32 bit
address associated with an indirect branch message.
shows the format of the
trace buffer register.
3.6.13
Trace Buffer Entries
Trace buffer entries consist of either one or five bytes. Most entries are one byte
messages indicating the type of control flow change. The target address of the control
flow change represented by the message byte is either encoded in the message byte
(like for exceptions) or can be determined by looking at the instruction word (like for
direct branches). Indirect branches require five bytes per entry. One byte is the
message byte identifying it as an indirect branch. The other four bytes make up the
target address of the indirect branch. The following sections describe the trace buffer
entries in detail.
3.6.13.1
Message Byte
There are two message formats, (exception and non-exception) as shown in
.
Table 50.
TBREG Format
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10
9
8
7
6
5
4
3
2
1
0
Data
reset value: unpredictable
Bits
Access
Description
31:8
Read-as-Zero/Write-ignored
Reserved
7:0
Read / Write-unpredictable
Message Byte or Address Byte
Figure 19.
Message Byte Formats
B4345-01
0
7
V
M
C C C C
V
V
0
7
M
M
C C C C
M
M
Exception Format
Non-exception Format
M = Message Type Bit
VVV = exception vector[4:2]
CCCC = Incremental Word Count
MMMM = Message Type Bits
CCCC = Incremental Word Count