4-26
SC140 DSP Core Reference Manual
Emulation and Debug (EOnCE)
Table 4-8 describes the ESR fields.
Table 4-8. ESR Description
Name
Description
CORES
Bits 31-30
Core Status
— Provides core status information. Indicates whether the core has
entered debug mode and the reason. These bits are also reflected in the JTAG
instruction shift register, which allows for the polling of core status information at
the JTAG level. This is useful in case the core software executes a STOP
instruction so there are no clocks for reading the core status. The settings for these
bits are as follows:
00 = Core is executing instructions.
01 = Core is in wait or stop mode.
10 = Core is waiting for a bus.
11 = Core is in debug mode.
Since the core can be in a number of states simultaneously (such as waiting for
bus and debug mode), the following priorities are applied:
Core is waiting for a bus (highest priority).
Core is in wait or stop mode.
Core is in debug mode.
Core is executing instructions.
The “waiting for a bus” state indicates that the core is waiting for data on the bus to
be transferred, or that the core is in a BIST test mode.
R
Bit 29
Reserved
PCKILL
Bit 28
PC Killed
—
Set by the EOnCE when the last execution set has been aborted.
The bit is reset when the next execution set is executed. This bit is useful in
single-step mode.
RCV
Bit 27
Receive
— Set by the EOnCE when the host has finished writing to the ERCV
register. The bit is cleared by EOnCE when both halves of the ERCV register
contents are read by the core. The two halves are read in a specific order with the
LSB read first. The RCV bit is cleared when the MSB has been read without
checking if the LSB part has been read.
TRSMT
Bit 26
Transmit
— Set by the EOnCE when both halves of the ETSMT register are
written by the core. The two halves are written in a specific order with the LSB
written first. The TRSMT bit is set when the MSB has been written without
checking if the LSB part has been written. The bit is cleared by EOnCE when the
host has finished reading the content of the ETRSMT register.
TBFULL
Bit 25
Trace Buffer Full
— Indicates that the trace buffer of EOnCE is full. In order not to
lose addresses when TBFDM and IME bits in the EMCR register are set (when TB
is full), the bit causes a debug exception. The TBFULL bit is set when the TB write
pointer equals TB-size minus 15, where TB-size is defined for each SOC
derivative. TB-size is the size of the off-core trace buffer memory and is defined by
the value of 16 core external signals. The TBFULL bit is reset when the trace
buffer is enabled. For more information, see
Section 4.3.7.5.2, “Reading the Trace
Buffer (TB_BUFF).”
NOCHOF
Bit 24
No Change-of-Flow (CHOF) in Debug Mode
—
If this read-only status bit is set
by EOnCE upon entering debug mode, users cannot inject a change-of-flow
instruction through the EOnCE to the core. This occurs when the core is in the
middle of a delay slot. Single-step operations can be used in order to exit this
state. When debug mode is entered in the middle of a loop, the loop counter (LC)
should be reset and some single-step operations should be executed before
injecting a JMP instruction.