A debug request can take place through the EmbeddedICE macrocell
or by asserting the EDBGRQ signal. The request
is synchronized and passed to the processor. Debug request takes
priority over any pending interrupt. Following synchronization,
the core enters debug state when the instruction at the Execute
stage of the pipeline has completely finished executing (when Memory
and Write stages of the pipeline have completed). While waiting
for the instruction to finish executing, no more instructions are
issued to the Execute stage of the pipeline.