基于LPC3250的嵌入式Linux系统开发
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.2 嵌入式处理器

嵌入式系统的核心部件是嵌入式处理器,据不完全统计,到2000年全世界嵌入式处理器的品种总量已经超过1000种,流行体系结构有30多个系列,其中8051体系的占了多半。生产8051单片机的半导体厂家有20多个,共350多种衍生产品,仅NXP就有近百种。现在几乎每个半导体制造商都生产嵌入式处理器,而且越来越多的公司有自己的处理器设计部门。嵌入式处理器的寻址空间一般从64KB到4GB,处理速度从0.1MIPS到2000MIPS,常用封装从8个引脚到208个引脚。

1.2.1 嵌入式处理器的分类

从应用的角度来划分,嵌入式处理器包含下面几种类型。

1.嵌入式微控制器(Microcontroller Unit,MCU)

MCU又称单片机,就是将整个计算机系统集成到一块芯片中。MCU一般以某一种微处理器(MPU)内核为核心,芯片内部集成ROM、RAM、总线逻辑、定时器等各种必要的功能模块。与MPU相比,微控制器的最大特点是单片化,体积大大减小,从而使功耗和成本下降,可靠性提高。

MCU是目前嵌入式系统应用的主流。由于MCU的片上资源一般比较丰富,适合于控制,因此称为微控制器。为适应不同的应用需求,一般一个系列的单片机具有多种衍生产品,每种衍生产品的处理器内核都是一样的,不同的是存储器和外设的配置及封装。这样可以最大限度地与应用需求相匹配,从而减小功耗和成本。

MCU目前的品种和数量最多,比较有代表性的通用系列包括8051、P51XA、MCS-251、MCS-96/196/296、C166/167、MC68HC05/11/12/16、68300等。另外,还有许多半通用系列,如支持USB接口的MCU 8XC930/931、C540、C541。

2.嵌入式微处理器(Embedded Microprocessor Unit,EMPU)

MPU的基础是通用计算机中的CPU。为了满足嵌入式应用的特殊要求,MPU虽然在功能上和标准微处理器基本是一样的,但在工作温度、抗电磁干扰、可靠性等方面一般都做了各种增强。

MPU目前主要有Am186/88、386EX、SC-400、PowerPC、68000、MIPS、ARM系列等。

MPU又可分为复杂指令集计算机(CISC)和精简指令集计算机(RISC)两类。大家熟悉的大多数台式PC都使用CISC微处理器,如Intel的x86。RISC结构体系有两大主流:Silicon Graphics公司(硅谷图形公司)的MIPS技术;ARM公司的Advanced RISC Machines技术。

RISC和CISC是目前设计制造微处理器的两种典型技术,为达到高效的目的,采用的方法不同。它们的差异主要有以下几点。

① 指令系统:RISC设计者把主要精力放在那些经常使用的指令上,对不常用的功能,常通过组合指令来实现;而CISC计算机的指令系统比较丰富,有专用指令来完成特定的功能。

② 存储器操作:RISC对存储器操作有限制,使控制简单化;而CISC机器的存储器操作指令多,操作直接。

③ 程序:RISC汇编语言程序一般需要较大的内存空间,实现特殊功能时程序复杂,不易设计;而CISC汇编语言程序编程相对简单,科学计算及复杂操作的程序设计相对容易,效率较高。

④ 中断:RISC机器在一条指令执行的适当地方可以响应中断;而CISC机器是在一条指令执行结束后响应中断的。

⑤ CPU:RISC CPU包含较少的单元电路,面积小、功耗低;而CISC CPU包含丰富的电路单元,功能强、面积大、功耗大。

⑥ 设计周期:RISC微处理器结构简单,布局紧凑,设计周期短,且易于采用最新技术;CISC微处理器结构复杂,设计周期长。

⑦ 易用性:RISC微处理器结构简单,指令规整,性能容易把握,易学易用;CISC微处理器结构复杂,功能强大,实现特殊功能容易。

⑧ 应用范围:RISC机器更适合于嵌入式应用;而CISC机器则更适合于通用计算机。

3.嵌入式DSP(Embedded Digital Signal Processor,EDSP)

DSP对系统结构和指令进行了特殊设计,使其适合于执行DSP算法,编译效率较高,指令执行速度也较高。在数字滤波、FFT、谱分析等方面,DSP算法正在大量进入嵌入式领域。

推动嵌入式DSP发展的一个重要因素是嵌入式系统的智能化。例如,各种带有智能逻辑的消费类产品、生物信息识别终端、带有加解密算法的键盘、ADSL接入、实时语音压缩解压系统、虚拟现实显示,等等。这类智能化算法一般运算量都比较大,特别是向量运算、指针线性寻址等较多,而这些正是DSP的长处所在。

