8.1 EJTAG on-chip debug unit
Programming the MIPS32® 74K™ Core Family, Revision 02.14
112
Psz
: (read-only) when software reads or writes "dmseg" this tells the probe whether it was a word, byte or whatever-size
transfer:
Doze/Halt
: (read-only) indicates CPU not fully awake.
Doze
reflects any reduced-power mode, whereas
Halt
is set only
if the CPU is asleep after a
wait
or similar.
PerRst
: write to set the
EJ_PerRst
output signal from the core, which can be used to reset non-core logic (ask your
SoC designer whether it’s connected to anything).
For this and all other fields which change core state, we recommend that the probe should write the field and then poll
for the change to be reflected in this register, which may take a short while. In some cases the bit is just an output one,
when the readback will be pointless (but harmless).
PRnW/PrAcc
:
PrAcc
is 1 when the CPU is doing a read/write of the "dmseg" region, and the probe should service it. The
"slow" read/write protocol involves the probe flipping this bit back to zero to tell the CPU the transfer is ready.
While
PrAcc
is active the read-only
PRnW
bit distinguishes writes (1) from reads (0).
PrRst
: controls the
EJ_PrRst
signal from the core, which may be wired back to reset the CPU and related logic. Write
a 1 to reset. If it works, the probe will eventually see the bit fall back to 0 by itself, as the CPU resets. Most probes are
wired up with a direct CPU reset signal, which is more reliable.
ProbEn, ProbTrap, EjtagBrk
:
ProbEn
must be set before CPU accesses to "dmseg" will be sent to the probe. It can be
written by the probe directly.
ProbTrap
relocates the debug exception entry point from 0xBFC0.0480
26
(when 0) to
the “dmseg” location 0xFF20.0200 - required when the debug exception handler itself is supplied by the probe.
EjtagBrk
can be written 1 to "interrupt" the CPU into debug mode.
The three come together into a trick to support systems wanting to boot from EJTAG. The value of all these three bits
is preset by the “EJTAGBOOT” JTAG instruction. When the CPU resets with all of these set to 1, then the CPU will
immediately enter debug mode and start reading instructions from the probe.
DM
: (read-only) indicates the CPU is in debug mode, a probe-readable version of
Debug[DM]
.
8.1.10 Fast Debug Channel
The Fast Debug Channel (or FDC) is an interesting creature. It provides a mechanism for data transfers between the
probe and the core, but unlike some of the other mechanisms of that type, it is not constrained to debug mode access.
Kernel mode software can access the memory mapped interface and can even grant access rights to user or supervisor
programs. The memory mapped registers provide basic configuration, status, and control information as well as giv-
Byte-within-word
Size code
Transfer Size
address
EJTAG_ADDRESS[1-0]
EJTAG_CONTROL[Psz]
X
0
Byte
00
1
Halfword
10
00
2
Word
00
3
Tri-byte (lowest address 3 bytes)
01
Tri-byte (highest address 3 bytes)
26. The ROM-exception-area debug entry point can be relocated by hardware option, see
Содержание MIPS32 74K Series
Страница 1: ...Document Number MD00541 Revision 02 14 March 30 2011 Programming the MIPS32 74K Core Family...
Страница 10: ...Programming the MIPS32 74K Core Family Revision 02 14 10...
Страница 20: ...1 4 A brief guide to the 74K core implementation Programming the MIPS32 74K Core Family Revision 02 14 20...
Страница 28: ...2 2 PRId register identifying your CPU type Programming the MIPS32 74K Core Family Revision 02 14 28...
Страница 54: ...3 8 The TLB and translation Programming the MIPS32 74K Core Family Revision 02 14 54...
Страница 83: ......
Страница 86: ...6 5 FPU pipeline and instruction timing Programming the MIPS32 74K Core Family Revision 02 14 86...
Страница 101: ...The MIPS32 DSP ASE 101 Programming the MIPS32 74K Core Family Revision 02 14...
Страница 134: ...8 4 Performance counters Programming the MIPS32 74K Core Family Revision 02 14 134...
Страница 154: ...C 3 FPU changes in Release 2 of the MIPS32 Architecture Programming the MIPS32 74K Core Family Revision 02 14 154...