嵌入式系统技术应用与开发
上QQ阅读APP看书,第一时间看更新

2.1.3 ARM嵌入式微处理器系列

2.1.3 ARM嵌入式微处理器系列

ARM微处理器目前包括ARM7系列、ARM9系列、ARM9E系列、ARM10E系列、SecurCore系列和Cortex系列。除了具有ARM体系结构的共同特点以外,每一个系列的ARM微处理器都有各自的特点和应用领域。

1.ARM7系列

ARM7系列微处理器内核采用冯·诺依曼体系结构,内部具有3级流水线,使用的指令集版本号是ARMV4。ARM7 TDMI是ARM公司最早被业界普遍认可且得到了最为广泛应用的处理器,特别是在手机和PDA中。ARM7系列微处理器为低功耗的32位RISC处理器,最适合于要求低价位和低功耗的消费类应用。ARM7系列微处理器具有如下特点。

● 具有嵌入式ICE-RT逻辑,调试开发方便。

● 极低的功耗,适合对功耗要求较高的应用,如便携式产品。

● 能够提供0.9 MIPS/MHz的3级流水线结构。

● 代码密度高并兼容16位的Thumb指令集。

● 对操作系统的支持广泛,包括Windows CE、Linux、Palm OS等。

● 指令系统与ARM9系列、ARM9E系列和ARM10E系列兼容,便于用户的产品升级换代。

● 主频最高可达130 MIPS,高速的运算处理能力使其能胜任绝大多数的复杂应用。

ARM7系列微处理器的主要应用有工业控制设备、Internet设备、网络和调制解调器设备、移动电话等多种多媒体和嵌入式应用。ARM7系列微处理器主要包括ARM7TDMI、ARM7TDMI-S、ARM720T、ARM7EJ。

其中,ARM7TMDI是目前使用最广泛的32位嵌入式RISC处理器,属低端ARM处理器。TDMI的基本含义如下。

● T:支持16位压缩指令集Thumb。

● D:支持片上Debug,也即芯片内部带Debug模块,支持断点调试。

● M:内嵌硬件乘法器(Multiplier)。

● I:嵌入式ICE,支持片上断点和调试点。

ARM7TDMI内核支持64位结果的乘法,半字、有符号字节存取;32位寻址空间4 GB线性地址空间;它包含了嵌入式ICE模块以支持嵌入式系统调试。调试硬件由JTAG测试访问端口访问,JTAG控制逻辑被认为是处理器的一部分;具有广泛的第三方支持,并与ARM9 Thumb系列、ARM10 Thumb系列处理器相兼容。ARM7TDMI典型产品如Samsung公司的S3C44B0系列。ARM7系列微处理器主要用于对成本和功耗要求比较苛刻的消费类电子产品。

2.ARM9系列

ARM9系列微处理器的内核采用哈佛结构,将数据总线与指令总线分开,从而提高了对指令和数据访问的并行性,提高了效率。ARM9TDMI将流水线的级数从ARM7TDMI的3级增加到5级,ARM9TDMI的性能在相同工艺条件下近似达到ARM7TDMI的2倍。ARM9系列微处理器在高性能和低功耗特性方面提供了最佳的性能。ARM9系列微处理器具有以下特点:

● 5级整数流水线,指令执行效率更高。

● 提供1.1 MIPS/MHz的哈佛结构。

● 支持32位ARM指令集和16位Thumb指令集。

● 支持32位的高速AMBA总线接口。

● 全性能的MMU,支持Windows CE、Linux和Palm OS等多种主流嵌入式操作系统。

● MPU支持实时操作系统。

● 支持数据Cache和指令Cache,具有更高的指令和数据处理能力。

ARM9系列微处理器包含ARM920T、ARM922T和ARM940T三种类型。

ARM920T处理器是ARM9系列最经典的一款处理器,这里只以ARM920T为例介绍ARM9系列微处理器。ARM920T处理器在ARM9TDMI处理器内核基础上,增加了分离式的指令Cache和数据Cache,并带有相应的存储器管理单元I-MMU和D-MMU、写缓冲器及AMBA接口等。

ARM9系列微处理器主要应用于无线通信设备、仪器仪表、安全系统、机顶盒、高端打印机、数字照相机和数字摄像机等。典型产品如Samsung公司的S3C2410A。

3.ARM9E系列

ARM9E系列微处理器为可综合处理器,使用单一的处理器内核提供了微控制器、DSP和Java应用系统的解决方案,极大地减少了芯片的面积和系统的复杂程度。ARM9E系列微处理器提供了增强的DSP处理能力,很适合于那些需要同时使用DSP和微控制器的应用场合。

ARM9E系列微处理器的主要特点如下:

● 支持DSP指令集,适合于需要高速数字信号处理的场合。

● 5级整数流水线,指令执行效率更高。

● 支持32位ARM指令集和16位Thumb指令集。

● 支持32位的高速AMBA总线接口。

● 支持VFP9浮点处理协处理器。

● 全性能的MMU,支持Windows CE、Linux和Palm OS等多种主流嵌入式操作系统。

● MPU支持实时操作系统。

● 支持数据Cache和指令Cache,具有更高的指令和数据处理能力。

