Relocating vector table cortex M3 question.

Hi, im using CC2538(cortex m3) if i want to port on CC2538, i have to relocate vector table. so i had searched datasheet, i founded my code have to be located at 0x0020_0000~ but, vector table address is set at reset 0x0000_0000. this is rom area. so i have to relocate vector table address. i had tried access vector table offset register(VTABLE) <- other vendor’s register name was VTOR. i just had access this register and just allocate appropriate value. ~~~~

define VTABLE ( * ( ( uint32_t * ) 0xE000ED08 ) )

VTABLE = 0x0020000F; ~~~~ i had defined VTABLE ( * ( ( uint32_t * ) 0xE000ED08 ) ) which VTABLE register’s address and allocate appropriate address value. it was working !! but… i dont know why it was worked…. what should i know to relocate vector address value. Regrads. WON HEE LEE

Relocating vector table cortex M3 question.

Are you sure you have to relocate the table? Lots of Cortex-M will mirror the vector table region in memory to address 0 even when there is no physical memory at 0.

Relocating vector table cortex M3 question.

yes ! i had checked datasheet and i had tested it. if i didn’t relocate vector table’s addres, it didn’t work. but attached below code ~~~~

define VTABLE ( * ( ( uint32_t * ) 0xE000ED08 ) )

VTABLE = 0x0020000F; ~~~~ it had worked. and then i had realized that i have to relocate vector table. but… i dont know why it was working yet…