GR740-UM-DS, Nov 2017, Version 1.7
53
www.cobham.com/gaisler
GR740
6.2.8
Branch prediction
Static branch prediction can be optionally be enabled, and reduces the penalty for branches preceded
by an instruction that modifies the integer condition codes. The predictor uses a branch-always strat-
egy, and starts fetching instruction from the branch address. On a prediction hit, 1 or 2 clock cycles
are saved, and there is no extra penalty incurred for misprediction as long as the branch target can be
fetched from cache.
6.2.9
Register file data protection
The integer and FPU register files are protected against soft errors. Data errors will then be transpar-
ently corrected without impact at application level. Correction is done for the read data value. The
error remains in the register file and will be corrected on the next write to the register file position.
6.2.10 Hardware breakpoints
The integer unit can supports four hardware breakpoints. Each breakpoint consists of a pair of ancil-
lary state registers (see section 6.10.5). Any binary aligned address range can be watched for instruc-
tion or data access, and on a breakpoint hit, trap 0x0B is generated.
6.2.11 Instruction trace buffer
The instruction trace buffer consists of a circular buffer that stores executed instructions. This is
enabled and accessed only through the processor’s debug port via the Debug Support Unit. When
enabled, the following information is stored in real time, without affecting performance:
•
Instruction address and opcode
•
Instruction result
•
Load/store data and address
•
Trap information
•
30-bit time tag
The operation and control of the trace buffer is further described in section 33.4. Note that each pro-
cessor has its own trace buffer allowing simultaneous tracing of all instruction streams.
The time tag value in the trace buffer has the same time source as the up-counter described in section
6.10.4.
6.2.12 Processor configuration register
The ancillary state register 17 (%asr17) provides information on implementation-specific characteris-
tics for the processor. This can be used to enhance the performance of software. See section 6.10.5 for
layout.
6.2.13 Exceptions
LEON4 adheres to the general SPARC trap model. The table below shows the implemented traps and
their individual priority. When PSR (processor status register) bit ET=0, an exception trap causes the
processor to halt execution and enter error mode. When processor 0 enters error mode, the external
PROC_ERRORN signal will be asserted.