ARM Technical Support Knowledge Articles

Do I need any RAM on my target to connect with a debugger? What is a 'Code Sequence'?

Applies to: DSTREAM, RealView ICE and Trace (RVI / RVT)

Answer

In every system there should be some RAM, since it is needed to store variables and the stack and heap. However, in some systems only Flash or ROM is mapped in memory at power-up and RAM needs to be enabled by software in the boot code.

With certain targets (generally ARM7, ARM9, ARM11-based devices), in order to perform certain operations such as reading co-processor registers, performing cache maintenance operations, DSTREAM and RealView ICE (RVI) need to download a piece of code into memory and make the core execute it. This code must be located in a writable area of memory (RAM) and is used only by the debug hardware (i.e. DSTREAM / RVI).

When configuring connections with DSTREAM / RVI, you can select the address and size of this code in the "Device" window of Debug Hardware Config (formerly RVConfig), under the entries "Code Sequence Address" and "Code Sequence Size".

When you connect with a debugger to one of these targets you should ensure that RAM is mapped in memory and that the "Code Sequence" address is mapped correctly. You can run a script from the command line to configure the target's memory map straight after connecting to the target.

For more information please refer to the DSTREAM / RVI Documentation, http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0498e/CEGEHBJG.html 

Article last edited on: 2011-11-04 14:20:54

Rate this article

[Bad]
|
|
[Good]
Disagree? Move your mouse over the bar and click

Did you find this article helpful? Yes No

How can we improve this article?

Link to this article
Copyright © 2011 ARM Limited. All rights reserved. External (Open), Non-Confidential