自从2000年MCU和DSP完全分家,大家对DSP的认识多为"将部分程序固化从而实现更快处理速度的MCU",但这个解释总是有点牵强人意。再加上目前流传着这样的一种说法:DSP取代单片机的技术和价格的市场条件已经成熟,大规模推广指日可待。真的是这样的吗?笔者不敢苟同。单片机和DSP各有所长,AVR90单片机是125纳秒一个周期(也是哈弗结构),其内部有SPI、UART等,如果用来作控制、数据采集,只要速度要求不是太高,那么都可以用它,而且用它比用DSP方便。但是如果你的工程中有比较多的算法,特别是信号处理算法,那么用DSP就对了,此时单片机是不能胜任的。
1、单片机的简介
所谓单片机就是在一块芯片上集成了CPU、RAM、ROM(EPROM或EEPROM)、时钟、定时/计数器、多种功能的串行和并行I/O口。如Intel公司的8031系列等。除了以上基本功能外,有的还集成有A/D、D/A,如Intel公司的8098系列。单片机一般具有如下主要特点:
(1)适合实时控制和操作任务
(2)可预测的执行周期
(3)擅长中断处理,特别是外部异步事件
(4)比较多的I/O功能
(5)程序较大
(6)丰富的片上外设
单片机的开发环境完备,开发工具齐全,应用资料众多。后备人才充足。国内大多数高校都开设了单片机课程和单片机实验。
2、DSP的简介
DSP(digitalsingnalprocessor)是一种独特的微处理器,有自己的完整指令系统,是以数字信号来处理大量信息的器件。一个数字信号处理器在一块不大的芯片内包括有控制单元、运算单元、各种寄存器以及一定数量的存储单元等等,在其外围还可以连接若干存储器,并可以与一定数量的外部设备互相通信,有软、硬件的全面功能,本身就是一个微型计算机。DSP采用的是哈佛设计,即数据总线和地址总线分开,使程序和数据分别存储在两个分开的空间,允许取指令和执行指令完全重叠。也就是说在执行上一条指令的同时就可取出下一条指令,并进行译码,这大大的提高了微处理器的速度。另外还允许在程序空间和数据空间之间进行传输,因为增加了器件的灵活性。其工作原理是接收模拟信号,转换为0或1的数字信号,再对数字信号进行修改、删除、强化,并在其他系统芯片中把数字数据解译回模拟数据或实际环境格式。它不仅具有可编程性,而且其实时运行速度可达每秒数以千万条复杂指令程序,远远超过通用微处理器,是数字化电子世界中日益重要的电脑芯片。它的强大数据处理能力和高运行速度,是最值得称道的两大特色。由于它运算能力很强,速度很快,体积很小,而且采用软件编程具有高度的灵活性,因此为从事各种复杂的应用提供了一条有效途径。
根据数字信号处理的要求,DSP芯片一般具有如下主要特点:
(1)在一个指令周期内可完成一次乘法和一次加法;
(2)程序和数据空间分开,可以同时访问指令和数据;
(3)片内具有快速RAM,通常可通过独立的数据总线在两块中同时访问;
(4)具有低开销或无开销循环及跳转的硬件支持;
(5)快速的中断处理和硬件I/O支持;
(6)具有在单周期内操作的多个硬件地址产生器;
(7)可以并行执行多个操作;
(8)支持流水线操作,使取指、译码和执行等操作可以重叠执行。
3、单片机与DSP的比较
目前看来,单片机比DSP应用范围更广,但是DSP比单片机功能更强大。单片机一般用于要求低的场合,如4/8位的单片机。DSP适合于要求较高的场合,DSP主要面向数字信号处理设计,而单片机主要面向系统控制应用设计。DSP是单片机的一个分支。它有专门的FFT算法需要的特殊指令,流水线指令处理。能以较高的速度进行运算。与单片机相比,DSP器件具有较高的集成度。DSP具有更快的CPU,更大容量的存储器,内置有波特率发生器和FIFO缓冲器。提供高速、同步串口和标准异步串口。有的片内集成了A/D和采样/保持电路,可提供PWM输出。DSP器件采用改进的哈佛结构,具有独立的程序和数据空间,允许同时存取程序和数据。内置高速的硬件乘法器,增强的多级流水线,使DSP器件具有高速的数据运算能力。DSP器件比16位单片机单指令执行时间快8~10倍,完成一次乘加运算快16~30倍。DSP器件还提供了高度专业化的指令集,提高了FFT快速傅里叶变换和滤波器的运算速度。此外,DSP器件提供JTAG接口,具有更先进的开发手段,批量生产测试更方便,开发工具可实现全空间透明仿真,不占用用户任何资源。软件配有汇编/链接C编译器、C源码调试器。下面是单片机与DSP的比较图。
|
DSP | 单片机 | DSP的优势 |
总线结构 | 哈佛/改进型哈佛结构 | 冯.诺依曼结构 | 消除总瓶颈,运行速度更快 |
乘加运算 | 利用硬件乘法器,用单指实现 | 多指令实现 | 减少所需指令周期数 |
寻址方式 | 利用硬件数据指针,实现逆序寻址 | 普通寻址 | 大大减少FFT运算寻址时间 |
指令运行方式 | “流水线”方式,允许程序与数据存储器同时访问 | 顺序运行 | 在单条指令执行时间相同的情况下,大大提高运算速度 |
指针 | 配置专用运算器,复合指令可以在寄存器、运算单元处理变量的同时,使用指针访问数据存储器 | 无复合指令功能 | 采用并行方式,提高数据处理能力 |
循环控制 | 利用硬件循环控制结构,实现无消耗循环控制 | 每次循环都将消耗机器时间 | 较好解决了高速运行和精简程序的矛盾 |
多处理系统 | 提供具有很强同步机制的互锁指令 | 无专用指令 | 保证了高速运算中通信和结果的完整 |
4、结论
虽然DSP功能确实很强大,但是一个产品的设计要考虑,在满足需求的情况下它的性价比。如果你作一个遥控器,选用DSP就没优势了。因为很多其他的用于遥控的单片机比他更适合用来作遥控器。单片机长于控制场合应用,DSP长于信号分析运算,本身针对了不同的需求,应该不存在互相替代的问题。不过目前这两者特点互相融合的趋势倒是越来越明显,这也将是单片机与DSP的发展趋势。在过去的几十年里,单片机的广泛应用实现了简单的智能控制功能。随着信息化的进程和
计算机科学与技术、信号处理理论与方法等的迅速发展,需要处理的数据量越来越大,对实
时性和精度的要求越来越高,在某些领域,低档单片机已不再能满足要求。
越好;价格却大幅度下滑,从而使得DSP器件及技术更容易使用,价格也能够为广大用户接
受;越来越多的单片机用户开始考虑选用DSP器件来提高产品性能,DSP器件取代高档单片机
的可能性越来越大。
系列DSP器件为例,探讨DSP器件取代高档单片机的可行性。
DSP器件与单片机的比较
1.单片机的特点
所谓单片机就是在一块芯片上集成了CPU、RAM、ROM(EPROM或EEPROM)、时钟、定时/计数
器、多种功能的串行和并行I/O口。如Intel公司的8031系列等。除了以上基本功能外,有的
还集成有A/D、D/A,如Intel公司的8098系列。概括起来说,单片机具有如下特点:
具有位处理能力,强调控制和事务处理功能。价格低廉。如低档单片机价格只有人民币几元
钱。开发环境完备,开发工具齐全,应用资料众多。后备人才充足。国内大多数高校都开设
了单片机课程和单片机实验。
2.DSP器件的特点
与单片机相比,DSP器件具有较高的集成度。DSP具有更快的CPU,更大容量的存储器,内置
有波特率发生器和FIFO缓冲器。提供高速、同步串口和标准异步串口。有的片内集成了A/D
和采样/保持电路,可提供PWM输出。DSP器件采用改进的哈佛结构,具有独立的程序和数据
空间,允许同时存取程序和数据。内置高速的硬件乘法器,增强的多级流水线,使DSP器件
具有高速的数据运算能力。DSP器件比16位单片机单指令执行时间快8~10倍,完成一次乘加
运算快16~30倍。DSP器件还提供了高度专业化的指令集,提高了FFT快速傅里叶变换和滤波
器的运算速度。此外,DSP器件提供JTAG接口,具有更先进的开发手段,批量生产测试更方
便,开发工具可实现全空间透明仿真,不占用用户任何资源。软件配有汇编/链接C编译器、
C源码调试器。
目前国内推广应用最为广泛的DSP器件是美国德州仪器(TI)公司生产的TMS320系列。DSP开发
系统的国产化工作已经完成,国产开发系统的价格至少比进口价格低一半,有的如
TMS320C2XX开发系统只有进口开发系统价格的1/5,这大大刺激了DSP器件的应用。目前,已
有不少高校计划建立DSP实验室,TI公司和北京闻亭公司都已制订了高校支持计划,将带动
国内DSP器件的应用和推广。
3.DSP器件大规模推广指日可待?
通过上述比较,我们可得出结论:DSP器件是一种具有高速运算能力的单片机。从应用角度
看:DSP器件是运算密集型的,而单片机是事务密集型的,DSP器件可以取代单片机,单片机
却不能取代DSP。DSP器件价格大幅度下滑,直逼单片机?DSP器件广泛使用了JTAG硬件仿
真,比单片机更易于硬件调试。国产化的DSP开发系统为更多用户采用DSP器件提供了可能
性。DSP取代单片机的技术和价格的市场条件已经成熟?大规模推广指日可待?(现在吹牛
的人真是一点草稿都不打。不过DSP确实功能够强大。)
结论:使用单片机的不一定了解DSP,并且非要用DSP不可;但使用DSP的一定了解单片机,并
且能做出性价比高的产品。
附:
DSP器件的典型应用
随着DSP性能不断改善,用DSP器件来作实时处理已成为当今和未来技术发展的一个新热点。
TI公司最新推出的TMS320C2XX系列具有良好的性能价格比,基本可以取代16位单片机。其中
TMS320C203单片价格不到人民币100元,芯片内置544字的高速SRAM。外部可寻址64K字程序/
数据及I/O,指令周期在25ns~50ns之间,实时性处理比16位单片机快2倍以上,可取代一般
的单片机。
TMS320F206除了具有TMS320C203的功能外,内置32K字零等待快闪存储器,可满足单片设计
的要求,能最大限度减少用户板的体积。TMS320F240的指令、DSP核与TMS320C203、F206完
全兼容,内置8K/16K字快闪存储器,增加了两路10位A/D,每路采样频率可达166kHz,提供9
路独立的PWM输出,内置SCI和SPI接口,内置CAN总线接口。这些大大增强了TMS320X240的处
理能力,在电机控制领域显示了强大的生命力。它是一个典型的TMS320F240的用户系统,它
实现如下功能:
3相PWM输出/3相电流测量/按键控制、液晶显示/RS232通信,A/D、D/A接口,62K字零等待
SRAM,扩展的输入、输出及双向I/O口/JTAG接口
上一篇:单片机中定时计数器的应用情况
下一篇:STM8S-定时器2的PWM
推荐阅读最新更新时间:2024-03-16 14:36
设计资源 培训 开发板 精华推荐
- 免费申请英飞凌FMCW雷达解决方案Position2Go,角度,距离,速度,运动方向检测一板搞定!
- 劳动五月 晒“现场”,谁是电子工作狂?
- ADI有奖下载活动之4 压力变送器解决方案
- 【直播已结束】一起深挖 TI 新发布的 Robotics SDK,看干货直播赢好礼!
- 直播已结束【ADI 低噪声 Buck 稳压器如何减小电源噪声】
- 直播已结束【ST 宽禁带高性能碳化硅(SiC)与氮化镓(GaN)产品技术及不同应用案例分享】(9:30入场)
- TI汽车方案拼图,你敢挑战吗?
- 有奖直播:TI最新C2000实时控制器,在功率变换应用中实现高性能的成本优化型设计
- 3小时实战+剖析:TI工程师手把手带你全面入门MSP430(限量售$4.3开发套件,助你参与动手实验)