09.12.2012 Views

Cortex-A8 Technical Reference Manual - ARM Information Center

Cortex-A8 Technical Reference Manual - ARM Information Center

Cortex-A8 Technical Reference Manual - ARM Information Center

SHOW MORE
SHOW LESS

Create successful ePaper yourself

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

14.5 Precision of TraceEnable and ViewData<br />

14.5.1 TraceEnable<br />

14.5.2 ViewData<br />

Embedded Trace Macrocell<br />

The ETM Architecture Specification states that TraceEnable or ViewData is Imprecise under<br />

certain conditions. This section describes when TraceEnable and ViewData are Precise.<br />

TraceEnable is Precise if all of the following are true:<br />

• The TraceEnable enabling event is Precise.<br />

• The single address comparators selected by the start/stop resource are Precise, or<br />

TraceEnable is not configured to use the start/stop resource.<br />

• TraceEnable is configured to include regions, the selected single address comparators<br />

and address range comparators are Precise.<br />

• TraceEnable is configured to exclude regions, the selected single address comparators<br />

and address range comparators are Precise and are configured for instruction addresses. It<br />

is not possible to exclude instruction trace based on the addresses of data transfers.<br />

The processor can execute two instructions in a cycle. The TraceEnable enabling event is<br />

calculated once per cycle. The other parts of TraceEnable are calculated once per instruction.<br />

If the processor executes two instructions in a cycle, the ETM can trace neither of them or both<br />

of them, but cannot trace only one of them. If TraceEnable indicates that one instruction can<br />

be traced, then trace is generated as if TraceEnable had indicated that both instructions on that<br />

cycle can be traced. As an example, consider the following case:<br />

• Two instructions are executed in the same cycle.<br />

• The first instruction causes a single address comparators to match with what is selected as<br />

a start address.<br />

• The second instruction causes a single address comparators to match with what is selected<br />

as a stop address.<br />

• The TraceEnable enabling event is true.<br />

• TraceEnable is configured to use the start/stop resource.<br />

• TraceEnable is configured to exclude regions.<br />

• No address comparators are selected for exclude regions.<br />

In this case, TraceEnable behaves as follows:<br />

1. The first instruction is traced because the start/stop resource was active.<br />

2. The second instruction is traced because the first instruction was traced.<br />

3. Instructions are not traced on subsequent cycles because the start/stop resource is off.<br />

ViewData is Precise if all of the following are true:<br />

• the ViewData enabling event is Precise<br />

• the single address comparators and address range comparators selected to include regions<br />

are Precise, or ViewData is configured for exclude regions only<br />

• the single address comparators and address range comparators selected to exclude regions<br />

are Precise.<br />

<strong>ARM</strong> DDI 0344K Copyright © 2006-2010 <strong>ARM</strong> Limited. All rights reserved. 14-17<br />

ID060510 Non-Confidential

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

Saved successfully!

Ooh no, something went wrong!