ARM Cortex-M3 Technical Reference Manual page 292

Hide thumbs Also See for Cortex-M3:
Table of Contents

Advertisement

Debug Port
12.4.2
Read and write errors
12.4.3
Overrun detection
12-42
find the cause of the sticky flag condition. Because the flags are sticky, it is not
necessary to check the flags after every transaction. The debugger only has to check the
Control/Status Register periodically. This reduces the overhead of error checking.
A read or write error might occur within the DP, or come from the system being
debugged as the result of a (AHB-AP) access in response to an AP request. In either
case, when the error is detected the Sticky Error flag, STICKYERR, in the
Control/Status Register is set to b1.
A read/write error is also generated if the debugger makes an AP transaction request
while the debug power domain is powered down.
Debug Ports support an overrun detection mode. This mode enables an emulator on a
high latency, high throughput connection to be sent blocks of commands. These should
be sent with sufficient in-line delays to make overrun errors unlikely. However, if an
overrun error occurs, the DP detects and flags the overrun errors, by setting a flag in the
Control/Status Register. In overrun detection mode the debugger must check for overrun
errors after each sequence of APACC transactions, by checking the Sticky Overrun flag
in the Control/Status Register. It is not necessary for the emulator to react immediately
to the overun condition.
Overrun detection mode is enabled by setting the Overrun Detect bit, ORUNDETECT,
in the DP Control/Status Register. When this bit is set, the only allowed response to any
transaction is:
OK/FAULT on the JTAG-DP
OK on the SW-DP.
In overrun detection mode, any other response, at any point, is treated as an error and
causes the Sticky Overrun flag STICKYORUN in the DP Control/Status Register to be
set to b1. The Sticky Error flag, STICKYERR, is not set.
The debugger must clear STICKYORUN to enable transactions to resume.
See The Control/Status Register, CTRL/STAT on page 12-53 for more information.
The behavior of the Debug Port when the Sticky Overrun flag is set is Debug Port
defined.
If a new transaction is attempted, and results in an overrun error, before an earlier
transaction has completed, the first transaction still completes normally. Other sticky
flags might be set on completion of the first transaction.
Copyright © 2005, 2006 ARM Limited. All rights reserved.
ARM DDI 0337B

Advertisement

Table of Contents
loading

Table of Contents