嵌入式DSP有两个发展来源:一是DSP经过单片化、EMC改造、增加片上外设成为嵌入式DSP,TI公司的TMS320C2000/C5000等属于此范畴;二是在通用单片机或片上系统(SoC)中增加DSP协处理器,例如Intel的MCS-296。

嵌入式DSP比较有代表性的产品是TI的TMS320系列和Motorola的DSP56000系列。TMS320系列处理器包括用于控制的C2000系列、用于移动通信的C5000系列及性能更高的C6000和C8000系列。DSP56000系列目前已经发展成为DSP56000、DSP56100、DSP56200和DSP56300等几个不同系列的处理器。DSP的设计者们把重点放在了处理连续的数据流上。如果嵌入式应用中强调对连续的数据流的处理及高精度复杂运算,则应该选用DSP器件。

4.嵌入式片上系统SoC(Embedded System on Chip)

随着VLSI设计的普及和半导体工艺的迅速发展,可以在一块硅片上实现一个更为复杂的系统,这就是SoC(System on Chip)。各种通用处理器内核和其他外围设备都将成为SoC设计公司的标准库中的器件,用标准的VHDL等硬件描述语言描述。用户只需定义出整个应用系统,仿真通过后就可以将设计图交给半导体工厂制作芯片样品。这样,整个嵌入式系统大部分都可以集成到一块芯片中,应用系统的电路板将变得很简洁,这将有利于减小体积和功耗,提高系统的可靠性。

SoC可以分为通用和专用两类。通用系列包括Motorola的M-Core、某些ARM系列器件、Echelon和Motorola联合研制的Neuron芯片等。专用SoC一般专用于某类系统中,不为一般用户所知。一个有代表性的产品是NXP的Smart XA,它将XA单片机内核和支持超过2048位复杂RSA算法的CCU单元制作在一块硅片上,形成一个可加载Java或C语言的专用SoC,可用于Internet安全方面。

1.2.2 ARM处理器

ARM(Advanced RISC Machines),既可以认为是一个公司的名字,也可以认为是对一类微处理器的通称,还可以认为是一种技术的名字。1991年ARM公司成立于英国剑桥,主要出售芯片设计技术的授权。目前,采用ARM技术知识产权(IP)核的微处理器,即通常所说的ARM微处理器,已广泛应用于工业控制、消费类电子产品、通信系统、网络系统、无线系统等各个领域。

1.ARM微处理器的应用领域

① 工业控制领域:作为32位的RISC架构,基于ARM核的微控制器芯片不但占据了高端微控制器市场的大部分市场份额,同时也逐渐向低端微控制器应用领域扩展。ARM微控制器的低功耗、高性价比,向传统的8位/16位微控制器提出了挑战。

② 无线通信领域:目前已有超过85%的无线通信设备采用了ARM技术,ARM以其高性能和低成本,在该领域的地位日益巩固。

③ 网络应用:随着宽带技术的推广,采用ARM技术的ADSL芯片正逐步获得竞争优势。此外,ARM在语音及视频处理上进行了优化,并获得广泛支持,也对DSP的应用领域提出了挑战。

④ 消费类电子产品:ARM技术在目前流行的数字音频播放器、数字机顶盒和游戏机中得到广泛采用。

⑤ 成像和安全产品:现在流行的数码相机和打印机中绝大部分采用ARM技术。手机中的32位SIM智能卡也采用了ARM技术。

2.ARM微处理器的特点

① 体积小、低功耗、低成本、高性能;

② 支持Thumb(16位)/ARM(32位)双指令集,兼容8位/16位器件;

③ 大量使用寄存器,指令执行速度更快;

④ 大多数数据操作都在寄存器中完成;

⑤ 寻址方式灵活简单,执行效率高;

⑥ 指令长度固定。

3.ARM微处理器系列

目前常用的ARM处理器有ARM7系列、ARM9系列、ARM9E系列、ARM10E系列、SecurCore系列、Intel的StrongARM、Intel的Xscale等。其中,ARM7、ARM9、ARM9E和ARM10E为4个通用处理器系列,每个系列提供一套相对独特的性能来满足不同应用领域的需求。如ARM7系列适用于工业控制、网络设备、移动电话等应用;ARM9、ARM9E和ARM10E系列则更适合无线设备、消费类电子产品的设计;SecurCore系列专门为安全要求较高的应用而设计。

4.常用的ARM芯片生产厂家

(1)NXP Semiconductors

