之前研一的时候简单学习了一下DSP28355,但在后面的实验中主要使用了Matlab联合CCS代码生成的方式完成实验,对于单独使用CCS的方式不是很熟悉。在工作中对于代码生成的方式应用面不是很广,有时还是需要用到单独使用CCS编程,于是现在重新学习一下DSP的知识,希望能够起到温故而知新的作用。
第一个要明确的问题是,什么是DSP?
数字信号处理Digital Signal Processing,简称DSP。是将模拟信号转换为数字信号之后完成信号处理和控制的一种方式。
如图为一个数字信号处理系统的过程。首先依靠传感器或者电压、电流互感器获得输入模拟信号,之后将模拟信号转换为数字信号,得到了数字信号之后就可以凭借数字信号处理的手段进行控制了,最后再进行输出,输出的方式可以是多种多样,凭需求进行输出即可。
那么可以完成数字信号处理的芯片也有许多种,DSP有什么特点呢?
DSPF28335能够在一个周期内完成32x32的乘法累加运算,或者2个16x16的,而其他的32位的单片机则需要4个周期以上。
快速的中断响应以及快速响应外部异步事件能够有效保护寄存器。
8级流水线存储器仿真的流水线保护机制,使得F28335高速运行时不需要大容量的快速存储器。
专门的分支跳转硬件减少了条件指令执行的反应事件。