首页 » 技术分享 » 什么是DSP

什么是DSP

 

一、DSP,一般有两种解释。

1、Digital Signal Process,数字信号处理,是电子信息工程的专业课,主要内容有FFT、FIR、IIR、CIC。

2、Digital Signal Processor,数字信号处理器,以下简称为DSP处理器。

DSP处理器与单片机、ARM这种CPU类似,内部有指令集、ALU等,也有很多外设,如:串口、IIC、SPI、CAN、USB等。

用得最多的DSP处理器,有TI的C66x系列、ADI的Blackfin系列

二、DSP处理器有什么特点?

你可以把DSP处理器想象成一个科学计算器。它非常擅长做运算。

1、并行性。某些型号的DSP处理器内部有两个独立的乘法器,可以把其中一个专门做FIR滤波器用,而且可以脱离ALU单独运行。

这样,FIR滤波器的滤波特性不受ALU影响。这一点,用ARM是做不到的。

2、快速查表。DSP处理器内部ROM固化了很多数学上使用的各种常量、表格。如:正弦表等。

3、有16位、32位、64位的DSP处理器。

4、某些型号的DSP处理器支持硬件浮点运算单元。

5、可以使用厂家提供的算法库。

6、某些型号的DSP处理器支持VLIW,即超长指令集字,并行度非常高。

7、某些型号的DSP处理器内部是DSP+ARM。

8、有多核DSP。

9、价格较贵。

三、哪里用到DSP处理器?

1、智能电网,如:开关电源或逆变器中的负载均衡。

2、家电,如:空调中的电机调速SVPWM算法。

3、视频采集卡,如:DSP做视频压缩算法(H.265),ARM在局域网上做流媒体传输。

4、指纹识别,如:公司里的指纹打卡机。

5、运动控制卡,如:机床、机械手的控制卡。

四、FPGA中的DSP是什么东西?

打开QuartusII的IP核向导,如上图所示。

QuartusII中的DSP是一些IP核,它只做一些常见的算法,如:FFT、NCO、FIR等。显然,这并非前面所说的DSP处理器。

查看QuartusII中乘加器IP的手册,如上图所示,出现DSP Blocks字样。

手册中说到,DSP块由一些专用的逻辑块组成。这些逻辑块可以实现乘法、加法、减法、累加、求和运算。

你可以把DSP块配置成乘法器、乘加器、乘累加器,并运用在绝大多数DSP算法上。

显然,这里的DSP块,只是一个可配置的乘加单元,并非前面所说的DSP处理器。

其实FPGA内部并没有DSP处理器。

五、STM32中的DSP是什么东西?

奇怪,STM32里面居然也有DSP。

手册中说到,STM32支持DSP指令集,该指令集可以高效地处理复杂的算法。

我们再看看Cortex M4的手册。

这里的APSR寄存器的第27位,Q,表示DSP溢出和饱和标志位。

也就是说STM32中的DSP是FPU,即浮点运算单元,而STM32所支持的DSP指令集,也就是操作FPU的指令。

显然,STM32中的DSP并非上面所说的DSP处理器。

PS,所以说,要搞懂这些DSP的具体含义,否则,很难跟别人交流。

 

转载自原文链接, 如需删除请联系管理员。

原文链接:什么是DSP,转载请注明来源!

0