主频最高可达300 MIPS。ARM9系列微处理器主要应用于下一代无线设备、数字消费品、成像设备、工业控制、存储设备和网络设备等领域。ARM9E系列微处理器包含ARM926EJ-S、ARM946E-S和ARM966E-S三种类型,以适用于不同的应用场合。

4.ARM10E系列

ARM10E系列微处理器具有高性能、低功耗的特点,由于采用了新的体系结构,与同等的ARM9系列微处理器相比较,在同样的时钟频率下,性能提高了近50%。同时,ARM10E系列微处理器采用了两种先进的节能方式,使其功耗极低。

ARM10E系列微处理器的主要特点如下:

● 支持DSP指令集,适合于需要高速数字信号处理的场合。

● 6级整数流水线,指令执行效率更高。

● 支持32位ARM指令集和16位Thumb指令集。

● 支持32位高速AMBA总线接口。

● 支持VFP10浮点处理协处理器。

● 全性能的MMU,支持Windows CE、Linux和Palm OS等多种主流嵌入式操作系统。

● 支持数据Cache和指令Cache,具有更高的指令和数据处理能力。

● 主频最高可达400 MIPS。

● 内嵌并行读/写操作部件。

ARM10E系列微处理器包含ARM1020E、ARM1022E和ARM1026EJ-S三种类型,适用于不同的应用场合。

ARM10E系列微处理器主要应用于下一代无线设备、数字消费品、成像设备工业控制、通信和信息系统等领域。

5.SecurCore系列

SecurCore系列微处理器专为安全需要而设计,提供了完善的32位RISC技术的安全解决方案,因此,SecurCore系列微处理器除了具有ARM体系结构的低功耗、高性能的特点外,还具有其独特的优势,即提供了对安全解决方案的支持。

SecurCore系列微处理器在系统安全方面具有如下的特点:

● 带有灵活的保护单元,以确保操作系统和应用数据的安全。

● 采用软内核技术,防止外部对其进行扫描探测。

● 可集成用户自己的安全特性和其他协处理器。

SecurCore系列微处理器包含SecurCore SC100、SecurCore SC110、SecurCore SC200和SecurCore SC210四种类型,以适用于不同的应用场合。

SecurCore系列微处理器主要应用于一些对安全性要求较高的应用产品及应用系统,如电子商务、电子政务、电子银行业务、网络和认证系统等领域。

6.Cortex系列

Cortex系列微处理器的内核采用哈佛体系结构,使用的指令集版本号是ARMV7,是目前使用的ARM嵌入式处理器中指令集版本最高的一个系列。哈佛处理器架构采用了Thumb-2技术,该技术比Thumb-1的代码少使用31%的内存,减小了系统开销,同时能够提供比已有的基于Thumb技术的解决方案高出38%的性能。在保存状态的同时能从存储器中取出异常向量,实现更快速地进入ISR。中断控制器的紧密式耦合接口,能够有效地处理迟来中断。采用末尾连锁(Tail-Chaining)中断技术,在两个中断之间没有多余的状态保存和恢复指令的情况下,可以处理背对背中断(Back-To-Back Interrupt)。

Cortex系列微处理器分为Cortex-A、Cortex-R和Cortex-M三类,ARMV7体系结构定义了三大分工明确的系列。

1)Cortex-A系列。

Cortex-A系列是针对日益增长的运行包括Linux、Windows CE操作系统在内的消费娱乐产品和无线产品设计的ARM。Cortex-A系列常作为全功能嵌入式计算机使用,因此芯片上需要运行Android、Linux或Windows等大型操作系统,需要使用特殊的方法进行程序编译和刻录。ARM Cortex-A系列微处理器如图2-4所示。

图2-4 ARM Cortex-A系列微处理器

2)Cortex-R系列。

Cortex-R系列是体积最小的ARM微处理器,Cortex-R微处理器针对高性能的实时应用,例如硬盘控制器、企业中的网络设备和打印机、消费电子设备以及汽车电子控制(例如安全气囊、制动系统和发动机管理等)。Cortex-R系列在某些方面与高端微控制器(MCU)类似,但是,针对的是比通常使用标准MCU的系统还要大型的系统,例如,Cortex-R4就非常适合汽车电子应用。

3)Cortex-M系列。

Cortex-M系列则面向微控制器领域,为那些对开发费用非常敏感同时对性能要求不断增加的嵌入式应用所设计的。

Cortex-M系列作为具有特定功能的嵌入式微处理器而设计,其芯片上即可运行裸机程序,也可运行小型的嵌入式操作系统,但本质上都是一次性程序下载,因此Cortex-M系列单片机的程序需要在特定的集成开发环境上开发,经开发环境调试完成后通过仿真器将程序下载到处理器中。例如Cortex-M3处理器内核采用的是ARMV7.M体系结构。

这些新的ARM Cortex处理器系列都是基于ARMV7架构的产品,从尺寸和性能方面来看,既有少于33000个门电路的ARM Cortex-M系列,也有高性能的ARM Cortex-A系列。随着在各种不同领域应用需求的增加,微处理器市场也在趋于多样化。为了适应市场的发展变化,基于ARMV7架构的ARM处理器系列将不断拓展自己的应用领域。