ARM ARM DUI 0137A Video Gaming Accessories User Manual


 
Debugging with RMHost
314 Copyright © 2000 ARM Limited. All rights reserved.. All rights reserved. ARM DUI 0137A
3.3.1 Configuring AXD to enable tracing with RMHost
The process of connecting to a target system using both RMHost and TDT is similar to
connecting to a target system using only RMHost. The only difference is that you must
enable tracing when you configure your JTAG controller to be used with
RealMonitor.dll
, as described in step 6 of Procedure for connecting to RMHost using
AXD on page 22. For details on enabling tracing, see the appendix on setting up the
trace software in the Trace Debug Tools User Guide.
3.3.2 Performance of RMHost with TDT
When using TDT with Multi-ICE only, and not RMHost, TDT cannot read the target
memory without halting the processor. However, it must be able to view the instructions
that were executed by the processor to decode the trace data. It therefore implements an
image cache in the host, and fetches the instructions from this cache, rather than from
the target.
Note
If your image is already loaded onto the target, you can select Load Debug Symbols
from the File menu to place the image into the image cache (even while your application
is currently running).
Caution
If you are using self-modifying code, you must disable the image cache in the debugger
because when the image cache is in use, the debugger cannot detect any modifications
the code makes to itself. To disable the image cache in AXD:
1. Select Debugger Internals from the System Views menu.
2. Change the value of the variable
image_cache_enable
from
0x01
to
0x00
.
With RMHost, it is possible to read memory without halting the target, and TDT can
decode the trace data by reading memory on the target. Therefore, a trace stream can be
displayed without having to use the image cache.
However, because the link between the host and the target is limited by the JTAG
connection, and the performance of the debug communications channel when using
RMHost, decoding trace in this way is slow compared to using the image cache.