NXP Semiconductors(恩智浦半导体)是2006年从皇家飞利浦体系中独立出的半导体公司,共有超过6700位研发工程师,总部仍设在荷兰的Eindhoven,为欧洲第二大半导体公司,且名列全球前十强的行列。NXP公司的ARM处理器主要为LPC系列芯片,主要包括以下几大系列。

● LPC1000系列

NXP LPC1000先进的高度集成的微控制器基于ARM Cortex-M3内核,专为那些需要在经济型32位微控制器上开展高性能低功耗的嵌入式应用而设计,该系列微控制器在闪存或内存的运行频率最高可达到80MHz。

NXP LPC1000系列ARM具有丰富的外设资源,最高配置包括512KB片内Flash程序存储器、64KB片内SRAM、8通道GPDMA控制器、4个32位通用定时器、1个8通道12位ADC、1个10位DAC、1路电机控制PWM输出、1个正交编码器接口、6路通用PWM输出、1个看门狗定时器及1个独立供电的超低功耗RTC。

NXP LPC1000系列ARM还集成了大量的通信接口:1个以太网MAC、1个USB 2.0全速接口、4个UART接口、2路CAN、2个SSP接口、1个SPI接口、3个I2C接口、2路I2S输入和2路I2S输出。

按照推出的时间次序进行排列,NXP的Cortex产品线主要有LPC1700、LPC1300及LPC1100等几个系列器件。

● LPC2000系列

NXP LPC2000系列基于一个支持实时仿真和跟踪的16/32位ARM7TDMI-S CPU,并带有大容量嵌入的高速Flash存储器。128位宽度的存储器接口和独特的加速结构使32位代码能够在最大时钟速率下运行。对代码规模有严格控制的应用可使用16位Thumb模式将代码规模降低超过30%,而性能的损失却很小。

NXP LPC2000系列采用非常小的64脚封装、极低的功耗、多个32位定时器、4路10位ADC、PWM输出及多达9个外部中断,这使它们特别适用于工业控制、医疗系统、访问控制和电子收款机(POS)等应用领域。由于内置了宽范围的串行通信接口、以太网、802.11及USB功能,也非常适合于通信网关、协议转换器、嵌入式软件调制解调器及其他各种类型的应用。

NXP LPC2000微控制器系列产品线十分丰富,包括LPC2100、LPC2200、LPC2300、LPC2400、LPC2800和LPC2900等几个系列器件。

● LPC3000系列

NXP LPC3000系列是基于ARM926EJ内核的32位微控制器,提供矢量浮点协处理器和集成移动USB,可以在最低达0.9V的超低电压下运行。主要针对消费电子、工业、医疗和汽车电子应用,为设计师提供一种高性能、高功耗效率的微控制器。

NXP LPC3200系列采用90nm工艺设计,结合了1个ARM926EJ核、1个矢量浮点协处理器(VFP)、1个LCD控制器、1个以太网MAC、On-The-Go USB、1个高效的总线阵列及大量的标准外设,使得嵌入式系统设计师能够在不损失任何性能的前提下减少片上器件数量,并且最大程度地节省功耗。

NXP LPC3200结合了高性能、低功耗和众多的外设,被设计用来为那些要求高速并同时进行通信的应用提供灵活性。其特性包括:I2C、I2S、SPI、SSP、UART、USB、OTG、SD、PWM、具有触摸屏接口的A/D、10/100以太网MAC和一个支持STN和TFT面板的24位LCD控制器。该系列支持DDR、SDR、SRAM和闪存,并且提供从Nand闪存、SPI存储器、UART或SRAM启动的可选项。

NXP LPC3000微控制器系列包括LPC31x0和LPC32x0等几个系列器件。

● LH7系列

NXP还推出高度集成的基于ARM7和ARM9的多用途微控制器系列产品。这些器件非常适合多种应用领域,包括工业控制、智能家电和PDA等。

LH75xxx系列采用ARM7TDMI内核、32位处理器、32KB片上SRAM、LCD色彩和灰度控制器、外加3个UART、1个SPI接口、CAN总线2.0B、3个16位计数/定时器、1个A/D转换器、看门狗定时器和低电压检测器。该系列产品是那些需要集成LCD控制的低成本设计绝佳的解决方法。应用范围包括全球定位系统、PDA、打印机/复印机、安全控制面板和智能家电等。

LH79xxx系列采用32位ARM720T内核与8KB缓存、存储器管理单元、LCD色彩控制器和32KB SRAM。同时还包括一些增强型外围设备,如DMA控制器、串行和并行接口、红外支持、计数/定时器、实时时钟、看门狗定时器、脉宽调制器和片上锁相环。

