
! a. t( d5 d" B# m 在各大论坛和网站上,关于单片机和DSP的相关文章较多,基础知识不够牢固的初学者经常会将这两种不同的概念进行混淆,而网上的一些相关资料也不够明确,因此很多朋友始终处于困惑的状态,DSP和单片机的区别究竟在哪呢?本文就将针对这一点,从不同的角度来为大家讲解它们的区别。 存储器结构不同 单片机使用冯。诺依曼存储器结构。这种结构中,只有一个存储器空间通过一组总线(一个地址总线和一个数据总线)连接到处理器核。 : h9 z6 L+ \/ ]; p% i" [# b/ x4 a! G大多数DSP采用了哈佛结构,将存储器空间划分成两个,分别存储程序和数据。 * o3 n: N- L& E. D1 D% c& K/ y定点计算 + ^5 f' @; p* v4 P5 r- h大多数DSP使用定点计算,而不是使用浮点。为了不使用浮点机器而又保证数字的准确,DSP处理器在指令集和硬件方面都支持饱和计算、舍入和移位。 专门的寻址方式 8 D1 h V+ C; R. r- q1 BDSP处理器往往都支持专门的寻址模式,例如,模块(循环)寻址、位倒序寻址。这些非常专门的寻址模式在GPP中是不常使用的,只有用软件来实现。 " l& F6 g, A0 ^6 o对密集的乘法运算的支持 单片机不是设计来做密集乘法任务的,即使是一些现代的GPP,也要求多个指令周期来做一次乘法。而DSP处理器使用专门的硬件来实现单周期乘法。DSP处理器还增加了累加器寄存器来处理多个乘积的和。累加器寄存器通常比其他寄存器宽,增加称为结果bits的额外bits来避免溢出。 零开销循环 单片机是Single-chipMicrocomputer的较准确译法,但最能准确反映单片机设计思想、并且有长远技术眼光的词汇是Microcontroller(微控制器)。之所以出现Single-chipMicrocomputer一词。 实在是因为早期,甚至到MSC-51时期,单片机准确地体现了Single-chipMicrocomputer的形态和内容。然而发展到MSC-96,发展到新一代80C51、M68HC05、M68HC11系列单片机时,在单片机中着力扩展了各种控制功能,如:A/D、PWM、PCA计数器捕获/比较逻辑、高速I/O口、WDT等。 0 V8 y4 W6 p1 Q v* n已突破了Microcontroller的传统内容,朝Microcontroller的内涵发展。因此,目前已到了该给单片机正名的时候了,国外已逐渐统一成Microcontroller。如果我们仍然保留单片机这一习惯叫法,则应把它认为是一个单片形态的微控制器,或直接称作微控制器或单片微控制器,而不要再使用单片微型计算机或单片计算机这些词汇了。此外,集成技术的最新进展之一是将CPU和外围芯片,如程序存储器,数据存储器,并行,串行I/O口,定时/计数器,中断控制器及其他控制部件集成在一下芯片中,制成单片机Single-chipMicrocomputer。 / k) p' b) v& R$ x+ H! K可以看到,单片机与DSP最大的区别之处就在于算法,两者的主要区别也是基于算法的不同来进行识别的。对密集的乘法运算的支持方式不同也是算法不同的体现之一。相信在阅读过本文之后,大家再看到DSP与单片机就不会产生疑惑了。 & a( @4 C2 s/ u4 H+ O |
晓得了 |