资深工程师简谈ARM、DSP、单片机的异同与应用场景!

Lee_的头像
Lee_ 发布于:周二, 11/29/2016 - 15:00 ,关键词:

单片机、ARM、DSP这三者都可以说是CPU,那这三者有什么区别吗?

首先,CPU(中央处理器),本质就是一个集成电路,实现的功能就是从一个地方(如rom)读出一个指令,从一个地方(如ram)读出数据,然后根据指令的不同对数据做不同的处理(如相加),然后把结果存回某个地方(如ram)。不同架构的CPU会有不同的指令、不同的存取方式、不同的速度、不同的效率等差异。

然后说说单片机(通常意义所说的微控制器MCU),ARM(通常意义所说的高效能RISC),DSP(通常意义所说的通用数字信号处理器),这三个 CPU分别是针对不同的应用而产生的CPU。当然这也不是绝对的,因为ARM现在出的CPU囊括了MCU(如M0),RISC(如A8),DSP(如 M4)。

单片机实际上是微控制器MCU、ARM是高效能RISC、DSP就是数字信号处理器,那您能具体的从这三者的功能谈谈它们的控制原理吗?

微控制器MCU的目的主要是用作控制,他不需要多快的速度,如电饭锅的控制器,只需要控制发热元件的通断、信号等的开关等,但是对成本要求很严格,所以一般做得比较简单,8位的很多。

高效能的RISC,常用于一些数据处理比较多的地方,最常见的莫过于现在的消费性电子产品了,手机、pad等,目前ARM的商业模式主要是卖内核,集成到各家的SoC中间。它其实就是个通用的CPU,能干各种各样的活,和Intel的CPU一样。但是通用就有效能问题,在某些特殊场合,效能就显得没那么高了,如大量运算(譬如做FFT)的时候,这样就有DSP的用武之地了。

DSP数字信号处理器,只要是做数字信号处理的模块都可以叫做一个DSP,如视频解码的IP核。通用的数字信号处理器,如TI的TMS320C55x DSP。该CPU的长处就是在于运算,大量循环的计算,如连续1024个乘加。他的指令针对这种应用有特殊的处理,相比RISC可以更快速高效地完成这类运算。

您能结合开发案例,具体谈谈它们的主要应用场景吗?

单片机集成完整的冯诺依曼体系所规定的结构,是一个完整的计算机体系。实现特定的运算功能,应用集中在工业自动化控制等专门化需求的运算领域,大多都是工业应用上的需求,如“基于单片机设计的LED驱动电源综合测试仪”、“单片机拨号程序”等。

ARM芯片精髓在“R”,是RISC精简指令集的意思。RISC指令集根据80%的时候只用到了20%的处理器指令的状况,使用了经过精简设计的指令系统,使得整个处理器的设计可以更加简洁,功耗、体积大大缩小,所以ARM在手机、平板等智能移动设备上得到了广泛应用。如“arm的 linux内核下的手持机开发”、“ARM的linux内核LVDS显示开发”等均是基于ARM芯片的智能产品。

DSP是数字信号处理器,相较于普通计算机实现通用计算的特点,DSP只负责数字信号(视频、音频或者其他传感器获得数字信号)处理。在日常生活中,常见的DVD、蓝光播放机、数字电视机顶盒、MP4等都广泛使用了DSP。这个“基于DSP的声音控制系统开发”、“基于DSP图像处理固定区域内人数统计仪”等对于音频音质、图像像素要求较高的产品多使用DSP控制器。

来源:嵌入式精选

围观 432