Skip to main content
BVu
Associate III
January 7, 2021
Question

Dual core STM32H745, runtime contexts assignment.

  • January 7, 2021
  • 3 replies
  • 2573 views

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

This topic has been closed for replies.

3 replies

TDK
January 8, 2021

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
BVuAuthor
Associate III
January 8, 2021

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.

TDK
January 8, 2021
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""."