一、引言
作为SOC(System On Chip)的典型应用,和持电话、机顶盒、数码像机、GPS、个为数字助理以及因特网设备等产品的市场需求越来越大。目前,基于ARM的处理器以其高速度、低功耗等诸多优异的性能而成为上述各类产品中选用较多的处理器。
二、ARM内核
ARM内核分为ARM7、ARM9、ARM10以及StrongARM等几类。其中每一类又根据其各自包含的功能模块而分成多种构成
在ARM内核中有四个功能模块可供生产厂商根据不同用户的不同要求来配置生产。这四个模块分别用T、D、M和I来表示。
T:表示Thumb,该内核可从16位指令集扩充到32位ARM指令集。
D:表示Debug,该内核中放置了用于调试的结构控制工程网版权所有,通常它为一个边界扫描链JTAG,可使CPU进入调试模式,从而可方便地进行断点设置、单步调试。
M:表示Multiplier,是8位乘法器。
I:表示EmbeddedICE Logic,用于实现断点观测及变量观测的逻辑电路部分,其中的TAP控制器可接入到边界扫描链。
ARM7
ARM7采用ARMV4T(Newma
n)结构控制工程网版权所有,分为三级流水CONTROL ENGINEERING China版权所有,空间统一的指令与数据Cache,平均功耗为0.6mW/MHz,时钟速度为66MHz,每条指令平均执行1.9个时钟周期。其中的ARM710,ARM720和ARM740为内带Cache的ARM核。
ARM9
ARM9采用ARMV4T(Harvard)结构控制工程网版权所有,五级流水处理以及分离的Cache结构控制工程网版权所有,平均功耗为0.7mW/MHz。时钟速度为120MHz-200MHz,每条指令平均执行1.5个时钟周期。与ARM7系列相似,其中的ARM920、ARM940和ARM9E为含Cache的CPU核。性能为132MIPS(120MHz时钟,3.3V供)或220MIPS(200MHz时钟)。
ARM10
ARM10采用ARMV5T结构控制工程网版权所有,六级流水处理,指令与数据分离的Cache结构。平均功耗为1000mW,时钟速度为300MHz,每条指令平均执行1.2个周期,其中ARM1020为带Cache的版本。
ARM10TDMI:与所有ARM核在二进制级代码兼容,内带高速32X16MACCONTROL ENGINEERING China版权所有,预留DSP协处理器接口。其中的VFP10(矢量浮点单元)为七级流水结构。
ARM1020T:ARM10TDMI+32KI&D Caches+MMU结构控制工程网版权所有,300MHz时钟,功耗为1W(2.0V供电)或00mW(1.5V供电)。指令Cache和数据Cache分别为32K,宽度为64bits。能够技术多种商用操作系统。适用于下一代高性能手持式因特网设备及数字式消费类应用。
StrongARM
StrongARM处理器采用ARMV4T的五级流水结构。目前有SA110、SA1100以及SA1110等三个版本。
三、ARM7系列开发工具及开发环境
1.软件开发工具
Green Hills Tools:Green Hills的ARM软件工具包能够支持ARM6、ARM7、ARM7M、ARM7TM、ARM7TDMI、ARM7500FE、ARM8、ARM9、ARM10以及StrongARM等系列处理器。它由编译器、交*工具包、集成开发环境和调试接口等组成。
Compiler:高优化性能的C/C++编译器。
Cross Tool Chain:交*开发工具。包括汇编器(Assembler)、连接器(Linker)、库函数以及目标代码格式转换器。
MULTI:集成开发环境。Green Hills的MULTI集成环境综合了软件开发和调试过程中要用到的各种工具,如源级调试器、工程管理器、版本控制器、文本编辑器、性能分析器、图形浏览器。运行出错检测器、ARM指令集仿真器以及底层调试接口等。用户可方便地在MULTI环境中利用上述工具来开发应用程序。
Servers:底层调试接口。Green Hills的Servers提供两类调试接口供用户选择使用。一类用于Angel监控器、在线仿真器以及EPI公司的JEENI JTAFG仿真器等;另一类则用于商用操作系统及用户自己编写的操作系统。
ASDT2.5:SDT2.5是ARM公司提供的一大套由C编译器、连接定位器、C语言调试器和Angel监控器组成的开发软件包。由于价格比较适中而应用比较广泛。
2.硬件开发工具
ARM的硬件开发工具主要包括两类仿真器,一是JTAG仿真器,二是全功能在线仿真器。前者是利用ARM处理器中的调试模块的功能,通过其JTAG边界扫描口来与仿真器连接。这种方式的仿真器比较便宜,连接比较方便。但由于仅通过十几条线来调试CONTROL ENGINEERING China版权所有,因而功能有局