6 eonce register addressing, Trace buffer register set -30, Own in table 4-11 – Freescale Semiconductor StarCore SC140 User Manual
Page 140

4-30
SC140 DSP Core Reference Manual
EOnCE Register Addressing
Table 4-11. Trace Buffer Register Set
The functionality of the trace unit registers is described in
Section 4.11, “Trace Unit Registers.”
4.6 EOnCE Register Addressing
The various units described above use a large number of registers. The EOnCE registers can be read or
written when the core is running, or when the core is in debug state.
All the EOnCE registers accessible from the core (either for read or write operations) are memory mapped.
This means that each register has its own address in the memory space. The memory address of an EOnCE
register is defined by adding four times the register address offset from Table 4-12 on page 4-31 to the
EOnCE register base address defined for each SoC derivative. For example, the memory address for the
LSB part of register ERCV is $8 + rba_via, where rba_via is the derivative dependent register base
address.
Most EOnCE memory-mapped registers allow only 32-bit accesses except the status, monitor, and control
registers (ESR, EMCR, EE_CTRL, EDCA[0-5]_CTRL, EDCD_CTRL, ECNT_CTRL, ESEL_CTRL, and
TB_CTRL). The latter support 16-bit accesses, which enable the use of bit-mask operations. There is only
one access per execution set for all EOnCE registers. When a 16-bit access is used on the 32-bit long ESR
and EMCR registers, the software address offset to the MSB part of the registers is equal to the software
address offset of the LSB part + 2.
Registers longer than 32 bits are accessed as two registers.
As described in
Section 4.2.6, “Reading/Writing EOnCE Registers Through JTAG,”
each EOnCE unit has
a shift register supporting the EOnCE registers of this unit. In some cases, the “shift width” of the EOnCE
register is longer than its actual width.
Register Name
Description
TB_CTRL
Trace buffer control register
TB_RD
Trace buffer read pointer register
TB_WR
Trace buffer write pointer register
TB_BUFF
Trace buffer virtual register