05.02.2013 Views

ARM Architecture Reference Manual ARMv7-A and ARMv7-R edition

ARM Architecture Reference Manual ARMv7-A and ARMv7-R edition

ARM Architecture Reference Manual ARMv7-A and ARMv7-R edition

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Recommended External Debug Interface<br />

EDBGRQ<br />

DBGTRIGGER<br />

DBGACK<br />

DBGCPUDONE<br />

1 2 a<br />

Normal state<br />

See the text about the ordering of transition a.<br />

Debug state entry<br />

3 4<br />

Debug state<br />

Figure A-2 Signalling for Debug state entry on an External Debug Request<br />

In Figure A-2 these events must occur in order:<br />

1 The peripheral asserts EBDGRQ <strong>and</strong> waits for it to be acknowledged.<br />

2 The processor takes the debug event <strong>and</strong> starts the Debug state entry sequence. The<br />

processor asserts DBGTRIGGER.<br />

3 The processor completes the Debug state entry sequence <strong>and</strong> asserts DBGACK.<br />

4 The processor completes all Non-debug state memory accesses <strong>and</strong> asserts<br />

DBGCPUDONE. It might do this only after intervention by an external debugger, see<br />

Asynchronous aborts <strong>and</strong> entry to Debug state on page C5-5.<br />

Event a, the peripheral deasserting EDBGRQ, can occur at any time after the assertion of EDBGRQ is<br />

acknowledged. In the example shown in Figure A-2, the system is using DBGTRIGGER to acknowledge<br />

EDBGRQ, <strong>and</strong> therefore event a is not ordered relative to events 3 <strong>and</strong> 4.<br />

In addition, the processor asserts DBGCPUDONE <strong>and</strong> DBGACK when the DBGDSCR.DBGack bit is set<br />

to 1, see Debug Status <strong>and</strong> Control Register (DBGDSCR) on page C10-10.<br />

If the DBGDSCR.DBGack bit is 0, the processor deasserts DBGCPUDONE <strong>and</strong> DBGACK on exit from<br />

Debug state.<br />

Note<br />

Setting DBGDSCR.DBGack to 1 takes no account of the DBGEN <strong>and</strong> SPIDEN signals. Setting<br />

DBGDSCR.DBGack to 1 asserts DBGCPUDONE <strong>and</strong> DBGACK regardless of the security settings.<br />

A v7 Debug implementation of these recommendations might not implement DBGCPUDONE if it would<br />

have identical behavior to DBGACK.<br />

Before v7 Debug, DBGCPUDONE was not part of the recommended external debug interface.<br />

AppxA-8 Copyright © 1996-1998, 2000, 2004-2008 <strong>ARM</strong> Limited. All rights reserved. <strong>ARM</strong> DDI 0406B

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!