2.3.1 ARM微处理器命名规则
为适应不同的应用场合,ARM公司发布了多个处理器系列,每种处理器都采用一个特定的ARM体系结构。为了便于记忆、理解ARM公司按照一定的规则来命名不同体系的处理器。
ARM 处理器产品,通常以ARM【x】【y】【z】【T】【D】【M】【I】【E】【J】【F】【-S】形式出现。ARM处理器命名规则中这些后缀的具体含义:
l x 系列,号如ARM7、ARM9
l y 存储管理/保护单元
l z Cache
l T 处理器支持Thumb指令集
l D 支持JTAG调试器
l M 支持长乘法指令
l I 有嵌入式跟踪宏单元
l E 支持增强指令(基于TDMI)
l J 支持JAVA硬件加速(Jazelle)
l F 支持向量浮点单元
l S 可综合版本
另外,还有一些附加的要点:
l ARM7TDMI之后的所有ARM内核,即使“ARM”标志后没有包含“TDMI”字符,也都默认包含了TDMI的功能特性;
l JTAG是由IEEE 1149.1标准测试访问端口和边界扫描结构来描述的,它是ARM用来发送和接收处理器内核与测试仪器之间调试信息的一系列协议。
l 嵌入式ICE宏单元是建立在处理器内部用来设置断点和观察点的调试硬件。
l 可综合,处理器内核是以源代码形式提供的(软核)。
2.3.2 ARM微处理器系列
目前,ARM推出的处理器主要包括:ARM7、ARM9、ARM9E、ARM10E、ARM11、Cortex和SecurCore等。另外还有一些其合作公司推出的产品,例如:intel的StrongARM、Xscale等。每个系列都是针对不同的应用场合的,其拥有不同的特性。下面将分别介绍其特点。
2.3.2.1 ARM7系列
ARM7系列处理器主要用于对功耗和成本要求比较苛刻的消费类产品,其最高主频可以到达130MIPS(MIPS指每秒执行的百万条指令数),内核采用冯?诺伊曼体系结构,指令执行采用3级流水线,使用ARMv4指令集。
ARM7系列包括ARM7TDMI、ARM7TDMI-S、ARM7EJ-S和ARM720T 4种类型。
ARM7系列处理器主要具有以下特点:
l 成熟的大批量的32位RICS芯片。
l 最高主频到达130MIPS。
l 提供0.9 MIPS/MHz的性能。
l 功耗低。
l 代码密度高,兼容16位微处理器。
l 被业界众多IC制造商采用,得到了广泛的操作系统支持。
l 开发工具多、EDA仿真模型多。
l 调试机制完善。
l 提供0.25μm、0.18μm及0.13μm的生产工艺。
l 代码与ARM9系列、ARM9E系列以及ARM10E系列兼容。
ARM7系列处理器主要应用于下面一些场合:
l 个人音频设备(MP3播放器、WMA播放器、AAC播放器)。
l 接入级的无线设备。
l 喷墨打印机。
l 数码照相机。
l PDA。
2.3.2.2 ARM9系列
ARM9系列采用ARM9TDMI的处理器核,存储系统采用哈佛结构,指令执行采用5级流水线。ARM9处理器能够运行在比ARM7更高的时钟频率上。ARM9系列处理器包括:ARM920T、ARM922T、ARM940T。其主要的点有:
l 支持32位ARM指令集和16位Thumb指令集。
l 五级流水线。
l 提供1.1 MIPS/MHz的性能。
l 单一的AMBA总线接口。
l 支持MMU 或MPU。
l 统一的数据和指令Cache。
l 提供0.18μm、0.15μm及0.13μm的生产工艺。
ARM9系列处理器具体应用于下面一些场合:
l 下一代无线设备,包括视频电话和PDA等。
l 数字消费品,包括机顶盒、家庭网关、MP3播放器和MPEG4播放器。
l 成像设备,包括打印机、数码照相机和数码摄像机。
l 汽车、通信和信息系统。
2.3.2.3 ARM9E系列
ARM9E系列包括的处理器有:ARM926EJ-S、ARM946E-S、ARM966E-S。ARM946E-S包括TCM、Cache和一个MPU。TCM和Cache的大小可配置。该处理器是针对要求有确定的实时响应的嵌入式控制而设计的。ARM966E-S有可配置的TCM,但没有MPU和Cache扩展。ARM926EJ-S包含Jazelle技术,可加速Java字节码的执行,它有MMU、可配置的TCM以及数据/指令Cache。ARM926EJ-S内核为可综合的处理器内核,是针对小型便携式Java设备而设计的。ARM9E系列处理器的特点有:
l 支持32位ARM指令集和16位Thumb指令集。
l 五级流水线。
l 单一的AMBA总线接口。
l 支持MMU 或MPU。
l 统一的数据和指令Cache。
l 提供0.18μm、0.15μm及0.13μm的生产工艺。
l 包含DSP指令集
l 在0.13μm工艺下,可以达到300MIPS的性能。
l 可选的VFP9浮点协处理器。
l 高性能的AHB总线
l 集成实时跟踪和调试功能
l 紧耦合存储器(TCM)接口。
ARM9E系列处理器具体应用于下面一些场合:
l 下一代无线设备,包括视频电话和PDA等。
l 数字消费品,包括机顶盒、家庭网关、MP3播放器和MPEG4播放器。
l 成像设备,包括打印机、数码照相机和数码摄像机。
l 存储设备,包括DVD或HDD等。
l 工业控制,包括电机控制等。
l 汽车、通信和信息系统的ABS和车体控制。
l 网络设备,包括VoIP、WirelessLAN和xDSL等。
2.3.2.4 ARM10E系列
ARM10E系列具有高性能、低功耗的特点。ARM10E将流水线扩展到6级,VFP明显增强了浮点运算性能并与IEEE 754.1985浮点标准兼容,提供了64位的Load/Store体系。提供1.25 MIPS/MHz的性能。
ARM10E系列包括ARM1020E、ARM1022E和ARM1026EJ-S 3种类型。
ARM10E系列处理器具体应用于下面一些场合:
l 下一代无线设备,包括视频电话和PDA、笔记本电脑和互联网设备。
l 数字消费品,包括机顶盒、家庭网关、MP3播放器和MPEG4播放器。
l 成像设备,包括打印机、数码照相机和数码摄像机。
l 汽车、通信和信息系统等。
l 工业控制,包括马达控制等。
2.3.2.5 ARM11系列
ARM11系列处理器采用ARMv6架构,它集成了一条具有独立的Load/Stroe和算术流水线的8级流水线,增强了多媒体功能。ARM11系列处理器以32位的成本实现了64位的性能。ARM11以其高性能,低功耗的的特性,适合多媒体和无线产品应用。ARM11系列包括:ARM1176JZ(F)-S、ARM1156T2(F)-S、ARM1136(F)-S和ARM11-MPCore。MPCore提供了Cache一致性,且每个可以支持1~4个ARM11核。
ARM11的特性主要有:
l 支持SIMD指令集。
l Thumb-2指令集。
l TrustZone技术,提供片上安全机制。
l 多口64位的AMBA3存储系统。
l 向量中断接口和低中断延迟,提供实时性能。
l 可选的向量浮点处理器
l 支持DSP扩展
l 支持jazelle技术
l 由IME支持的省电模式有效延长电池使用时间
2.3.2.6 SecurCore系列
SecurCore系列处理器提供了基于高性能的32位RISC技术的安全解决方案。SecurCore系列处理器除了具有体积小、功耗低、代码密度高等特点外,还具有它自己特别优势,即提供了安全解决方案支持。SecureCore系列处理器主要应用于一些安全产品及应用系统,包括电子商务、电子银行业务、网络、移动媒体和认证系统等。
SecurCore系列包含SC100、SC110、SC200和SC210 4种类型。
下面总结了SecurCore系列的主要特点:
l 支持ARM指令集和Thumb指令集,以提高代码密度和系统性能;
l 采用软内核技术以提供最大限度的灵活性,可以防止外部对其进行扫描探测;
l 提供了安全特性,可以抵制攻击;
l 提供面向智能卡和低成本的存储保护单元MPU;
l 可以集成用户自己的安全特性和其他的协处理器。
2.3.2.7 ARM Cortex系列
ARM Cortex系列处理器采用ARMv7架构,Contex系统定义了三个针对不同应用的分支:基于v7A的称为“Cortex-A”系列,基于v7R的称为“Cortex-R”系列,基于v7M的称为“Cortex-M3” 系列。 Cortex处理器系列三个分支因其面向不同的应用领域,其采用的技术各不相同。
ARM Cortex-M3处理器是为对成本和功耗敏感的嵌入式应用而设计的,目标是以8位单片机的价格实现32位的高性能。ARM Cortex-M3处理器只是使用Thumb-2指令集,采用32位哈佛微体系结构。
ARM Cortex-R系列主要适用于实时系统的嵌入式处理器,ARM Cortex-R系列处理器目前包括ARM Cortex-R4和ARM Cortex-R4F两个型号,主要适用于实时系统的嵌入式处理器。
ARM Cortex-A系列面向使用复杂操作系统及用户应用的应用处理器,如:互联网设备和消费类多媒体设备等。ARM Cortex-A处理器包括:ARM Cortex-A8、ARM Cortex-A9、ARM Cortex-A9 MPCore。
ARM Cortex-A8处理器技术特点有:
l 采用高性能、更低功耗和更高代码密度Thumb-2指令集,同时兼容ARM指令集。
l 采用了NEON技术,增强多媒体处理能力。
l 超标量体系结构流水线,能够同时执行多条指令。
l 提供最高2000 DMIPS的性能(2.0 DMIPS/MHz,主频600 MHz 到1 GHz)。
l 先进的分支预测技术。
l TrustZone技术,提供片上安全机制。
l 包括Jazelle-RCTJava加速技术,对实时(JIT)和动态调整编译(DAC)提供最优化,同时减少内存占用空间高达3倍。
l 集成了一个可调尺寸的二级高速缓冲存储器,能够同高速的16 KB或者32 KB一级高速缓冲存储器一起工作,从而达到最快的读取速度和最大的吞吐量。
l 支持智能能源管理(IEM,Intelligent Energy Manger)技术的ARM Artisan库以及先进的泄漏控制技术,使得Cortex-A8处理器实现了非凡的速度和功耗效率。在65 nm上艺下,ARM cortex-A8处理器的功耗不到300 mW,能够提供高性能和低功耗。
2.3.3 ARM 微处理器的芯片选型
在嵌入式系统规划时,系统选型至关重要。系统选型应从软件和硬件两个方面考虑。系统硬件选型中以嵌入式处理器的选择最为关键。这里介绍几个在芯片选型时要考虑的几个因素。
2.3.3.1 芯片自身性能与集成度方面的因素
(1)有无MMU
如果希望使用Windows CE或Linux等操作系统以减少软件开发时间,就需要选择ARM720T以上带有MMU(Memory Management Unit)功能的ARM芯片,ARM720T、StrongARM、ARM920T、ARM922T、ARM946T都带有MMU功能。而ARM7TDMI没有MMU,不支持Windows CE和大部分的Linux;但目前有uCLinux等少数几种Linux不需要MMU的支持。
(2)芯片效率
系统时钟决定了ARM芯片的处理速度。ARM7的处理速度为0.97MIPS/MHz,常见的ARM7芯片系统主时钟为20~133MHz,ARM9的处理速度为1.1MIPS/MHz,常见的ARM9的系统主时钟为100~233MHz,ARM10最高可以达到700MHz。应该根据嵌入式系统应用需要的运算量选择适当主频的芯片。嵌入式系统设计中不能盲目最求高效率,也不要一味的最求成本而选择过低性能的芯片。
(3)内部存储器容量
在不需要大容量存储器时,可以考虑选用有内置存储器的ARM芯片。
(4)USB接口
许多ARM芯片内置有USB控制器,有些芯片甚至同时有USB Host和USB Slave控制器。
(5)GPIO数量
在某些芯片供应商提供的说明书中,往往申明的是最大可能的GPIO数量,但是有许多引脚是和地址线、数据线、串口线等引脚复用的。这样在系统设计时需要计算实际可以使用的GPIO数量。
(6)中断控制器
ARM内核只提供快速中断(FIQ)和标准中断(IRQ)两个中断向量。但各个半导体厂家在设计芯片时加入了自己定义的中断控制器,以便支持诸如串行口、外部中断、时钟中断等硬件中断。外部中断控制是选择芯片必须考虑的重要因素,合理的外部中断设计可以很大程度地减少任务调度工作量。例如PHILIPS公司的SAA7750,所有GPIO都可以设置成FIQ或IRQ,并且可以选择上升沿、下降沿、高电平和低电平4种中断方式。这使得红外线遥控接收、指轮盘和键盘等任务都可以作为背景程序运行。而Cirrus Logic公司的EP7312芯片只有4个外部中断源,并且每个中断源都只能是低电平或高电平中断,这样在接收红外线信号的场合必须用查询方式,浪费大量CPU时间。
(7)IIS(Integrate Interface of Sound)接口
即集成音频接口。如果设计音频应用产品,IIS总线接口是必需的。
(8)nWAIT信号
这是一个外部总线速度控制信号。不是每个ARM芯片都提供这个信号引脚,利用这个信号与廉价的GAL芯片就可以实现与符合PCMCIA标准的WLAN卡和Bluetooth卡的接口,而不需要外加高成本的PCMCIA专用控制芯片。另外,当需要扩展外部DSP协处理器时,此信号也是必需的。
(9)RTC(Real Time Clock)
如果嵌入式系统是否需要RTC,则要选择内集成RTC功能的芯片,这样功耗和使用都简单,很多ARM芯片都提供实时时钟功能,如Cirrus Logic公司的EP7312和三星的S3C2440等芯片。一般手持类设备都需要RTC来记录日期和时间,如:手机。
(10)LCD控制器
有些ARM芯片内置LCD控制器,有的甚至内置64KB彩色TFT LCD控制器。在设计PDA和手持式显示记录设备时,选用内置LCD控制器的ARM芯片(如S3C2410)较为适宜。
(11)PWM输出
有些ARM芯片有2~8路PWM输出,可以用于电机控制或语音输出等场合。
(12)ADC和DAC
有些ARM芯片内置2~8通道8~12位通用ADC,可以用于电池检测、触摸屏和温度监测等。PHILIPS的SAA7750更是内置了一个16位立体声音频ADC和DAC,并且带耳机驱动。
(13)扩展总线
大部分ARM芯片具有外部SDRAM和SRAM扩展接口,不同的ARM芯片可以扩展的芯片数量即片选线数量不同,外部数据总线有8位、16位或32位。为某些特殊应用设计的ARM芯片(如德国Micronas的PUC3030A)没有外部扩展功能。
(14)UART和IrDA
几乎所有的ARM芯片都具有1~2个UART接口,可以用于和PC机通信或用Angel进行调试。一般的ARM芯片通信波特率为115200bit/s,少数专为蓝牙技术应用设计的ARM芯片的UART通信波特率可以达到920kbit/s,如Linkup公司L7205。
(15)多核考虑
为了增强多任务处理能力、数学运算能力、多媒体以及网络处理能力,某些供应商提供的ARM芯片内置多个芯核,目前常见的ARM+DSP,ARM+FPGA,ARM+ARM等结构。
(16)内置FPGA
有些ARM芯片内置有FPGA,适合于通信等领域。表1.8总结了ARM+FPGA结构的ARM芯片。
(17)时钟计数器和看门狗
一般ARM芯片都具有2~4个16位或32位时钟计数器和一个看门狗计数器。
(18)电源管理功能
ARM芯片的耗电量与工作频率成正比,一般ARM芯片都有低功耗模式、睡眠模式和关闭模式。
(19)DMA控制器
有些ARM芯片内部集成有DMA(Direct Memory Access)接口,可以和硬盘等外部设备高速交换数据,同时减少数据交换时对CPU资源的占用。
另外,还可以选择的内部功能部件有:HDLC、SDLC、CD-ROM Decoder、Ethernet MAC、VGA controller、DC-DC。可以选择的内置接口有:IIC、SPDIF、CAN、SPI、PCI、PCMCIA。
最后需说明的是封装问题。ARM芯片现在主要的封装有QFP、TQFP、PQFP、LQFP、BGA、LBGA等形式,BGA封装具有芯片面积小的特点,可以减少PCB板的面积,但是需要专用的焊接设备,无法手工焊接。另外一般BGA封装的ARM芯片无法用双面板完成PCB布线,需要多层PCB板布线。
2.3.3.2其他因素
2.3.3.2.1 芯片稳定性
芯片稳定性是首先要考虑的问题。硬件设计中也是会存在BUG的,尤其是一些小的设计公司设计的芯片,更容易存在问题。我们选择芯片时,首先选择经过产品量产的芯片,经过产品考验的芯片我们可以放心使用,即便有问题也可以克服;其次可以看公司规模和信誉度,相比之下,规模大、信誉好的公司的产品还是值得信任的。
2.3.3.2.2 芯片供应商的技术支持能力
嵌入式开发问题多种多样,好的技术支持能够保证我们快速的完成产品设计。
总之嵌入式系统设计中芯片选型是综合考虑各方因素的结果。
文章来自: http://blog.mcuol.com/User/fenghua/Article/13186_1.htm
2.3.2.4 ARM10E系列
ARM10E系列具有高性能、低功耗的特点。ARM10E将流水线扩展到6级,VFP明显增强了浮点运算性能并与IEEE 754.1985浮点标准兼容,提供了64位的Load/Store体系。提供1.25 MIPS/MHz的性能。
ARM10E系列包括ARM1020E、ARM1022E和ARM1026EJ-S 3种类型。
ARM10E系列处理器具体应用于下面一些场合:
l 下一代无线设备,包括视频电话和PDA、笔记本电脑和互联网设备。
l 数字消费品,包括机顶盒、家庭网关、MP3播放器和MPEG4播放器。
l 成像设备,包括打印机、数码照相机和数码摄像机。
l 汽车、通信和信息系统等。
l 工业控制,包括马达控制等。
2.3.2.5 ARM11系列
ARM11系列处理器采用ARMv6架构,它集成了一条具有独立的Load/Stroe和算术流水线的8级流水线,增强了多媒体功能。ARM11系列处理器以32位的成本实现了64位的性能。ARM11以其高性能,低功耗的的特性,适合多媒体和无线产品应用。ARM11系列包括:ARM1176JZ(F)-S、ARM1156T2(F)-S、ARM1136(F)-S和ARM11-MPCore。MPCore提供了Cache一致性,且每个可以支持1~4个ARM11核。
ARM11的特性主要有:
l 支持SIMD指令集。
l Thumb-2指令集。
l TrustZone技术,提供片上安全机制。
l 多口64位的AMBA3存储系统。
l 向量中断接口和低中断延迟,提供实时性能。
l 可选的向量浮点处理器
l 支持DSP扩展
l 支持jazelle技术
l 由IME支持的省电模式有效延长电池使用时间
2.3.2.6 SecurCore系列
SecurCore系列处理器提供了基于高性能的32位RISC技术的安全解决方案。SecurCore系列处理器除了具有体积小、功耗低、代码密度高等特点外,还具有它自己特别优势,即提供了安全解决方案支持。SecureCore系列处理器主要应用于一些安全产品及应用系统,包括电子商务、电子银行业务、网络、移动媒体和认证系统等。
SecurCore系列包含SC100、SC110、SC200和SC210 4种类型。
下面总结了SecurCore系列的主要特点:
l 支持ARM指令集和Thumb指令集,以提高代码密度和系统性能;
l 采用软内核技术以提供最大限度的灵活性,可以防止外部对其进行扫描探测;
l 提供了安全特性,可以抵制攻击;
l 提供面向智能卡和低成本的存储保护单元MPU;
l 可以集成用户自己的安全特性和其他的协处理器。
2.3.2.7 ARM Cortex系列
ARM Cortex系列处理器采用ARMv7架构,Contex系统定义了三个针对不同应用的分支:基于v7A的称为“Cortex-A”系列,基于v7R的称为“Cortex-R”系列,基于v7M的称为“Cortex-M3” 系列。 Cortex处理器系列三个分支因其面向不同的应用领域,其采用的技术各不相同。
ARM Cortex-M3处理器是为对成本和功耗敏感的嵌入式应用而设计的,目标是以8位单片机的价格实现32位的高性能。ARM Cortex-M3处理器只是使用Thumb-2指令集,采用32位哈佛微体系结构。
ARM Cortex-R系列主要适用于实时系统的嵌入式处理器,ARM Cortex-R系列处理器目前包括ARM Cortex-R4和ARM Cortex-R4F两个型号,主要适用于实时系统的嵌入式处理器。
ARM Cortex-A系列面向使用复杂操作系统及用户应用的应用处理器,如:互联网设备和消费类多媒体设备等。ARM Cortex-A处理器包括:ARM Cortex-A8、ARM Cortex-A9、ARM Cortex-A9 MPCore。
ARM Cortex-A8处理器技术特点有:
l 采用高性能、更低功耗和更高代码密度Thumb-2指令集,同时兼容ARM指令集。
l 采用了NEON技术,增强多媒体处理能力。
l 超标量体系结构流水线,能够同时执行多条指令。
l 提供最高2000 DMIPS的性能(2.0 DMIPS/MHz,主频600 MHz 到1 GHz)。
l 先进的分支预测技术。
l TrustZone技术,提供片上安全机制。
l 包括Jazelle-RCTJava加速技术,对实时(JIT)和动态调整编译(DAC)提供最优化,同时减少内存占用空间高达3倍。
l 集成了一个可调尺寸的二级高速缓冲存储器,能够同高速的16 KB或者32 KB一级高速缓冲存储器一起工作,从而达到最快的读取速度和最大的吞吐量。
l 支持智能能源管理(IEM,Intelligent Energy Manger)技术的ARM Artisan库以及先进的泄漏控制技术,使得Cortex-A8处理器实现了非凡的速度和功耗效率。在65 nm上艺下,ARM cortex-A8处理器的功耗不到300 mW,能够提供高性能和低功耗。
2.3.3 ARM 微处理器的芯片选型
在嵌入式系统规划时,系统选型至关重要。系统选型应从软件和硬件两个方面考虑。系统硬件选型中以嵌入式处理器的选择最为关键。这里介绍几个在芯片选型时要考虑的几个因素。
2.3.3.1 芯片自身性能与集成度方面的因素
(1)有无MMU
如果希望使用Windows CE或Linux等操作系统以减少软件开发时间,就需要选择ARM720T以上带有MMU(Memory Management Unit)功能的ARM芯片,ARM720T、StrongARM、ARM920T、ARM922T、ARM946T都带有MMU功能。而ARM7TDMI没有MMU,不支持Windows CE和大部分的Linux;但目前有uCLinux等少数几种Linux不需要MMU的支持。
(2)芯片效率
系统时钟决定了ARM芯片的处理速度。ARM7的处理速度为0.97MIPS/MHz,常见的ARM7芯片系统主时钟为20~133MHz,ARM9的处理速度为1.1MIPS/MHz,常见的ARM9的系统主时钟为100~233MHz,ARM10最高可以达到700MHz。应该根据嵌入式系统应用需要的运算量选择适当主频的芯片。嵌入式系统设计中不能盲目最求高效率,也不要一味的最求成本而选择过低性能的芯片。
(3)内部存储器容量
在不需要大容量存储器时,可以考虑选用有内置存储器的ARM芯片。
(4)USB接口
许多ARM芯片内置有USB控制器,有些芯片甚至同时有USB Host和USB Slave控制器。
(5)GPIO数量
在某些芯片供应商提供的说明书中,往往申明的是最大可能的GPIO数量,但是有许多引脚是和地址线、数据线、串口线等引脚复用的。这样在系统设计时需要计算实际可以使用的GPIO数量。
(6)中断控制器
ARM内核只提供快速中断(FIQ)和标准中断(IRQ)两个中断向量。但各个半导体厂家在设计芯片时加入了自己定义的中断控制器,以便支持诸如串行口、外部中断、时钟中断等硬件中断。外部中断控制是选择芯片必须考虑的重要因素,合理的外部中断设计可以很大程度地减少任务调度工作量。例如PHILIPS公司的SAA7750,所有GPIO都可以设置成FIQ或IRQ,并且可以选择上升沿、下降沿、高电平和低电平4种中断方式。这使得红外线遥控接收、指轮盘和键盘等任务都可以作为背景程序运行。而Cirrus Logic公司的EP7312芯片只有4个外部中断源,并且每个中断源都只能是低电平或高电平中断,这样在接收红外线信号的场合必须用查询方式,浪费大量CPU时间。
(7)IIS(Integrate Interface of Sound)接口
即集成音频接口。如果设计音频应用产品,IIS总线接口是必需的。
(8)nWAIT信号
这是一个外部总线速度控制信号。不是每个ARM芯片都提供这个信号引脚,利用这个信号与廉价的GAL芯片就可以实现与符合PCMCIA标准的WLAN卡和Bluetooth卡的接口,而不需要外加高成本的PCMCIA专用控制芯片。另外,当需要扩展外部DSP协处理器时,此信号也是必需的。
(9)RTC(Real Time Clock)
如果嵌入式系统是否需要RTC,则要选择内集成RTC功能的芯片,这样功耗和使用都简单,很多ARM芯片都提供实时时钟功能,如Cirrus Logic公司的EP7312和三星的S3C2440等芯片。一般手持类设备都需要RTC来记录日期和时间,如:手机。
(10)LCD控制器
有些ARM芯片内置LCD控制器,有的甚至内置64KB彩色TFT LCD控制器。在设计PDA和手持式显示记录设备时,选用内置LCD控制器的ARM芯片(如S3C2410)较为适宜。
(11)PWM输出
有些ARM芯片有2~8路PWM输出,可以用于电机控制或语音输出等场合。
(12)ADC和DAC
有些ARM芯片内置2~8通道8~12位通用ADC,可以用于电池检测、触摸屏和温度监测等。PHILIPS的SAA7750更是内置了一个16位立体声音频ADC和DAC,并且带耳机驱动。
(13)扩展总线
大部分ARM芯片具有外部SDRAM和SRAM扩展接口,不同的ARM芯片可以扩展的芯片数量即片选线数量不同,外部数据总线有8位、16位或32位。为某些特殊应用设计的ARM芯片(如德国Micronas的PUC3030A)没有外部扩展功能。
(14)UART和IrDA
几乎所有的ARM芯片都具有1~2个UART接口,可以用于和PC机通信或用Angel进行调试。一般的ARM芯片通信波特率为115200bit/s,少数专为蓝牙技术应用设计的ARM芯片的UART通信波特率可以达到920kbit/s,如Linkup公司L7205。
(15)多核考虑
为了增强多任务处理能力、数学运算能力、多媒体以及网络处理能力,某些供应商提供的ARM芯片内置多个芯核,目前常见的ARM+DSP,ARM+FPGA,ARM+ARM等结构。
(16)内置FPGA
有些ARM芯片内置有FPGA,适合于通信等领域。表1.8总结了ARM+FPGA结构的ARM芯片。
(17)时钟计数器和看门狗
一般ARM芯片都具有2~4个16位或32位时钟计数器和一个看门狗计数器。
(18)电源管理功能
ARM芯片的耗电量与工作频率成正比,一般ARM芯片都有低功耗模式、睡眠模式和关闭模式。
(19)DMA控制器
有些ARM芯片内部集成有DMA(Direct Memory Access)接口,可以和硬盘等外部设备高速交换数据,同时减少数据交换时对CPU资源的占用。
另外,还可以选择的内部功能部件有:HDLC、SDLC、CD-ROM Decoder、Ethernet MAC、VGA controller、DC-DC。可以选择的内置接口有:IIC、SPDIF、CAN、SPI、PCI、PCMCIA。
最后需说明的是封装问题。ARM芯片现在主要的封装有QFP、TQFP、PQFP、LQFP、BGA、LBGA等形式,BGA封装具有芯片面积小的特点,可以减少PCB板的面积,但是需要专用的焊接设备,无法手工焊接。另外一般BGA封装的ARM芯片无法用双面板完成PCB布线,需要多层PCB板布线。
2.3.3.2其他因素
2.3.3.2.1 芯片稳定性
芯片稳定性是首先要考虑的问题。硬件设计中也是会存在BUG的,尤其是一些小的设计公司设计的芯片,更容易存在问题。我们选择芯片时,首先选择经过产品量产的芯片,经过产品考验的芯片我们可以放心使用,即便有问题也可以克服;其次可以看公司规模和信誉度,相比之下,规模大、信誉好的公司的产品还是值得信任的。
2.3.3.2.2 芯片供应商的技术支持能力
嵌入式开发问题多种多样,好的技术支持能够保证我们快速的完成产品设计。
总之嵌入式系统设计中芯片选型是综合考虑各方因素的结果。
文章来自: http://blog.mcuol.com/User/fenghua/Article/13186_1.htm