This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

How to relocate the Cortex-M3 Vector Table

Hello,
I am Davide Masi and I work on Fujitsu based on ARM Cortex M3.

How do I relocate the interrupt vector table from address 0x0000 to a different address, for examples in RAM?
Where can I find examples or AN about the problem?

Thanks

Parents
  • Cortex-M unlike ARM7 has a register called VTOR; the Vector Table Offset Register.

    When the interrupt controller on a Cortex-M device is 'triggered' it will start at this location for interrupt handler addresses.

    This is not possible on ARM7 although some hardware manufacturers have provided additional features to give some of this functionality on ARM7 devices.

    Often, on Cortex-M devices the bootloader is designed and compiled/linked to run from 0x0 and when it jumps to the main application (compiled andlinked to run at another location) it first sets the VTOR before jumping to the main application.

Reply
  • Cortex-M unlike ARM7 has a register called VTOR; the Vector Table Offset Register.

    When the interrupt controller on a Cortex-M device is 'triggered' it will start at this location for interrupt handler addresses.

    This is not possible on ARM7 although some hardware manufacturers have provided additional features to give some of this functionality on ARM7 devices.

    Often, on Cortex-M devices the bootloader is designed and compiled/linked to run from 0x0 and when it jumps to the main application (compiled andlinked to run at another location) it first sets the VTOR before jumping to the main application.

Children
No data