LH7Axxx系列采用32位的ARM922T内核,带有8KB的指令缓存、8KB的数据缓存和80KB的帧缓冲存储器。它们包含相同的LCD控制器,支持1024×768、64k色的STN、CSTN、TFT和AD-TFT显示屏。为包括消费、娱乐、工业/商业、医药和汽车等各种应用提供了强大、灵活的特性。

(2)Samsung

Samsung公司的ARM处理器是目前使用最广的ARM处理器之一。Samsung公司针对ARM处理器的应用范围将其处理器分成3类。

① 手持设备。适合各类低功耗产品,常用的芯片有:S3C44B0(ARM7TDMI核心,主频66MHz,集成STN LCD控制器,无网络接口)和S3C2410(ARM920T核心,主频200MHz,支持TFT,USB Host,Device,SD Host及MMC接口,触摸屏接口,Nand Flash直接引导,无网络接口)。适用产品:POS、PDA、E-Book、GPS、智能电话、电子书包、机顶盒、手持游戏机、电子相册、视频监控、智能控制仪表等。

② 网络设备。常用的芯片有:S3C4510B(ARM7TDMI核心,主频50MHz,MAC接口,无LCD控制器)和S3C2510(ARM940T核心,主频166MHz,2ch MAC接口,DES/3DES加密,PCI总线,USB Host和Device)。适用产品:以太网HUB、交换机、路由器、VOIP、XDSL Modem、WLAN产品、家庭网关等。

③ ADSL。常用的芯片有S5N8947(ARM7,66MHz,2ch MAC,USB,ATM SAR)。适用产品:ADSL桥接Modem、ADSL路由器、ADSL网关、VOIP、VODSL、DSLAM等。

(3)TI

TI公司的OMAP处理器内含一个增强型处理器(ARM925)和TI公司最新研制出的低功耗定点DSP(TMS320C55x)。该双核心组件设计的目的就是为了有效处理多媒体应用和MMI应用,其中,ARM925用于执行操作系统,而DSP用于处理所有多媒体应用。

OMAP平台由一个微处理器子系统(ARM)、一个DSP子系统、一个内存接口流量控制器、一些专用的多媒体应用外围设备(MWA)和一个多任务接口构成。在OMAP中,每个核心的最高执行速度都可达到150MHz,并且都可以随作业频率的降低而作出相应改动以节约功耗。C55x DSP内有5组数据总线,在一个周期内允许3次读取作业和2次写入作业。C55x最独特的地方就是具备双MAC结构,并且其内部具有一个硬件图形加速器。

OMAP嵌入式处理器系列是专门为支持第三代(3G)无线终端应用而设计的应用处理器体系结构。OMAP嵌入式处理器系列包括应用处理器及集成的基带应用处理器,目前已广泛应用于PDA、无线远程通信、医疗器械等领域。

(4)Motorola

Motorola公司的32位处理器有68k系列、DragonBall、PowerPC等系列。其中68k系列和PowerPC系列都是独立的处理器体系结构。DragonBall系列有继承68k系列的MC68xx328 CPU,还包括集成ARM内核的MC9328系列,如MC9328MX1,MC9328MXL等系列产品。

MC9328MX1处理器是DrangonBall家族中的第五代工业标准的产品,其特点是低功耗、高集成度,用于个人手持产品等。采用ARM920T微处理核,拥有蓝牙无线接口,提供智能外围组合接口、高档处理核、电源管理系统,主频可达200MHz。组合模块包含:LCD控制器、静态RAM,USB接口支持,A/D转换(包括触摸屏),以及一个MMC/SD主控器,提供蓝牙技术应用、SIM卡接口、MemoryStick接口、I2C和SSI总线等。

另外,从Motorola半导体独立出来的Freescale(飞思卡尔)公司推出的ColdFire(冷火)系列微控制器,在低端工业控制领域的应用中也有不俗的表现。

(5)Intel

Intel公司在原StrongARM的基础上发展了第二代嵌入式微处理器体系结构——Xscale。Xscale微处理器除了具有比上一代StrongARM微处理器更好的数据处理速度外,还具有更低功耗及强大的外围设备集成能力。

Intel公司的80200是以Xscale体系结构所设计的一个嵌入式微处理器。80200使用Intel公司的超流水线RISC技术,具有32KB的指令Cache和32KB的数据Cache,还具有32位的指令和数据MMU。

PXA255和PXA270是Xscale系列的典型代表,它们是基于PDA应用的微处理器,内部集成了很多手持设备需要的外围设备,包括RTC、看门狗、USB、串行口、蓝牙控制器,可外扩PS/2、以太网、红外线、LCD触摸屏控制器等。