![](http://datasheet.mmic.net.cn/230000/79RC32438-200BB_datasheet_15568909/79RC32438-200BB_478.png)
IDT EJTAG System
EJTAG Processor Core Extensions
79RC32438 User Reference Manual
20 - 12
November 4, 2002
Notes
The SYNC instruction must be executed before leaving Debug Mode in order to commit all accesses to
dseg, such as accesses to set up hardware breakpoints. It may be necessary to remove hazards in relation
to the SYNC instruction. Other requirements of the SYNC instruction is described in the MIPS32 and
MIPS64 specifications.
CP0 and dseg Hazards
Because resources controlled via Coprocessor 0 and EJTAG memory and registers in dseg affect the
operation of various pipeline stages of the processor, manipulation of these resources may produce results
that are not detectable by subsequent instructions for some number of execution cycles. When no hard-
ware interlock exists between one instruction that causes an effect that is visible to a second instruction, a
CP0 or dseg hazard exists.
Implementations can place the entire burden on the debug software to pad the instruction stream in
such a way that the second instruction is spaced far enough from the first that the effects of the first are
seen by the second. Otherwise, the implementations can add full hardware interlocks such that the debug
software need not pad. The trade-off is between debug software changes for each new processor vs. more
complex hardware interlocks required in the processor. The EJTAG Architecture does not dictate the solu-
tion that is required for a compatible implementation. The choice of implementation ranges from full hard-
ware interlocks to full dependence on debug software padding, to some combination of the two. For an
implementation choice that relies on debug software padding, see Table 20.11 which lists the “typical”
spacing required to allow the consumer to eliminate the hazard. The “required” values shown in this table
represent spacing that is required to be used by debug software. An implementation which requires less
spacing to clear the hazard (including one which has full hardware interlocking) should operate correctly
with the debug software that uses this hazard table. An implementation which requires more spacing to
clear the hazard incurs the burden of validating debug software against the new hazard requirements.
Behavior
References
Commit accesses to dseg
See section “Debug Mode Address
Space” on page 20-7.
Update the DDBLImpr and DDBSImpr bits in the
Debug register
See section “Debug Data Break
Load/Store Imprecise Exception”
on page 20-17 and section “Debug
Register (CP0 Register 23, Select
0)” on page 20-25.
Update the BS bits in the IBS and DBS registers
in drseg
See section “Debug Exception by
Data Breakpoint” on page 20-40.
Update the IBusEP, DBusEP, CacheEP, and
MCheckP bits in the Debug register
See section “Exceptions on Impre-
cise Errors” on page 20-20 and
section “Debug Register (CP0
Register 23, Select 0)” on page 20-
25.
Table 20.10 SYNC Instruction References