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

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Non-invasive Debug Authentication<br />

C7.1 About non-invasive debug authentication<br />

Non-invasive debug can be enabled or disabled though the external debug interface. In addition, if a<br />

processor implements the Security Extensions, non-invasive debug operations can be permitted or not<br />

permitted.<br />

The difference between enabled <strong>and</strong> permitted is that the permitted non-invasive debug operations depend<br />

on both the security state <strong>and</strong> the operating mode of the processor. The alternatives for when non-invasive<br />

debug is permitted are:<br />

in all processor modes, in both Secure <strong>and</strong> Non-secure security states<br />

only in Non-secure state<br />

in Non-secure state <strong>and</strong> in Secure User mode.<br />

Whether non-invasive debug operations are permitted in Secure User mode depends on the value of the<br />

SDER.SUNIDEN bit, see c1, Secure Debug Enable Register (SDER) on page B3-108.<br />

In v6.1 Debug <strong>and</strong> v7 Debug, non-invasive debug authentication can be controlled dynamically, meaning<br />

that whether non-invasive debug is permitted can change while the processor is running, or while the<br />

processor is in Debug state. However, for more information, see Generation of debug events on page C3-40.<br />

In v6 Debug, non-invasive debug authentication can be changed only while the processor is in reset.<br />

In the recommended external debug interface, the signals that control the enabling <strong>and</strong> permitting of<br />

non-invasive debug are DBGEN, SPIDEN, NIDEN <strong>and</strong> SPNIDEN, see Authentication signals on<br />

page AppxA-3.<br />

Part C of this manual assumes that the recommended external debug interface is implemented.<br />

SPIDEN <strong>and</strong> SPNIDEN are only implemented on processors that implement Security Extensions. NIDEN<br />

is an optional signal in v6 Debug <strong>and</strong> v6.1 Debug.<br />

Note<br />

DBGEN <strong>and</strong> SPIDEN also control invasive debug, see About invasive debug authentication on<br />

page C2-2.<br />

In v6 Debug <strong>and</strong> v6.1 Debug, NIDEN might be implemented on some non-invasive debug<br />

components <strong>and</strong> not on others. For example, the performance monitoring unit for a processor might<br />

implement NIDEN when the trace macrocell for the same processor does not.<br />

For more information about use of the authentication signals see Changing the authentication signals<br />

on page AppxA-4.<br />

For more information about <strong>ARM</strong>v6 non-invasive debug see <strong>ARM</strong>v6 non-invasive debug<br />

authentication on page C7-8.<br />

If both DBGEN <strong>and</strong> NIDEN are LOW, no non-invasive debug is permitted.<br />

Non-invasive debug authentication in v7 Debug is described in the section v7 Debug non-invasive debug<br />

authentication on page C7-4.<br />

C7-2 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!