从应用角度讲,尤其是用C语言开发,DSP、ARM与单片机甚至PC都没太大差异,都是按你描述的功能执行程序。但从性能上看,DSP对数据处理占用的时间会短很多,当然这依赖于编程时对硬件的充分利用,一般高效的程序是用汇编语言编的,而汇编语言在不同结构的处理器上是有很大差异的,这正是DSP的精髓,也是各种处理器的主要差异。值得庆幸的是DSP厂家把很多常用的代码都以库的形式提供给我们了,像Codewarrior内置的Proccer Export已经把很多算法做成Embeded Bean,只要用鼠标把它加进来就可以使用。
硬件上设计方面,DSP开发与传统的单片机开发也是有区别的:传统单片机因速度较低,故原理图设计决定整体设计的成败,PCB只要步通了就能用;DSP开发一般工作速度较高,PCB连接的线都得按传输线来看待,原理图连接正确已经不能保证电路可靠工作了,PCB设计决定总体设计的成败。 |