Parallel processing 可以实现并行处理吗?

Parallel processing 可以实现并行处理吗?,parallel-processing,embedded,stm32,Parallel Processing,Embedded,Stm32,MCU真的可以进行并行处理吗 让我们假设我正在倒计时,通过另一个接口发送数据,然后再做一项工作,比如同时点亮一个LED 这可能吗?具有多个执行单元或内核的处理器可以执行并行处理。大多数微控制器没有多个执行单元 一些体系结构支持SIMD(单指令/多数据)指令,可以从一条指令生成多个结果-这是一种低级并行处理形式,类似地,带有DSP指令的DSP(数字信号处理器)和微控制器支持双MAC或多MAC(乘法/累加)也是并行处理的一种形式的单元。SIMD和MAC主要用于数字运算和信号处理应用。高端DSP通常支

MCU真的可以进行并行处理吗

让我们假设我正在倒计时,通过另一个接口发送数据,然后再做一项工作,比如同时点亮一个LED


这可能吗?

具有多个执行单元或内核的处理器可以执行并行处理。大多数微控制器没有多个执行单元

一些体系结构支持SIMD(单指令/多数据)指令,可以从一条指令生成多个结果-这是一种低级并行处理形式,类似地,带有DSP指令的DSP(数字信号处理器)和微控制器支持双MAC或多MAC(乘法/累加)也是并行处理的一种形式的单元。SIMD和MAC主要用于数字运算和信号处理应用。高端DSP通常支持其他指令级并行执行功能

另一个允许并行执行的低级体系结构特性是。这允许运行可能需要多个周期的指令,通过同时运行同一操作的不同阶段,每个周期生成一个结果

大多数微控制器可以支持多任务或多线程调度程序,通过根据所使用的调度算法调度每个任务的执行时间,给人以并发执行的印象。虽然这不是并行处理,实际上增加了开销而不是加速处理,但它在其他方面很有用,例如代码的功能分区,以及在基于实时优先级的抢占式调度器的情况下,实现对事件的实时响应。对于您在问题中给出的示例用例,这种形式的调度是完全适当和充分的。看

支持真正并行处理的微控制器体系结构包括,和。从历史上看,并行处理是微处理器中的先驱


在低水平上实现高水平并行性的一种方法是在FPGA上实现一个过程,本质上是在硬件而不是软件中实现处理,在低水平上,相同过程的单个操作可以同时发生(当一个过程不依赖于另一个过程的结果时,或者使用一个过程),但是用于编程FPGA的语言与软件语言有相似之处。

具有多个执行单元或内核的处理器可以执行并行处理。大多数微控制器没有多个执行单元

一些体系结构支持SIMD(单指令/多数据)指令,可以从一条指令生成多个结果-这是一种低级并行处理形式,类似地,带有DSP指令的DSP(数字信号处理器)和微控制器支持双MAC或多MAC(乘法/累加)也是并行处理的一种形式的单元。SIMD和MAC主要用于数字运算和信号处理应用。高端DSP通常支持其他指令级并行执行功能

另一个允许并行执行的低级体系结构特性是。这允许运行可能需要多个周期的指令,通过同时运行同一操作的不同阶段,每个周期生成一个结果

大多数微控制器可以支持多任务或多线程调度程序,通过根据所使用的调度算法调度每个任务的执行时间,给人以并发执行的印象。虽然这不是并行处理,实际上增加了开销而不是加速处理,但它在其他方面很有用,例如代码的功能分区,以及在基于实时优先级的抢占式调度器的情况下,实现对事件的实时响应。对于您在问题中给出的示例用例,这种形式的调度是完全适当和充分的。看

支持真正并行处理的微控制器体系结构包括,和。从历史上看,并行处理是微处理器中的先驱


在低水平上实现高水平并行性的一种方法是在FPGA上实现一个过程,本质上是在硬件而不是软件中实现处理,在低水平上,相同过程的单个操作可以同时发生(当一个过程不依赖于另一个过程的结果时,或者使用一个过程),但用于编程FPGA的语言与软件语言有相似之处。

一家名为Propper的公司生产一种8核MCU,可进行并行处理。他们的编程语言“Spin”有趣、面向对象、脚本化,但也有内联汇编。

一家名为Spiller的公司生产一种8核MCU,名为Proveler,可进行并行处理。他们的编程语言“Spin”很有趣,面向对象,脚本式,但也有内联汇编。

虽然这个问题可能是合理的,但您的示例用例并不是典型的或有用的并行处理示例-它们是不会从并行处理中真正受益的任务。哦,对不起,我的问题只是基于并行处理的可能性。所以,我对这个问题很感兴趣,因为知道答案会让我思考更多我可以同时做的事情。它可能没有什么用处,但正如我所说的,它只是一个例子。我接受你的观点,但这通常不是并行处理的用处——你可以用一个简单的多任务调度程序来实现(请参阅)。特别是因为它被标记为STM32,这正是您所需要的。不需要使用CPU内核,尽管您可以使用片上硬件外围引擎同时获得一些事情的组合。然而,当这些需要获取数据时,它们对内部总线的访问可能会被序列化(强制进入)