cancel
Showing results for 
Search instead for 
Did you mean: 

STM32 MCU capabilities with parallel processing

LWebb.1
Associate

I am trying to design a modular avionics bay whereby I came across a concept called parallel processing, whereby multiple MCU's can be utilised to both increase processing capabilities, decrease power consumption of one chip, and to allow for modular design (which is a major constraint). Although I don't know whether the STM32 chips ( mainly the f4 series I have been eyeing out) are capable of achieving this, and if they do how I can actually go about communicating between multiple 'master' devices, or whether one chip should be the master whilst the other stm mcus can be slaves? Send help

2 REPLIES 2
Danish1
Lead II

Some stm32 have two arm processor cores. On those ones two execution streams (threads / tasks / programs) execute simultaneously.

But for many applications, a single arm core may be shared between multiple threads by way of a real-time operating system (or a tasking library - I often use Rowley’s Crossworks Tasking Library).

As long as the processor(s) has enough power ro do all the tasks sufficiently quickly, plus a little overhead for task-switching and inter-process communication, then any stm32 may be chosen. And the user will not see any problems.

Personally, if a single stm32 is powerful enough for the job, that’s my preferred route.

As to multiple master inter-chip communication, it depends on necessary bandwidth amongst other considerations. I2C is capable of multi-master, as is CAN and some UART

Send help? Surely a business where you'd have a team of engineers qualified to advise directly?

What volume of data needs to be communicated? Something CAN bus would suit?

Some of the Cortex-M7 would have significantly better math capabilities.

Ethernet? Some standard avionics bus?

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..