两只袜子 发表于 2022-7-25 16:46

如何为数字信号处理应用选择微控制器

本文讨论了当您需要单片机同时作为系统控制器和数字信号处理器时应该寻找的特性。
数字信号处理可以为多种产品和应用增加有价值的功能。即使是受成本、形状因素或时间表约束的设计也可以很容易地包含 DSP 的好处,因为现在工程师可以获得大量的库代码、示例项目和高性能处理器,这些处理器既便宜又相对用户友好。
一个真正的数字信号处理器——比如来自德州仪器公司的 c5000系列或来自 analog devices 公司的 SHARC 系列——可能是一个令人望而生畏的设备。我主要是和德州仪器公司的数据服务提供商一起工作,总的来说,这次经历是富有成效和令人满意的。然而,在这种情况下,我不需要设计电路板,我也不喜欢尝试调试奇怪的系统崩溃和理解操作系统的细节的过程。
毫无疑问,某些计算密集型的 DSP 任务将需要一个真正的数字信号处理器,甚至一个 FPGA。这也是真的,虽然,在许多应用中,一个适当选择的微控制器就足够了。本文讨论的特点和能力,你需要集中在当你想要确保你的单片机将有足够的 DSP 电源。
8位,16位,还是32位?
这个问题没有你想象的那么简单。一般来说,16位和32位设备将更适合 DSP 应用。数字信号处理涉及数学过程,通常会导致大量的数字,你需要一个处理器,可以直接操纵这些大量的数字。
然而,8位处理本身并不坏,如果您知道您将要处理的数字值范围有限,8位微控制器可能是一个不错的选择。
此外,工程师通常没有时间或兴趣去研究处理器的底层细节,因此很难在指定的位宽度和实际的计算效率之间建立清晰的联系。例如,“32位微控制器”是否有32位寄存器?32位算术逻辑单元?32位地址总线?32位通信接口?“32位”到底是什么意思?这些细节可能会影响你的决定,特别是如果你希望主要处理那些不需要所有额外信息的小数字。




两只袜子 发表于 2022-7-25 16:47

这个现代化的8位体系结构是由 Silicon Labs 开发的。他们警告人们不要认为16位或32位设备的性能会始终优于8位设备
时钟速度
微控制器的最大时钟频率当然是一个很好的指标,它作为一个数字信号处理器的优点。然而,理解每秒钟的时钟周期和每秒钟的指令之间的区别是非常重要的。处理器通过执行指令来完成 DSP 任务,因此其性能受到时钟频率和执行指令所需时钟周期数的影响。
不幸的是,这个问题很快变得相当复杂。一条指令所需的时钟周期数从一条指令到下一条指令不同,并且通过使用流水线结构可以减少时钟每个指令周期数的平均数量。然后,你必须考虑“每条指令的功能”的数量,也就是说,也许微控制器 a 只需要一条指令就可以做一些需要微控制器 b 上多条指令的事情。



这个图表传达了流水线处理器的概念

以下是我的简短建议: 如果你正在比较来自同一家庭的设备,选择更高的时钟频率。如果你比较的设备与主要的架构差异,尝试找到一个可靠的规范,表明指令执行率(表示为 MIPS,每秒数百万条指令)或平均时钟/每个指令周期数。
定点 vs. 浮点
术语“浮点”指的是一种数字表示,其中的基数点可以“浮动”,因为数字由整数部分(尾数)和指数组成。选择(“定点”)对应的方式,我们通常处理和感知的数据在一个正常的微控制器。仔细比较浮点运算和定点运算绝不是一件简单的任务,但似乎有一个共识,即浮点运算可以在数学密集型应用中获得优越性。
我认为可以肯定地说,所有的微控制器都是定点设备,因为在我看来,如果它真是一个浮点处理器,它就不再是一个微控制器。然而,如果你真的决心最大化你的数学性能,同时留在微控制器域,你应该考虑一个设备,包括一个浮点协处理器。
基于 arm 的16/32位微控制器 NXP 的 lpc3180fel320采用浮点协处理器,最高可达220mips。意法半导体也有 STM32微控制器,其中包括一个浮点运算器处理器(FPU)。



我在我的圆形触摸传感器项目中使用了一些浮点数学。在大多数情况下,一个单独的 FPU 是不必要的ー编译器擅长在典型的微控制器中实现浮点变量


海滨消消 发表于 2022-7-26 15:00

建议楼主把文章重新编辑一下哈,好像特殊符号了

tpgf 发表于 2022-8-2 09:26

这个还是dsp更稳妥吧

nawu 发表于 2022-8-2 09:37

这个排版让人头疼啊

aoyi 发表于 2022-8-2 09:44

都是直接进行计算吗

zljiu 发表于 2022-8-2 09:53

普通单片机一般不够看吧

gwsan 发表于 2022-8-2 10:01

运行效率会不会很低

tfqi 发表于 2022-8-2 10:09

什么样的信号算是数字信号呢

weifeng90 发表于 2022-8-8 23:28

了解了,谢谢分享。

yangxiaor520 发表于 2022-8-10 08:06

数字信号处理不是用DSP吗?

两只袜子 发表于 2022-8-12 11:40

nawu 发表于 2022-8-2 09:37
这个排版让人头疼啊

不好意思给你造成困扰了{:smile:}

aspoke 发表于 2022-8-20 13:41

性能可以吗?

sdCAD 发表于 2022-8-20 16:09

采用硬件计算器的
页: [1]
查看完整版本: 如何为数字信号处理应用选择微控制器