Nov 04, 2019
07:15 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Nov 04, 2019
07:15 AM
Hi again,
do you know where to map a trap vector table used by a Tricore ?
Thanks!
Bernie
#8042000 13136
do you know where to map a trap vector table used by a Tricore ?
Thanks!
Bernie
#8042000 13136
- Tags:
- IFX
1 Reply
Nov 04, 2019
08:21 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Nov 04, 2019
08:21 AM
Hi Bernie,
The trap vector table consists of a table of 8 successive vectors. Each vector contains 32 bytes.
Address of the table vector table used by the core shall be set in its register BTV.
When a trap is triggered, to select the Trap Vector to execute, a OR operation is performed between address configured in BTV and the Trap class to trigger left-shifted by 5 bits:
Example: when a trap with class 3 is triggered, then the address of the trap vector to execute is: (BTV + (3 << 5) ).
-> This means the address of vector table shall be aligned according: the 5 lsb of its address shall be '0'.
Per default, after a reset, address configured in BTV register of the core is 0xA0000100.
This means that in all applications where an reaction is wanted before BTV is set, there shall be a vector table mapped at this default address to manage any trap which could be triggered before configuring BTV register.
For instance, this could be the address used for vector table of the bootloader application.
Best regards
Mr. AURIX™
The trap vector table consists of a table of 8 successive vectors. Each vector contains 32 bytes.
Address of the table vector table used by the core shall be set in its register BTV.
When a trap is triggered, to select the Trap Vector to execute, a OR operation is performed between address configured in BTV and the Trap class to trigger left-shifted by 5 bits:
Example: when a trap with class 3 is triggered, then the address of the trap vector to execute is: (BTV + (3 << 5) ).
-> This means the address of vector table shall be aligned according: the 5 lsb of its address shall be '0'.
Per default, after a reset, address configured in BTV register of the core is 0xA0000100.
This means that in all applications where an reaction is wanted before BTV is set, there shall be a vector table mapped at this default address to manage any trap which could be triggered before configuring BTV register.
For instance, this could be the address used for vector table of the bootloader application.
Best regards
Mr. AURIX™