| ARM Technical Support Knowledge Articles | |
Applies to: ARM1020/22E, ARM1026EJ-S, ARM1136, ARM720T, ARM7EJ-S, ARM7TDMI, ARM7TDMI-S, ARM920/922T, ARM926EJ-S, ARM940T, ARM946E-S, ARM966E-S, ARM9TDMI
The way to initialize the banked registers for the different modes is to enter the specific mode and then to do the initialization. At boot-up, these registers are indeterminate and thus should be initialized to some known value before they are used. In particular, the stack pointers for each mode (r13) should be initialized before use. Note that when using older versions of DSM models to describe the behavior of the ARM core, the registers are initialized with the value 0xDEADDEAD.
Example code can be found in the ROM subdirectory of the examples provided with the ARM Developer Suite.
See also:
Article last edited on: 2008-09-09 15:47:36
Did you find this article helpful? Yes No
How can we improve this article?