GR740-UM-DS, Nov 2017, Version 1.7
392
www.cobham.com/gaisler
GR740
33.4
Instruction trace buffer
The instruction trace buffer consists of a circular buffer that stores executed instructions. The instruc-
tion trace buffer is located in the processor, and read out via the DSU. The trace buffer is 128 bits
wide, the information stored is indicated in the table below:
During tracing, one instruction is stored per line in the trace buffer with the exception of for example
atomic load/store instructions, which are entered twice (one for the load and one for the store opera-
tion). Bits [63:32] in the buffer correspond to the store address and the loaded data for load instruc-
tions. Bit 126 is set for the second entry.
When the processor enters debug mode, tracing is suspended. The trace buffer and the trace buffer
control register can be read and written while the processor is in the debug mode. During the instruc-
tion tracing (processor in normal mode), the trace buffer cannot be written and trace buffer control
register 0 can not be written. The traced instructions can optionally be filtered on instruction types.
spdel
SPLIT delay
Active during the time a master waits to be granted access to the bus
after reception of a SPLIT response. The core will only keep track of
one master at a time. This means that when a SPLIT response is
detected, the core will save the master index. This event will then be
active until the same master is re-allowed into bus arbitration and is
granted access to the bus. This also means that the delay measured
will include the time for re-arbitration, delays from other ongoing
transfers and delays resulting from other masters being granted
access to the bus before the SPLIT:ed master is granted again after
receiving SPLIT complete.
If another master receives a SPLIT response while this event is
active, the SPLIT delay for the second master will not be measured.
locked
Locked access
Active while the HMASTLOCK signal is asserted on the AHB slave
inputs.
Table 521.
Instruction trace buffer data allocation
Bits
Name
Definition
126
Multi-cycle instruction
Set to ‘1’ on the second instance of a multi-cycle instruction
125:96
Time tag
The value of the DSU time tag counter
95:64
Result or Store address/data
Instruction result, Store address or Store data
63:34
Program counter
Program counter (2 lsb bits removed since they are always zero)
33
Instruction trap
Set to ‘1’ if traced instruction trapped
32
Processor error mode
Set to ‘1’ if the traced instruction caused processor error mode
31:0
Opcode
Instruction opcode
Table 520.
AHB events
Event
Description
Note