学习TI的各种DSP,本着循序渐进的原则,可以分为多个层次。根据一位多年开发DSP芯片的经验者,总结的各个层次的进阶:
1、DSP2000(除了Tms320f2812):
进阶:标准C -> C和汇编混合编程
说明:把DSP2000当作单片机来玩就可以了,非常简单。
2、DSP5000(包括DSP Tms320f2812)
主要:标准C -> C和汇编混合编程 -> DSP/BIOS -> RF3
说明:DSP5000是个中等产品,性能不高不低,基本上也没有开发难度。
3、DSP6000
主要:标准C -> C和汇编混合编程 -> DSP/BIOS -> XDAIS -> RF5
说明:DSP6000的开发难度明显增大,不论是硬件还是软件。还分为两种档次:
(1)DSP62XX & DSP67XX:开发这两类DSP芯片,硬件上会初步遇到信号完整性问题,软件方面来说,DSP/BIOS是必需的,复杂的程序还需要XDAIS和RF3、RF5的知识。
(2)DSP64XX:开发难度比较大,硬件方面需要重点考虑系统合理架构问题,信号完整性问题;软件方面,需要综合运用各种比较先进、专业的知识,例如用DSP/BIOS作为RTOS,用RF5作为程序架构,尽量采用MiniDriver来编写底层驱动程序等。如果深入编程,还会遇到令人困惑的Cache冲突问题(虽然TI最近专门针对这个难题升级了CCS),等等。
另外还有一些辅助知识,根据自己需要可以选学:
1、GEL:推荐所有阶段的开发者都要学;
2、RTDX:一般来说没有必要学习;
3、CCS中的C++面向对象编程技术:不建议采用;
4、CSL:对于DSP6000以上的开发,必须的;
5、各种DSP库函数:对于复杂算法程序,建议学习。
DSP芯片的应用主要有:
1.信号处理–如,数字滤波、自适应滤波、快速傅里叶变换、相关运算、频谱分析、卷积等。
2.通信–如电话交换机,集团电话、调制解调器、自适应均衡、数据加密、数据压缩、回坡抵消、多路复用、传真、扩频通信、纠错编码、波形产生等。
3.语音–如语音编码、语音合成、语音识别、语音增强、说话人辨认、说话人确认、语音邮件、语音储存等。
4.图像/图形–如二维和三维图形处理、图像压缩与传输、图像增强、动画、机器人视觉等。
5.军事–如保密通信、雷达处理、声纳处理、导航等。
6.仪器仪表–如频谱分析、函数发生、锁相环、地震处理等。
7.自动控制–如引擎控制、深空、自动驾驶、机器人控制、磁盘控制。
8.医疗–如助听、超声设备、诊断工具、病人监护等
9.安防–防盗报警器、监控设备等
10.家用电器–如高保真音响、音乐合成、音调控制、玩具与游戏、数字电话/电视等
