cancel
Showing results for 
Search instead for 
Did you mean: 

Dual core STM32H745, runtime contexts assignment.

BVu
Associate III

For peripheral configuration, CubeMX allows me to assign the same peripheral (ethernet, I2C, etc.) to both Cortex-M7 and Cortex-M4 runtime contexts. Say, for ethernet, what does it mean if i assign the peripheral to both? Since i'm allowed to select both, in which case i should do so? The "Pin Context Assigment" shows M7 or M4 depends on how i manipulate the runtime context assignment.0693W000006HuzwQAC.png

3 REPLIES 3
TDK
Guru

You should assign context to the core or cores you're using it on. It doesn't make much sense for Ethernet to be used on both cores, at least not at the same time, although you could do it. For GPIOs and maybe some others, you could reasonably control them from either core in a sane fashion so both contexts makes more sense here.

If you feel a post has answered your question, please click "Accept as Solution".
BVu
Associate III

Thanks for your answer. And you are right. Run time context means which MCU controls the component at run time. And indeed context assigment will cause the code to be generated in the context (M7/M4) code tree. But since CubeMX does let me assign any component, in this case ethernet, even LWIP itself, to both, i believe that's not the correct behavior for component(s) that shoud have mutually exclusive runtime context. But i get what you are saying.

Why worry about that? Assign it to the core you want and move on with your project.
If it were not allowed, someone would make a post with the opposite opinion.
If you feel a post has answered your question, please click "Accept as Solution".