融合MCU与DSP功能以实现块和流处理

描述

在控制我们的用户界面方面,微控制器(MCU)表现出色。它们可以初始化其他电路,监控输入,响应中断,并驱动显示和控制的输出。然而,尽管集成了模拟功能(如A/D转换器、D/A转换器、PWM、电压基准、运算放大器和比较器)使MCU能够在模拟领域发挥作用——这对于许多相对简单的模拟处理任务是常见的——但总体而言,微控制器在处理模拟信号方面通常表现不佳。
 

微控制器

以恒温器为例,几乎任何混合信号微控制器都可以处理。它监测温度,与设定点进行比较,然后切换开关。你可以添加编程滞后、定时操作、云连接和全球连接,但最终MCU通过抛出或释放开关来执行其任务。

 

然而,在现实世界中,大多数控制回路的运行速度远远超过室温的变化速度,并且监控的不仅仅是一个输入。在这里,速度、性能和灵活的架构等基本属性非常重要,特别是在面对块或流式处理需求时,同样重要的还有DSP功能的类型,无论是融入到微控制器的核心,还是与微控制器并行处理模拟功能。

 

处理方法

 

通过巧妙地划分功能而不是将所有繁重的任务放在单一控制块上,某些混合信号设计方面更好。两种方法是捕获原始数据并在数字世界中进行所有处理,以及在信号到达A/D之前进行一些基本处理。如果处理资源充足,那么最简单的方法是以原始形式提取所有内容,然后从那里开始。

 

大多数线性信号需要通过一些外部组件来匹配信号范围和A/D转换器的范围。这样可以最大化数据的动态范围,提供最高分辨率。微弱的信号需要放大,而强力的信号需要衰减。如果我们能在模拟世界中对信号进行一些简单处理,然后再进入A/D转换器,我们可以根据处理器运行的算法减少所需的处理能力。

 

硬件基础信号处理

 

一个简单的例子就是,仅通过添加一个电容器,就能将衰减器变成低通滤波器。这一点说明,基于硬件的信号处理的平衡方法成本非常低,占用空间很小,并且可以简化后续的设计。

 

虽然数字领域中仍可能需要进行过滤,但通过巧妙地划分功能,您可能能够减少所需的处理量,从而降低成本,节约能源,并减少代码开发。

 

DSP级别

 

在数字形式中,高通、低通、带通和陷波滤波器可以作为滤波过程的输入波形,以精确的数字形式持续实现。对于增益、反转、衰减、平均、峰值检测、低值检测、积分、微分等也是如此。

 

一旦数据进入处理器,处理器类型、架构、速度和特殊功能的具体情况就决定了它是否适合手头的任务。虽然旧的冯·诺依曼CISC架构适合简单的控制任务,但当引入实时方面时,它们并不理想。一个局限性是,在CISC机器中,不同类型的指令可以使用不同数量的周期,每条指令多个时钟周期。现在代码的有效性取决于您使用的指令以及使用位置。中断响应也会影响实时性能。

微控制器

使用RISC的哈佛架构更适合稳定管道处理数据流。这些通常在单个时钟周期或单指令周期内执行。RISC机器通常以更高的速度运行,增加了另一个性能提升功能。对于系统设计师来说,一个好处是数据区与代码空间是分开的。这在划分和使用内存块进行捕获的数据处理和临时RAM时提供了更多灵活性。

 

决定哪种处理器用于混合信号任务的关键是指令集,特别是快速乘法、乘积累加和快速除法。固定或浮点需求在这里也很重要。这些在实现算法的滤波器和模拟处理块中特别重要,特别是如果它们需要实时解决代数和二次方程。

 

许多处理器核心增加了一两个乘法指令,就宣称自己具有DSP功能,其实它还要有其它专门用于信号处理的处理器。但不是每个具有DSP功能的处理器都拥有完整的32位架构并以数百MHz的速度运行。许多应用只需16位功能和32位扩展即可。

 

选择的微控制器是否适用于实时信号密集型设计,取决于处理器架构、性能水平、外围混合和计算资源。在不断变化的波形上操作的块和流处理器,在选用合适的部件并在设计阶段的顶层进行最有效的设计划分时,就可以将MCU和DSP结合后在块或流式处理中的模拟信号方面优势发挥出来。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分