ARM嵌入式在通信领域的应用分析ARM嵌入式在通信领域的应用分析前言由于网络与通信技术的发展,嵌入式系统在经历了近20年的发展历程后,又进入了一个新的历史发展阶段,即从普遍的低端应用进入到一个高、低端并行发展,并且不断提升低端应用技术水平的时代,其标志是近年来32位MCU的发展。32位MCU的应用不会走8位机百花齐放、百余种型号系列齐上阵的道路。这是因为在8位机的低端应用中,嵌入对象与对象专业领域十分广泛而复杂;而当前32位MCU的高端应用则多集中在网络、通信、多媒体技术领域。32位MCU将会集中在少数厂家发展的少数型号系列上。在嵌入式系统高端应用的发展中,曾经有众多的厂家参与,很早就有许多8位嵌入式MCU厂家实施了8位、16位和32位机的发展计划。后来,8位和32位机的技术扩展,侵占了16位机的发展空间。传统电子系统智能化对8位机的需求,使这些厂家把主要精力放在8位机的发展上,形成了32位机的发展迟迟不前的局面。当网络、通信和多媒体信息家电业兴起后,出现了嵌入式系统高端应用的市场;而在嵌入式系统的高端应用中,进行多年技术准备的ARM公司,适时地推出了32位ARM系列嵌入式微处理器,以其明显的性能优势和知识产权平台扇出的运行方式,迅速形成32位机高端应用的主流地位,以至于使不少传统嵌入式系统厂家放弃了自己的32位发展计划,转而使用ARM内核来发展自己的32位MCU。就连在嵌入式系统发展史上做出卓越贡献的Intel公司,以及将单片微型计算机发展到微控制器的Philips公司,在发展32位嵌入式系统时,都不另起炉灶,而是转而使用ARM公司的嵌入式系统内核来发展自己的32位MCU。本文在以下几个方面对ARM嵌入式在通信领域的应用进行分析,1对ARM进行介绍2对ARM在通信领域的应用进行总的介绍3对ARM的几种型号在通信领域的应用进行举例介绍4对ARM在通信领域的应用趋势做出结论第1章ARM处理器概述1.1ARM处理器简介ARM(AdvancedRISCMachines),既可以认为是一个公司的名字,也可以认为是对一类微处理器的通称,还可以认为是一种技术的名字。1991年ARM公司成立于英国剑桥,主要出售芯片设计技术的授权。目前,采用ARM技术知识产权(IP)核的微处理器,即我们通常所说的ARM微处理器,已遍及工业控制、消费类电子产品、通信系统、网络系统、无线系统等各类产品市场,基于ARM技术的微处理器应用约占据了32位RISC微处理器75%以上的市场份额,ARM技术正在逐步渗入到我们生活的各个方面。ARM公司是专门从事基于RISC技术芯片设计开发的公司,作为知识产权供应商,本身不直接从事芯片生产,靠转让设计许可由合作公司生产各具特色的芯片,世界各大半导体生产商从ARM公司购买其设计的ARM微处理器核,根据各自不同的应用领域,加入适当的外围电路,从而形成自己的ARM微处理器芯片进入市场。目前,全世界有几十家大的半导体公司都使用ARM公司的授权,因此既使得ARM技术获得更多的第三方工具、制造、软件的支持,又使整个系统成本降低,使产品更容易进入市场被消费者所接受,更具有竞争力。1.2ARM微处理器的应用领域及特点1.2.1ARM微处理器的应用领域到目前为止,ARM微处理器及技术的应用几乎已经深入到各个领域:1、工业控制领域:作为32的RISC架构,基于ARM核的微控制器芯片不但占据了高端微控制器市场的大部分市场份额,同时也逐渐向低端微控制器应用领域扩展,ARM微控制器的低功耗、高性价比,向传统的8位/16位微控制器提出了挑战。2、无线通讯领域:目前已有超过85%的无线通讯设备采用了ARM技术,ARM以其高性能和低成本,在该领域的地位日益巩固。3、网络应用:随着宽带技术的推广,采用ARM技术的ADSL芯片正逐步获得竞争优势。此外,ARM在语音及视频处理上行了优化,并获得广泛支持,也对DSP的应用领域提出了挑战。4、消费类电子产品:ARM技术在目前流行的数字音频播放器、数字机顶盒和游戏机中得到广泛采用。5、成像和安全产品:现在流行的数码相机和打印机中绝大部分采用ARM技术。手机中的32位SIM智能卡也采用了ARM技术。除此以外,ARM微处理器及技术还应用到许多不同的领域,并会在将来取得更加广泛的应用。1.3ARM微处理器系列ARM微处理器目前包括下面几个系列,以及其它厂商基于ARM体系结构的处理器,除了具有ARM体系结构的共同特点以外,每一个系列的ARM微处理器都有各自的特点和应用领域。-ARM7系列-ARM9系列-ARM9E系列-ARM10E系列-SecurCore系列-Inter的Xscale-Inter的StrongARM其中,ARM7、ARM9、ARM9E和ARM10为4个通用处理器系列,每一个系列提供一套相对独特的性能来满足不同应用领域的需求。SecurCore系列专门为安全要求较高的应用而设计。第2章ARM嵌入式在通信领域的应用2.1ARM在通信领域的应用概述通信是通过某种媒体进行的信息传递。古代,人们通过驿站、飞鸽传书、烽火报警等方式进行信息传递。今天,随着科学水平的飞速发展,相继出现了无线电,固话,手机,互联网甚至可视电话等各种通信方式。通信行业包括电信运营商,电信设备制造商,电信增值服务商,电话服务,呼叫中心运营与设备提供商,手机终端生产商等企业构成的通信泛行业群体(非标准行业定义)。通信产品可以说包括在以上行业的产品,目前这些产品大部分是基于处理器制造的ARM将其技术授权给世界上许多著名的半导体、软件和OEM厂商,每个厂商得到的都是一套独一无二的ARM相关技术及服务。利用这种合伙关系,ARM很快成为许多全球性RISC标准的缔造者。ARM架构是面向低预算市场设计的第一款RISC微处理器。ARM提供一系列内核、体系扩展、微处理器和系统芯片方案。由于所有产品均采用一个通用的软件体系,所以相同的软件可在所有产品中运行(理论上如此)。典型的产品如下。①CPU内核--ARM7:小型、快速、低能耗、集成式RISC内核,用于移动通信。--ARM7TDMI(Thumb):这是公司授权用户最多的一项产品,将ARM7指令集同Thumb扩展组合在一起,以减少内存容量和系统成本。同时,它还利用嵌入式ICE调试技术来简化系统设计,并用一个DSP增强扩展来改进性能。该产品的典型用途是数字蜂窝电话和硬盘驱动器。--ARM9TDMI:采用5阶段管道化ARM9内核,同时配备Thumb扩展、调试和Harvard总线。在生产工艺相同的情况下,性能可达ARM7TDMI的两倍之多。常用于连网和顶置盒。②体系扩展--Thumb:以16位系统的成本,提供32位RISC性能,特别注意的是它所需的内存容量非常小。③嵌入式ICE调试由于集成了类似于ICE的CPU内核调试技术,所以原型设计和系统芯片的调试得到了极大的简化。④微处理器--ARM710系列,包括ARM710、ARM710T、ARM720T和ARM740T:低价、低能耗、封装式常规系统微型处理器,配有高速缓存(Cache)、内存管理、写缓冲和JTAG。广泛应用于手持式计算、数据通信和消费类多媒体。--ARM940T、920T系列:低价、低能耗、高性能系统微处理器,配有Cache、内存管理和写缓冲。应用于高级引擎管理、保安系统、顶置盒、便携计算机和高档打印机。--StrongARM:性能很高、同时满足常规应用需要的一种微处理器技术,与DEC联合研制,后来授权给Intel。SA110处理器、SA1100PDA系统芯片和SA1500多媒体处理器芯片均采用了这一技术。--ARM7500和ARM7500FE:高度集成的单芯片RISC计算机,基于一个缓存式ARM732位内核,拥有内存和I/O控制器、3个DMA通道、片上视频控制器和调色板以及立体声端口;ARM7500FE则增加了一个浮点运算单元以及对EDODRAM的支持。特别适合电视顶置盒和网络计算机(NC)。2.2ARM在通信领域的应用分析作为通信领域的典型应用,持电话、机顶盒、数码像机、GPS、个为数字助理以及因特网设备等产品的市场需求越来越大。目前,基于ARM的处理器以其高速度、低功耗等诸多优异的性能而成为上述各类产品中选用较多的处理器。2.1、ARM型号功能分析在ARM内核中有四个功能模块可供生产厂商根据不同用户的不同要求来配置生产。这四个模块分别用T、D、M和I来表示。T:表示Thumb,该内核可从16位指令集扩充到32位ARM指令集。D:表示Debug,该内核中放置了用于调试的结构,通常它为一个边界扫描链JTAG,可使CPU进入调试模式,从而可方便地进行断点设置、单步调试。M:表示Multiplier,是8位乘法器。I:表示EmbeddedICELogic,用于实现断点观测及变量观测的逻辑电路部分,其中的TAP控制器可接入到边界扫描链。ARM7ARM7采用ARMV4T(Newman)结构,分为三级流水,空间统一的指令与数据Cache,平均功耗为0.6mW/MHz,时钟速度为66MHz,每条指令平均执行1.9个时钟周期。其中的ARM710,ARM720和ARM740为内带Cache的ARM核。ARM9ARM9采用ARMV4T(Harvard)结构,五级流水处理以及分离的Cache结构,平均功耗为0.7mW/MHz。时钟速度为120MHz-200MHz,每条指令平均执行1.5个时钟周期。与ARM7系列相似,其中的ARM920、ARM940和ARM9E为含Cache的CPU核。性能为132MIPS(120MHz时钟,3.3V供)或220MIPS(200MHz时钟)。ARM10ARM10采用ARMV5T结构,六级流水处理,指令与数据分离的Cache结构。平均功耗为1000mW,时钟速度为300MHz,每条指令平均执行1.2个周期,其中ARM1020为带Cache的版本。ARM10TDMI:与所有ARM核在二进制级代码兼容,内带高速32X16MAC,预留DSP协处理器接口。其中的VFP10(矢量浮点单元)为七级流水结构。ARM1020T:ARM10TDMI+32KI&DCaches+MMU结构,300MHz时钟,功耗为1W(2.0V供电)或00mW(1.5V供电)。指令Cache和数据Cache分别为32K,宽度为64bits。能够技术多种商用操作系统。适用于下一代高性能手持式因特网设备及数字式消费类应用。StrongARMStrongARM处理器采用ARMV4T的五级流水结构。目前有SA110、SA1100以及SA1110等三个版本(见表2)。2.2、ARM7系列开发工具及开发环境分析1.软件开发工具GreenHillsTools:GreenHills的ARM软件工具包能够支持ARM6、ARM7、ARM7M、ARM7TM、ARM7TDMI、ARM7500FE、ARM8、ARM9、ARM10以及StrongARM等系列处理器。它由编译器、交叉工具包、集成开发环境和调试接口等组成。Compiler:高优化性能的C/C++编译器。CrossToolChain:交叉开发工具。包括汇编器(Assembler)、连接器(Linker)、库函数以及目标代码格式转换器。MULTI:集成开发环境。GreenHills的MULTI集成环境综合了软件开发和调试过程中要用到的各种工具,如源级调试器、工程管理器、版本控制器、文本编辑器、性能分析器、图形浏览器。运行出错检测器、ARM指令集仿真器以及底层调试接口等。用户可方便地在MULTI环境中利用上述工具来开发应用程序。Servers:底层调试接口。GreenHills的Servers提供两类调试接口供用户选择使用。一类用于Angel监控器、在线仿真器以及EPI公司的JEENIJTAFG仿真器等;另一类则用于商用操作系统及用户自己编写的操作系统。ASDT2.5:SDT2.5是ARM公司提供的一大套由C编译器、连接定位器、C语言调试器和Angel监控器组成的开发软件包。由于价格比较适中而应用比较广泛。2.硬件开发工具ARM的硬件开发工具