We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Hi Champs,
I intend to migrate from Cortex M4 to Cortex R5F. As I understand both the CPUs seem very similar in a lot of aspects MPU, instruction set and yet is very different from the other. I am using ARM-CLANG as a compiler so I am not worried about the instruction set.
I would like to know which are the major points where I would have to change my software like interrupt handling, startup (maybe ?), systick handling.. Can I get an overview with this information ?
Best Regards,Aakash
You might find this resource useful - Cortex-R Programmer's Guide.
The exception model on the R profile is very different to M profile. So expect to need to make changes to all the things you mentioned.
You mean, the major difference is between how the NVIC and VIC works ? How does SW handing has to change for the same ?
Migrating from Cortex-M4 to Cortex-R5F would require you to make some changes to your software. Here's an overview of some of the major points:
Interrupt Handling: Cortex-R5F has a different interrupt controller compared to Cortex-M4. You would need to update your code to handle interrupts in a different way.
Startup: Cortex-R5F has a different memory map compared to Cortex-M4. Therefore, you would need to update your startup code to correctly initialize the new memory map.
Systick Handling: Cortex-R5F has a different Systick timer compared to Cortex-M4. You would need to update your code to handle the new Systick timer.
Cache and Memory Protection: Cortex-R5F has an MPU (Memory Protection Unit) and cache memory which are not present in Cortex-M4. You would need to modify your code to take advantage of these features.
Floating-Point Unit: Cortex-R5F has a dedicated floating-point unit (FPU), while Cortex-M4 has a separate FPU or none at all. If your code uses floating-point operations, you would need to modify it to take advantage of the Cortex-R5F FPU.
These are some of the major differences that you would need to consider when migrating from Cortex-M4 to Cortex-R5F.