![Xilinx Virtex-II Pro PPC405 Скачать руководство пользователя страница 248](http://html1.mh-extra.com/html/xilinx/virtex-ii-pro-ppc405/virtex-ii-pro-ppc405_user-manual_3410279248.webp)
556
March 2002 Release
1-800-255-7778
Virtex-II Pro™ Platform FPGA Documentation
R
Imprecise Debug Event
Imprecise (IDE) debug events are the result of any debug event occurring
when debug interrupts are disabled (MSR[DE]
=
0). Internal-debug mode can
be enabled or disabled. When this happens, the imprecise-debug-exception bit
in the debug-status register (DBSR[IDE]) is set to
1. This bit is set in
addition to
all other debug-status bits associated with the actual event.
If DBSR[IDE]
=
1 and debug interrupts are enabled, a debug interrupt
immediately occurs. The SRR2 register is loaded with the effective address of
the instruction following the one that enabled debug interrupts. For example,
assume internal-debug mode and debug interrupts are both disabled. If
MSR[DE] is enabled first, followed by an enable of DBCR0[IDM], SRR2 is
loaded with the instruction address following the one that enabled
DBCR0[IDM].
To prevent repeated interrupts from occurring, the interrupt handler must
clear DBSR[IDE] before returning. After the event is recorded by a debugger,
debug-status bits should be cleared to prevent ambiguity when recording
future debug events.
The following debug events can result in an imprecise debug event when
MSR[DE]
=
0:
•
Instruction complete (IC), if DBCR0[IDM]
=
0. If internal-debug mode is
enabled, IC events cannot cause imprecise debug events when
MSR[DE]
=
0.
•
Branch taken (BT), if DBCR0[IDM]
=
0. If internal-debug mode is enabled,
BT events cannot cause imprecise debug events when MSR[DE]
=
0.
•
Exception taken (EDE).
•
Trap instruction (TDE).
•
Unconditional (UDE).
•
Instruction address-compare (IAC). However, if IAC range toggling is
enabled and internal-debug mode is enabled, IAC events cannot cause
imprecise debug events when MSR[DE]
=
0.
•
Data address-compare (DAC).
•
Data value-compare (DVC).
This feature is useful for indicating that one or more debug events occurred
during execution of a critical-interrupt handler (debug interrupts are disabled
by critical interrupts). Upon returning from the interrupt handler, debug
interrupts are re-enabled and the processor immediately transfers control to
the debug-interrupt handler.
Freezing the Timers
The PPC405 timers can be frozen (stopped) when a debug event occurs. This is
done by setting the freeze timers bit (FT) in DBCR0 to 1. If DBCR0[FT]
=
1 when
any debug event occurs, the time base stops incrementing and the
programmable-interval timer stops decrementing. Freezing the timers also
prevents the occurance of the PIT, FIT, and WDT timer events. The timers are
not frozen when a debug event occurs and DBCR0[FT]
=
0.
After the timers are frozen, they are not unfrozen until the record of all debug
events is cleared from the debug-status register. All bits in the DBSR
except for
the most-recent reset (MRR) must be cleared to 0 to restart the timers. The
timers are unfrozen when the processor recognizes the cleared state of the
DBSR.
Содержание Virtex-II Pro PPC405
Страница 1: ...R Volume 2 a PPC405 User Manual Virtex II Pro Platform FPGA Developer s Kit March 2002 Release...
Страница 14: ...322 www xilinx com March 2002 Release 1 800 255 7778 Virtex II Pro Platform FPGA Documentation Preface R...
Страница 252: ...560 www xilinx com March 2002 Release 1 800 255 7778 Virtex II Pro Platform FPGA Documentation R...
Страница 260: ...568 www xilinx com March 2002 Release 1 800 255 7778 Virtex II Pro Platform FPGA Documentation R...
Страница 562: ...870 www xilinx com March 2002 Release 1 800 255 7778 Virtex II Pro Platform FPGA Documentation R...