CPU,MPU,MCU,SOC,SOPC联系与差别
CPU、MCU、MPU及DSP的区别
CPU(Central Processing Unit,中央处理器)发展出来三个分枝,一个是DSP(Digital Signal Processing/Processor,数字信号处理),另外两个是MCU(Micro Control Unit,微控制器单元)和MPU(Micro Processor Unit,微处理器单元)。
MCU集成了片上外围器件;MPU不带外围器件(例如存储器阵列),是高度集成的通用结构的处理器,是去除了集成外设的MCU;DSP运算能力强,擅长很多的重复数据运算,而MCU则适合不同信息源的多种数据的处理诊断和运算,侧重于控制,速度并不如DSP。
MCU区别于DSP的最大特点在于它的通用性,反应在指令集和寻址模式中。DSP与MCU的结合是DSC,它终将取代这两种芯片。
在20世纪最值得人们称道的成就中,就有集成电路和电子计算机的发展。20世纪70年代出现的微型计算机,在科学技术界引起了影响深远的变革。在70年代中期,微型计算机家族中又分裂出一个小小的派系–单片机。随着4位单片机出现之后,又推出了8位的单片机。MCS48系列,特别是MCS51系列单片机的出现,确立了单片机作为微控制器(MCU)的地位,引起了微型计算机领域新的变革。在当今世界上,微处理器(MPU)和微控制器(MCU)形成了各具特色的两个分支。它们互相区别,但又互相融合、互相促进。与微处理器(MPU)以运算性能和速度为特征的飞速发展不同,微控制器(MCU)则是以其控制功能的不断完善为发展标志的。
CPU、MPU、MCU及DSP介绍
DSP有两个意思,既可以指数字信号处理这门理论,此时它是Digital Signal Processing的缩写;也可以是Digital Signal Processor的缩写,表示“数字信号处理器”,有时也缩写为DSPs,以示与理论的区别。
MPU 是Micro Processor Unit的缩写,指“微处理器”。早期甚至多达7、8颗,但目前大多合并成2颗,一般称作北桥(North Bridge,是主板芯片组中起主导作用的最重要的组成部分,也称为主桥)芯片和南桥(South Bridge,南桥芯片负责I/O总线之间的通信)芯片,在计算机中起到转接桥的作用,转接数据.
CPU是英语“Central Processing Unit”的缩写,指“中央处理单元”,是计算机的大脑,起到运算数据的作用,而CPU的指令调用、数据传输、各个设备的工作状态都需要CPU通过MPU转接控制才能完成.
MCU的分类
微控制器在经过这几年不断地研究,发展,历经4位,8位,到现在的16位及32位,甚至64位。产品的成熟度,以及投入厂商之多,应用范围之广,真可谓之空前。目前在国外大厂因开发较早,产品线广,所以技术领先,而本土厂商则以多功能为产品导向取胜。但不可讳言的,本土厂商的价格战是对外商造成威胁的关键因素。
由于制程的改进,8位MCU与4位MCU价差相去无几,8位已渐成为市场主流;目前4位MCU大部份应用在计算器、车用仪表、车用防盗装置、呼叫器、无线电话、CD播放器、LCD驱动控制器、LCD游戏机、儿童玩具、磅秤、充电器、胎压计、温湿度计、遥控器及傻瓜相机等;8位MCU大部份应用在电表、马达控制器、电动玩具机、变频式冷气机、呼叫器、传真机、来电辨识器(CallerID)、电话录音机、CRT显示器、键盘及USB等;16位MCU大部份应用在行动电话、数字相机及摄录放影机等;32位MCU大部份应用在Modem、GPS、PDA、HPC、STB、Hub、Bridge、Router、工作站、ISDN电话、激光打印机与彩色传真机;64位MCU大部份应用在高阶工作站、多媒体互动系统、高级电视游乐器(如SEGA的Dreamcast及Nintendo的GameBoy)及高级终端机等。
1.CPU(Central Processing Unit),是一台计算机的运算核心和控制核心。CPU由运算器、控制器和寄存器及实现它们之间联系的数据、控制及状态的总线构成。差不多所有的CPU的运作原理可分
为四个阶段:提取(Fetch)、解码(Decode)、执行(Execute)和写回(Writeback)。 CPU从存储器或高 速 缓冲存储器中取出指令,放入指令寄存器,并对指令译码,并执行指令。所谓
的计算机的可编程性主要是指对CPU的编程。
2.MPU (Micro Processor Unit),叫微处理器(不是微控制器),通常代表一个功能强大的CPU(暂且理解为增强版的CPU吧),但不是为任何已有的特定计算目的而设计的芯片。这种芯片往往是个人
计算机和高端工作站的核心CPU。最常见的微处理器是Motorola的68K系列和Intel的X86系列。
3.MCU(Micro Control Unit),叫微控制器,是指随着大规模集成电路的出现及其发展,将计算机的CPU、RAM、ROM、定时计数器和多种I/O接口集成在一片芯片上,形成芯片级的芯片,比如51,
avr这些芯片,内部除了CPU外还有RAM,ROM,可以直接加简单的外围器件(电阻,电容)就可以运行代码了,而MPU如x86,arm这些就不能直接放代码了,它只不过是增强版的CPU,所以得添加RAM,ROM。
4.SOC(System on Chip),指的是片上系统,MCU只是芯片级的芯片,而SOC是系统级的芯片,它既MCU(51,avr)那样有内置RAM,ROM同时又像MPU(arm)那样强大的不单单是放简单的代码,
可以放系统级的代码,也就是说可以运行操作系统(将就认为是MCU集成化与MPU强处理力各优点二合一)。
5.SOPC(System On a Programmable Chip)可编程片上系统,上面4点的硬件配置是固化的,就是说51单片机就是51单片机,不能变为avr,而avr就是avr不是51单片机,他们的硬件是一次性掩膜
成型的,能改的就是软件配置,说白点就是改代码,本来是跑流水灯的,改下代码,变成数码管,而SOPC则是硬件配置,软件配置都可以修改,软件配置跟上面一样,没什么好说的,至于硬件,是可以自己
构建的也就是说这个芯片是自己构造出来的,这颗芯片我们叫“白片”,什么芯片都不是,把硬件配置信息下载进去了,他就是相应的芯片了,可以让他变成51,也可以是avr,甚至arm,同时SOPC是在SOC
基础上来的,所以他也是系统级的芯片,所以记得当把他变成arm时还得加外围ROM,RAM之类的,不然就是MPU了。 顺便再讲一下这个SOPC吧,首先上面讲的“白片”一般指的是FPGA或CPLD这类芯片,由于它是可配置的,所以一旦断电,他的硬件配置就没了,当然,软件配置也没了,什么都没了,比如把他硬件配置成51
单片机,软件配置为跑流水灯,结果一断电,这个芯片就什么都不是了,恢复原样“白片”。 一般有两种用法,一是用它来验证芯片,因为他是可以多次下载配置验证的,成功后再把这硬件配置下载到一次性的芯片上,如果采用基于hardcopy的SOC则成功率100%,不然每次下载硬件配置验证用SO
C等到你调试出正确的硬件配置,那得烧多少芯片啊,毕竟这些是一次性的,不成功只能成仁--扔掉!跟调试软件配置一样,一般软件调试很多次才能成功的,所以他是验证技术,行了再将配置配在其他的芯片,第二种方法是,芯片就用这“白片”,然后把配置信息放到flash里,上电后先将这硬件配置信息烧入这“白片”,使其变成自己想要的芯片,然后再调入软件配置。其中硬件配置可以用quartus软件编写,软件配置可以用NIOS软件,这都是altera公司的产品,可以去查看。