《CPU;MPU;MCU三者以及ARMDSPFPGA三者的区别13008.pdf》由会员分享,可在线阅读,更多相关《CPU;MPU;MCU三者以及ARMDSPFPGA三者的区别13008.pdf(18页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、CPU MPU MCU 1 CPUCentral Processing Unit,中央处理器 中央处理器 CPU 是电子计算机的主要器件之一,其功能主要是解释计算机指令及处理计算机软件中的数据;1.1 CPU 的组成 CPU 由运算器、控制器和寄存器及实现它们之间联系的数据、控制及状态的总线构成;运算器:进行算术运算和逻辑运算部件:算数逻辑单元、累加器、寄存器组、路径转换器、数据总线;控制器:控制程序的执行,包括对指令进行译码、寄存,并按指令要求完成所规定的操作,即指令控制、时序控制和操作控制;复位、使能部件:计数器、指令暂存器、指令解码器、状态暂存器、时序产生器、微操作信号发生器;寄存器:用
2、来存放操作数、中间数据及结果数据;1.2 CPU 的工作原理 CPU 从存储器或高速缓冲存储器中取出指令,放入指令寄存器,并对指令译码,将指令分解成一系列的微操作,然后发出各种控制命令,执行微操作,从而完成一条指令的执行;可分为四个阶段:提取 Fetch、解码 Decode、执行 Execute 和写回 Writeback;注:指令是计算机规定执行操作的类型和操作数的基本命令;指令是由一个字节或者多个字节组成,其中包括操作码字段、一个或多个有关操作数地址的字段以及一些表征机器状态的状态字以及特征码;有的指令中也直接包含操作数本身;第一阶段:提取 从存储器或高速缓冲存储器中检索指令为数值或一系列
3、数值;由程序计数器 Program Counter指定存储器的位置,程序计数器保存供识别目前程序位置的数值;换言之,程序计数器记录了CPU 在目前程序里的踪迹;提取指令之后,程序计数器根据指令长度增加存储器单元;指令的提取必须常常从相对较慢的存储器寻找,因此导致 CPU 等候指令的送入;这个问题主要被论及在现代处理器的快取和管线化架构;第二阶段:解码 CPU 根据存储器提取到的指令来决定其执行行为;在解码阶段,指令被拆解为有意义的片断;根据 CPU 的指令集架构 Instruction Set Architecture,ISA 定义将数值解译为指令;一部分指令数值为运算码Opcode,其指示要
4、进行哪些运算;其它的数值通常供给指令必要的信息,诸如一个加法 Addition 运算的运算目标;这样的运算目标也许提供一个常数值即立即值,或是一个空间的定址值:暂存器或存储器位址,以定址模式决定;在旧的设计中,CPU 里的指令解码部分是无法改变的硬件设备;不过在众多抽象且复杂的 CPU 和指令集架构中,一个微程序时常用来帮助转换指令为各种形态的讯号;这些微程序在已成品的 CPU 中往往可以重写,方便变更解码指令;第三阶段:执行 在提取和解码阶段之后,接着进入执行阶段;该阶段中,连接到各种能够进行所需运算的 CPU 部件;例如,要求一个加法运算,算数逻辑单元 ALU,Arithmetic Log
5、ic Unit将会连接到一组输入和一组输出;输入提供了要相加的数值,而输出将含有总和的结果;ALU 内含电路系统,易于输出端完成简单的普通运算和逻辑运算比如加法和位元运算;如果加法运算产生一个对该 CPU 的处理而言过大的结果,在标志暂存器里,运算溢出 Arithmetic Overflow 标志可能会被设置;第四阶段:写回 以一定格式将执行阶段的结果简单的写回;运算结果经常被写进 CPU 内部的暂存器,以供随后指令快速存取;在其它案例中,运算结果可能写进速度较慢,但容量较大且较便宜的主记忆体中;某些类型的指令会操作程序计数器,而不直接产生结果;这些一般称作“跳转”Jumps,并在程式中带来循
6、环行为、条件性执行透过条件跳转和函式;许多指令也会改变标志暂存器的状态位元;这些标志可用来影响程式行为,缘由于它们时常显出各种运算结果;例如,以一个“比较”指令判断两个值的大小,根据比较结果在标志暂存器上设置一个数值;这个标志可由随后的跳转指令来决定程式动向;在执行指令并写回结果之后,程序计数器的值会递增,反覆整个过程,下一个指令周期正常的提取下一个顺序指令;如果完成的是跳转指令,程序计数器将会修改成跳转到的指令位址,且程序继续正常执行;许多复杂的 CPU 可以一次提取多个指令、解码,并且同时执行;这个部分一般涉及“经典 RISC 管线”,那些实际上是在众多使用简单 CPU 的电子装置中快速普
7、及常称为微控制器 Microcontroller;2 MPUMicroprocessor Unit,微处理器 就物理性来说,MPU 就是一块集成了数量庞大的微型晶体管与其他电子组件的半导体集成电路 Integrated Circuit,IC芯片;微处理器 MPU 通常代表一个功能强大的CPU,但不是为任何已有的特定计算目的而设计的芯片;MPU 与传统的 CPU 相比,具有体积小、重量轻和容易模块化等优点;2.1 MPU 的组成 MPU 的组成部分有:算术逻辑单元ALU,Arithmetic Logical Unit;累加器和通用寄存器组;程序计数器;运算器;时序和逻辑控制电路;数据和地址总线;
8、其中运算器和控制器是其主要组成部分;MPU 能完成取指令、执行指令,以及与外界存储器和逻辑部件交换信息等操作,是微型计算机的运算控制部分;它可与存储器和外围电路芯片组成微型计算机;常见的 MPU 有 Motorola 的 68K 系列和 Intel 的 X86 系列;2.2 MPU 的分类 根据处理对象的不同分类:用作处理通用数据时,叫作中央处理器 Central Processing Unit,CPU 这也是最为人所知的应用如:Intel Pentium CPU;专用于作图像数据处理的,叫作图形处理器 Graphics Processing Unit,GPU 如 Nvidia GeForce
9、 6150 GPU;用于音频数据处理的,叫作音频处理器 Audio Processing Unit,APU 如 Creative emu10k1 APU 等等;2.3 MPU 的体系结构:冯诺伊曼结构和哈佛结构 冯诺伊曼结构 冯诺伊曼结构或普林斯顿结构是一种将程序指令存储器和数据存储器合并在一起的存储器结构;程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置,因此程序指令和数据的宽度相同,如英特尔公司的 8086 中央处理器的程序指令和数据都是 16 位宽;目前使用冯 诺伊曼结构的中央处理器和微控制器有很多;除了上面提到的英特尔公司的 8086,英特尔公司的其他中央处理器、安谋公司的
10、 ARM7、MIPS 公司的 MIPS 处理器也采用了冯诺伊曼结构;哈佛结构 哈佛结构是一种将程序指令存储器和数据存储器分开的存储器结构;中央处理器首先到程序指令存储器中读取程序指令内容,解码后得到数据地址,再到相应的数据存储器中读取数据,并进行下一步的操作通常是执行;程序指令存储和数据存储分开,可以使指令和数据有不同的数据宽度,如 Microchip公司的 PIC16 芯片的程序指令是 14 位宽度,而数据是 8位宽度;哈佛结构的微处理器通常具有较高的执行效率;其程序指令和数据指令分开组织和存储的,执行时可以预先读取下一条指令;目前使用哈佛结构的中央处理器和微控制器有很多,除了上面提到的 M
11、icrochip 公司的 PIC 系列芯片,还有摩托罗拉公司的 MC68 系列、Zilog公司的 Z8 系列、ATMEL 公司的 AVR 系列和 Advanced RISC Machines 安谋公司的 ARM9、ARM10和 ARM11,51 单片机也属于哈佛结构;2.4 MPU 的典型代表:DSPDigital Signal Processor,数字信号处理器 DSPDigital signal processor 是一种特殊结构的 CPU,有自己的完整指令系统;它专门用于处理数字信号的各种功能,如 FFT、数字滤波算法、加密算法和复杂控制算法等;其工作原理是,接受模拟信号并转换成0和1的
12、数字信号,再对数字信号进行修改、删除、强化,并在其他系统芯片中把数字数据解译回模拟数据或实际环境格式;它不仅具有可编程性,而且其实时运行速度可达每秒数以千万条复杂指令程序,远远超过通用微处理器,它的强大数据处理能力和高运行速度,是最值得称道的两大特色;DSP 芯片,也称数字信号处理器,是一种特别适合于进行数字信号处理运算的微处理器,包括控制单元、运算单元、各种寄存器以及一定数量的存储单元等,在其外围还可以连接若干存储器,并可以与一定数量的外部设备互相通信,有软、硬件的全面功能,本身就是一个微型计算机;其主要应用是实时快速地实现各种数字信号处理算法;根据数字信号处理的要求,DSP芯片一般具有如下
13、主要特点:1 在一个指令周期内可完成一次乘法和一次加法;2 程序和数据空间分开哈佛结构,可以同时访问指令和数据;3 片内具有快速RAM,通常可通过独立的数据总线在两块中同时访问;4 具有低开销或无开销循环及跳转的硬件支持;5 快速的中断处理和硬件I/O支持;6 具有在单周期内操作的多个硬件地址产生器;7 可以并行执行多个操作;8 支持流水线操作,使取指、译码和执行等操作可以重叠执行;目前有许多微处理器 MPU 逐渐演化为微控制器 MCU 比如 arm,因此这些概念开始融合,所以处理器包括 CPU,MCU,DSP;ARM 目前是嵌入式处理器的代名词:由 CPU,少量的 RAM,FLASH,和其它
14、接口封装而组成的;3 MCUMicrocontroller Unit,微控制器/单片机 3.1 MCU 的概念 MCU 是将微型计算机的主要部分包括 CPU,存储器,定时/计数器 Timer/Counter,各种I/O 接口集成在一个芯片上的单芯片微型计算机,实现嵌入式应用,故也称单片机 Single Chip Microcomputer,单片微型计算机;随后为了满足控制领域的嵌入式应用,单片机中不断扩展一些满足控制要求的电路单元,目前单片机已广泛称为微控制器MCU;也有由微处理器发展的微控制器,比如Intel 的386EX就是很成功的 80386微处理器的微控制器版本,它与嵌入式应用的微处理
15、器一样,也称为嵌入式微处理器;嵌入式处理器的高端产品有:Advanced RISC Machines公司的 ARM、Silicon Graphics公司的 MIPS、IBM和 Motorola的 Power PC、Intel的 X86 和 i960芯片、AMD 的 Am386EM、Hitachi的 SH RISC芯片;3.2 MCU的概述 绝大多数现在的单片机都是基于冯 诺伊曼结构的,这种结构清楚地定义了嵌入式系统所必需的四个基本部分:一个中央处理器核心,程序存储器只读存储器或者闪存、数据存储器随机存储器、一个或者更多的定时/计时器,还有用来与外围设备以及扩展资源进行通信的输入/输出端口,所有
16、这些都被集成在单个集成电路芯片上;说单片机与通用型中央处理单元芯片不同,是因为前者一般很容易配合最小型的外部支持芯片制成工作计算机,这样就可以很容易的把单片机系统植入装置内部来控制装置了;近年来为了在指令和数据上使用不同的字宽,并提高处理器流水线速度,哈佛结构在微控制器 Microcontroller 和数字信号处理器 Digital Signal Processor,DSP 也逐渐得到了广泛的应用;传统的微处理器是不允许这么做的;它要完成单片机的工作,就必须连接一些其他芯片;比如说,因为芯片上没有数据存储器,就必须要添加一些 RAM 的存储芯片,虽然所添加存储器的容量很灵活,但是至少还是要添
17、加;另外还需要添加很多连线来传递芯片之间的数据;与以上的情况相比,单片机的工作则相对独立,一个典型的微控制器只需要一个时钟发生器和很少的 RAM 和 ROM 或者 EPROM,E2PROM 就可以在软件和晶振下工作了;同时,微控制器具有丰富的输入输出设备,例如模拟数字转换器 Analog-to-Digital Converter,ADC,定时器,串口,以及其他串行通讯接口,比如 I2C,SPI 串行周边接口,CAN 控制器局域网等;通常,这些集成在内部的设备可以通过特殊的指令来操作;单片机时钟频率通常较同时代的计算机芯片低,但它价格低廉,能够提供充足的程序存储器、丰富的片上接口;某些架构的单片
18、机生产厂商众多,例如 8051 系列、Z80 系列;一些现代的微控制器支持一些内建的高级编程语言,比如 BASIC 语言、C 语言、C+等;3.3 MCU 的分类 根据数据总线宽度可分为 8 位、16 位和 32 位机;根据存储器结构可分为哈佛 Harvard 结构和冯诺伊曼 Von Neumann 结构;根据内嵌程序存储器的类别可分为 OTP、掩膜、EPROM/EEPROM 和 Flash 的 MCU;根据指令结构又可分为 CISCComplex Instruction Set Computer,复杂指令集计算机和 RISCReduced Instruction Set Computer,精
19、简指令集计算机微控制器;3.4 MCU 的架构:CISC 架构和 RISC 架构 基于 CISC架构的微控制器除了 80C51 外,还包括 Motorola提供的 68HC 系列微控制器,这也是大量应用的微控制器系列;基于 RISC 架构的微控制器则包括 Microchip 的 PIC 系列 8 位微控制器等;在 16 位 RISC 架构的微控制器中,Maxim 公司推出的 MAXQ 系列微控制器以其高性能、低功耗和卓越的代码执行效率,成为许多需要高精度混合信号处理以及便携式系统和电池供电系统的理想选择;MAXQ2000微控制器是 Maxim/Dallas 公司推出的一款基于 RISC 架构的
20、 16 位微控制器,其指令读取和执行操作在一个周期内完成,而没有流水线操作,这是因为指令既包含了操作码也包括了数据;字母 Q 表示这款微控制器的一个重要特点便是“安静”,MAXQ架构通过智能化的时钟管理来降低噪声这意味着 MAXQ 只向那些需要使用时钟的电路提供时钟,这样既降低了功耗,又为模拟电路的整合提供了一个最安静的环境;它包含液晶显示LCD 接口,最多可以驱动100 或 132 段两种版本;3.5 常见的 MCU 微芯公司的PIC 系列出货量居于业界领导者地位;Atmel的 51 系列及 AVR 系列种类众多,受支持面广;德州仪器的 MSP430 系列以低功耗闻名,常用于医疗电子产品及仪
21、器仪表中;瑞萨单片机在日本使用广泛;1ARM 公司:ARM 系列 MCU 2Atmel 公司:AVR 系列 MCU Atmel AT91 series ARM 处理器等 AT90 series AVR Atmel 的高性能 RISC 8 位单片机,老产品 ATmega series AVR Atmel 的高性能 RISC 8 位单片机,新产品 ATXmega series AVR Atmel 的高性能 RISC 32 位单片机,新产品 Atmel AT89 series Intel 8051/MCS51 架构 8 位单片机 MARC4 3Cypress MicroSystems 赛普拉斯微系统
22、公司 CY8C2xxxx PSoC 4Freescale Semiconductor 飞思卡尔半导体 8-bit:68HC05 CPU05,68HC08 CPU08,68HC11 CPU11;16-bit:68HC12 CPU12,68HC16 CPU16,Freescale DSP56800 DSPcontroller;32-bit Freescale 683XX CPU32 MPC500 MPC 860 PowerQUICC MPC 8240/8250 PowerQUICC II MPC 8540/8555/8560 PowerQUICC III 5Holtek 盛群半导体 HT48FXX
23、 Flash I/O type HT48RXX I/O type HT46RXX A/D type HT49RXX LCD type 6Intel 英特尔 MCU 8-bit:8XC42 MCS48 MCS51:Intel 8051 系列 MCU 历史悠久,相容产品众多,使用广泛;8xC251 16-bit:MCS96 系列 MXS296 32-bit:i960 7Microchip 微芯公司的 PIC 系列 MCU 8-bit:PIC10,PIC12,PIC16,PIC18;16-bit:PIC24F,PIC24H,dsPIC30,dsPIC33;32bit:PIC32 采用 MIPS M4
24、K 核心架构 8National Semiconductor 美国国家半导体 COP8 CR16 9NEC 78K 10NXP Semiconductors 恩智浦半导体,由飞利浦以 Philips Semiconductors 为班底新成立 LPC2000 LPC900 LPC700 11Parallax,Inc.BASIC Stamp 12Renesas 瑞萨科技系列单片机 Renesas 16-bits Renesas M16C Series Renesas M32C Series Renesas R8C Series Renesas M16C/Tiny Series Renesas R
25、8C/Tiny Series Renesas H8/Tiny Series 13ST Microelectronics 意法半导体 STM32 series ARM Cortex-M3 系列,32 位 STM8 series 自主 RISC 指令集,8 位 14SyncMOS 新茂国际科技全系列单片机 SM59RXXA2 8-bits 1TRISC SM59DXXG2 8-bits 6TISP SM59XX 8-bits 12TISP SM89XX 8-bits 12TTraditional 8051 SM79XX 8-bits 12TCustomization 15PADAUK 应广科技全系
26、列单片机多核心单片机 P201CS/CD 8-bits P211CS/CD 8-bits p232CS/CD 8-bits P234CS/CD 8-bits 16ZiLOG Z8 Z86E02 17STC 宏晶系列 MCU STC89C series 6T/12T 增强性单片机 Intel 8051 架构,有外部总线 STC11F/11L series 2T 增强性单片机 Intel 8051 增强架构,无外部总线程序支持 STC12C/12LE series 2T 增强性单片机 Intel 8051 增强架构,无外部总线程序支持 STC15C/15LE series 2T 增强性单片机 In
27、tel 8051 增强架构,无外部总线程序支持,正在开发中 18Kernel-IC 华芯 LS 系列 MCU LSx051 series 12T 双核单片机 Intel 8051 架构,无外部总线 LSx151 series 12T 三核单片机 Intel 8051 架构,无外部总线 LS052A series 6T 三核单片机 Intel 8051 架构,无外部总线 其他系列的单片机 Msp430 系列单片机 8098、80196 系列单片机 AT8P5X 系列单片机 CZG8000 系列单片机 3.6 MCU 的典型代表:ARM ARMAdvanced RISC Machines 是微处理
28、器行业的一家知名企业,设计了大量高性能、廉价、耗能低的 RISC 处理器、相关技术及软件;ARM 架构是面向低预算市场设计的第一款 RISC微处理器,基本是 32 位单片机的行业标准,它提供一系列内核、体系扩展、微处理器和系统芯片方案,四个功能模块可供生产厂商根据不同用户的要求来配置生产;由于所有产品均采用一个通用的软件体系,所以相同的软件可在所有产品中运行;目前 ARM 在手持设备 市场占有 90%以上的份额,可以有效地缩短应用程序开发与测试的时间,也降低了研发费用;4 CPLDComplex Programmable Logic Device,复杂可编程逻辑器件 5 FPGAField P
29、rogrammable Gate Array,现场可编程门阵列 FPGA 是英文 Field Programmable Gate Array现场可编程门阵列的缩写,它是在 PAL、GAL、PLD 等可编程器件的基 础上进一步发展的产物,是专用集成电路 ASIC 中集成度最高的一种;FPGA 采用了逻辑单元阵列 LCALogic Cell Array 这样一个新概念,内部包括可配置逻辑模块 CLBConfigurable Logic Block、输出输入模块 IOBInput Output Block 和内部连线 Interconnect 三个部分;用户可对 FPGA 内部的逻辑模块和 I/O
30、模块重新配置,以实现用户的逻辑;它还具有静态可重复编程和动态在系统重构的特性,使得硬件的功能可以像软件一样通过编程来修改;作为专用集成电路 ASIC 领域中的一种半定制电路,FPGA 既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点;可以毫不夸张的讲,FPGA能完成任何数字器件的功能,上至高性能 CPU,下至简单的 74 电路,都可以用 FPGA 来实现;FPGA 如同一张白纸或是一堆积木,工程师可以通过传统的原理图输入法,或是硬件描述语言自由的设计一个数字系统;通过软件仿真,我们可以事先验证设计的正确性;在 PCB 完成以后,还可以利用FPGA的在线修改能力,随时修改设计而不
31、必改动硬件电路;使用FPGA来开发数字电路,可以大大缩短设计时间,减少 PCB 面积,提高系统的可靠性;FPGA 是由存放在片内 RAM 中的程序来设置其工作状态的,因此工作时需要对片内的 RAM 进行编程;用户可以根据不同的配置模式,采用不同的编程方式;加电时,FPGA 芯片将 EPROM 中数据读入片内编程 RAM 中,配置完成后,FPGA 进入工作状态;掉电后,FPGA 恢复成白片,内部逻辑关系消失,因此,FPGA 能够反复使用;FPGA 的编程无须专用的 FPGA 编程器,只须用通用的 EPROM、PROM编程器即可;当需要修改 FPGA 功能时,只需换一片 EPROM 即可;这样,同
32、一片 FPGA,不同的编程数据,可以产生不同的电路功能;因此,FPGA 的使用非常灵活;可以说,FPGA 芯片是小批量系统提高系统集成度、可靠性的最佳选择之一;目前FPGA的品种很多,有XILINX的 XC系列、TI 公司的 TPC 系列、ALTERA 公司的 FIEX 系列等;6 DSP,ARM,FPGA 的区别 ARM 具有比较强的事务管理功能,可以用来跑界面以及应用程序等,其优势主要体现在控制方面;DSP 主要是用来计算的,比如进行加密解密、调制解调等,优势是强大的数据处理能力和较高的运行速度;FPGA 可以用 VHDL 或 Verilog HDL 来编程,灵活性强,由于能够进行编程、除错、再编程和重复操作,因此可以充分地进行设计开发和验证;当电路有少量改动时,更能显示出FPGA的优势,其现场编程能力可以延长产品在市场上的寿命,而这种能力可以用来进行系统升级或除错;