随着ARM处理器的流行,为了使更多工程师了解ARM傅立叶撰写了系列开发文章,主要解决什么是ARM,ARM在产品项目中的开发流程,LINUX,WINCE,VXWORKS等操作系统在ARM处理器上的应用等内容。希望对初学者有所帮助。
1.嵌入式系统概述
应该肯定地讲我们每一位都已经使用过嵌入式系统有关的产品,嵌入式系统已经深入到我们生活的每一个角落。他所涉及的领域广泛到我们的想象力能及的任何地方。嵌入式系统是相对桌面系统来讲的,凡是带有微处理器的专用软硬件系统都可以称为嵌入式系统。作为系统核心的微处理器又包括三类:微控制器(MCU)、数字信号处理器(DSP)、嵌入式微处理器(MPU)。嵌入式比较准确一个定义如下:系统以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。
嵌入式系统的应用和组成
嵌入式系统就是可精简计算机系统,现在一个ARM7的处理器比一个486还要快,可以挂很多设备并且价格很低。嵌入式技术目的就是在不适宜用工控机的场合替代pc系统,而对于很多场合工控机的很多功能没有用处而用户必须要付出成本,嵌入式系统解决了这个问题,兼顾功能而又节省成本把不需要的设备裁减掉。 嵌入式系统无处不在,他的核心是处理器。包括单片机也是嵌入式处理器的一种,在实际应用中不同等级的处理器应用方向也不同。
嵌入式微处理器的应用对比表:
嵌入式微处理器 |
应用产品 |
4位微处理器 |
计算器、电话机、简易防盗器、玩具、充电器、简易计量表.. |
8位微处理器 |
马达控制器、电视游戏机、空调、传真、BP、录音电话.. |
16位微处理器 |
手机、摄影机、录放机、多媒体应用.. |
32位微处理器 |
调制解调器、精确马达控制、掌上电脑、路由器、彩色传真、激光打印机、数码相机、GPS定位系统、高级汽车电子、网络加点、雷达伺服系统、各种工业军事用途.. |
为什么要用位处理器?随着电子设备日新月异的发展,电子设备功能越来越完备,无论军品、工业品还是民品设计理念都越来越人性化。很简单的讲,您家里空调、电视、DVD每样设备都单独使用一台遥控器,我们是否能够把他们几合一呢?岂不是更加方便?管理这么一堆设备从软件上来讲肯定是复杂的多了,从硬件方面当然也需要功能更加强大、功耗极低、价格更廉价的处理器来支持,32位的ARM处理器能够轻松完成以上需求。在您所涉及的产品领域中肯定还有更多的类似需要强大软件硬件支持的改进项目。随着社会的进步人们的生活需要更加智能化的产品,32位处理器必然会进入到我们的生活。各种不同位数的嵌入式处理器的应用层面也有很明显的区别,越高位的嵌入式系统微处理器数据处理的运算性能和及其产品附加价值也就越高。
继产业之后,嵌入式系统领域显然已经成为另一种科学,也由于网络与通讯的高速进步,带动了信息家电,信息工业的潮流,嵌入式系统已经成为不可或缺的生活必需品。他的发展方向将是功能越来越强大,综合数字处理能力、管理能力、控制能力、通讯能力为一体的系统。概括总结为高性能、高集成度的系统将是嵌入式系统的发展方向。
什么是ARM? 32位嵌入式处理器中有ARMM-COREARM(Advanced RISC Machines)是微处理器行业的一家知名企业,设计了大量高性能、廉价、耗能低的RISC处理器、相关技术及软件。技术具有性能高、成本低和能耗省的特点。适用于多种领域,比如嵌入控制、消费/教育类多媒体、DSP和移动式应用等。ARM将其技术授权给世界上许多著名的半导体、软件和OEM厂商,每个厂商得到的都是一套独一无二的ARM相关技术及服务。利用这种合伙关系,ARM很快成为许多全球性RISC标准的缔造者。在嵌入式处理器领域中取得了霸主地位,目前有100多家公司与ARM签订了硬件技术使用许可协议,其中包括Intel、IBM、LG半导体、NEC、SONY、菲利浦和国民半导体这样的大公司。至于软件系统的合伙人,则包括微软、升阳和MRI等一系列知名公司。 更多的ARM信息可以访问http://www.arm.com/chinese/
2、ARM嵌入式系统
ARM公司并不生产芯片,他向芯片制造商提供知识产权,优异的体系结构和开放的平台,使ARM处理器应用非常广泛,各大公司都同时投入大量的人力研究ARM内核的处理器,这不同于CPU几乎由2家公司垄断生产,ARM处理器的选择范围非常宽广,同内核可以选择任意一家厂商的芯片。由于多家的支持努力,基于ARM内核的处理器芯片外设非常丰富,这个用户带来了极大的方便,很多情况都可以一个芯片就可以完成全部的资源需求。嵌入式操作系统Windows CE可支持多种嵌入式处理器,但基于Windows CE的Pocket PC操作系统只支持ARM处理器。微软在对SH3、MIPS、ARM等嵌入式处理器做了评估后认为,ARM是一种性价比较好的选择。由于目前ARM在手持设备市场占有90%以上的份额,只支持ARM,可以有效地缩短应用程序开发与测试的时间,也降低了研发费用。由于ARM开放其处理器授权,因此,用户在市场上可以在多家整机厂商中进行选择,从而保证了这一市场的竞争性。
ARM处理器的优点,ARM处理器本身是位设计,但也配备16位指令集。一般来讲存储器比等价位代码节省达%,然而保留了32位系统的所有优势。 ARM的Jazelle技术使Java加速得到比基于软件的Java虚拟机(JVM)高得多的性能,和同等的非Java加速核相比功耗降低80%。 CPU功能上增加DSP指令集提供增强的16位和32位算术运算能力,提高了性能和灵活性。ARM内核最初是位手持通讯设备设计的,所以他的功耗非常低。
3、ARM产品介绍
ARM提供一系列内核、体系扩展、微处理器和系统芯片方案。由于所有产品均采用一个通用的软件体系,所以相同的软件可在所有产品中运行(理论上如此)。典型的产品如下。
CPU内核
ARM7:小型、快速、低能耗、集成式RISC内核,用于移动通信。
ARM7TDMI(Thumb):这是公司授权用户最多的一项产品,将ARM7指令集同Thumb扩展组合在一起,以减少内存容量和系统成本。同时,它还利用嵌入式ICE调试技术来简化系统设计,并用一个DSP增强扩展来改进性能。该产品的典型用途是数字蜂窝电话和硬盘驱动器。
ARM710系列,包括ARM710、ARM710T、ARM720T和ARM740T:低价、低能耗、封装式常规系统微型处理器,配有高速缓存(Cache)、内存管理、写缓冲和JTAG。广泛应用于手持式计算、数据通信和消费类多媒体。
ARM7优化用于对价位和功耗敏感的消费应用的低功耗32位核,非常低的功耗;三段流水线和冯·诺依曼结构,提供0.9MIPS/MHz。
ARM9TDMI:采用5阶段管道化ARM9内核,同时配备Thumb扩展、调试和Harvard总线。在生产工艺相同的情况下,性能可达ARM7TDMI的两倍之多。常用于连网和顶置盒。
ARM940T系列低价、低能耗、高性能系统微处理器,配有、内存管理和写缓冲。应用于高级引擎管理、保安系统、顶置盒、便携计算机和高档打印机。StrongARM:性能很高、同时满足常规应用需要的一种微处理器技术,与DEC联合研制,后来授权给Intel。SA110处理器、SA1100 PDA系统芯片和SA1500多媒体处理器芯片均采用了这一技术。
ARM920T, ARM922T, ARM940T,ARM966E-S,ARM968E-S,ARM996HS 有着高性能和低功耗领先的硬宏单元,5级流水线结构;哈佛结构提供1.1MIPS/MHz。ARM920T和ARM922T内置全性能的MMU、指令和数据cache和高速AMBA总线接口。AMBA片上总线是一个开放标准,已成为SoC构建和IP库开发的事实标准。AMBA先进的高性能总线(AHB)接口现由所有新的ARM核支持,提供开发全综合设计系统。ARM940T内置指令和数据cache、保护单元和高速AMBA总线接口。
ARM7500和ARM7500FE:高度集成的单芯片RISC计算机,基于一个缓存式ARM7 32位内核,拥有内存和I/O控制器、3个DMA通道、片上视频控制器和调色板以及立体声端口;ARM7500FE则增加了一个浮点运算单元以及对EDO DRAM的支持。特别适合电视顶置盒和网络计算机(NC)。
ARM10 ARM1020E,ARM1022E,ARM1026EJ-S,系列是64位AHB指令和数据接口;6级流水线结构;1.25MIPS/MHz;比同等的ARM9器件性能提高50%。添加了两种新的先进的节能方式得到了异常低的耗电。VFP10协处理器完善地依从ARM10器件提供高性能的浮点解决方案 ARM10有三个内核分别是:ARM1026EJ-S?, ARM1020E?, ARM1022E? 。
ARM11 ARM11 MPCore,ARM1136J(F)-S,ARM1176JZ(F)-S 这是高效率高性能的CPU,国内还没有产品出现。
为了更好的理解ARM处理器在嵌入式领域中的具体应用位置,我们有必要研究处理的分类
处理器 |
用法 |
操作系统 |
芯片 |
CPU |
桌面系统工业控制机 |
WINDOWS/UNIX |
INTEL奔腾系列 |
ARM |
向上扩展 向下扩展 |
WIN CE/UC/OS |
ARM9/ARM7 |
DSP-MCU |
工业控制 实使系统 |
不跑操作系统 |
51系列 TMS320系列 |
4.嵌入式系统特点介绍
CPU:功能强大32位机,主频最高达3G,应用程序完全在操作系统上运行,相应的设备也多,要求海量存储设备,如硬盘。 DSP:运算密集处理器,一般用在快速执行算法,做控制比较困难。为了追求高执行效率,不跑操作系统,核心代码使用汇编。 MCU:微控制器,4位、8位、16位等,处理速度有限,一般在几个MIPS,速度受限跑操作系统很吃力。
ARM:32位处理器,可精简的计算机系统,价格很低,逐渐转入单芯片应用解决方案。上可跑操作系统,下可做实时控制使用。
从以上分析可以看出,ARM处理器是向2个发展方向发展的,一方面他向高档快速单片机发展,典型的芯片如三星公司的44b0x,4510飞利浦公司的2104,主要应用领域是简单的控制方面。这个方面的发展方向其实非常明确,即高集成度高速度两个特点,这样的设计有利于控制产品制造综合成本以及降低项目研发风险,atmel公司的AT91RF40162就是一款集成度非常高的产品。在软件方面可以采用简单的嵌入式操作系统如uc-linux,vxorks,u-couII等等,也可以像单片机一样进行直接编程使用。
另外一个方面,ARM处理器向桌面计算机功能发展,他的功能和使用更像是一台桌面PC或者更像是一台工控机,具备所有PC机的基本功能。软件开发方面从表面上看是复杂的多了,但是从实际开发中看是分工更加明确了,这种系统我们总结了3个区别于单片机系统的不同点:概念:他类似与全功能的PC系统,不是简单的单片机系统。硬件:带有虚拟内存管理模块(MMU)寻址范围得到扩展可以接硬盘这样的海量存储设备。硬件设计相对麻烦,高速设备较多如DDR高速内存,USB2.0接口,总线速度可以采用133M,266M>等。 软件:由于有MMU,所以可以完全跑在复杂嵌入式操作系统上如win ce,linux等等。需要BSP底层软件支持,类似于PC机的BIOS,需要操作系统的支持。基于操作系统编写应用程序非常方便。我公司发展方向重点将会放在复杂嵌入式应用解决方案。
5.嵌入式系统构成
嵌入式系统是由软件硬件构成的,结构如下:
硬件平台
HW 板极支持软件库 BSP
操作系统 OS
设备驱动程序 DRIVER
应用程序 PROGRAM
可以看出如果在实际应用中完成整个开发流程是非常痛苦的,如果没有7―12月的研发时间产品肯定出不来。计算机的主板,BIOS,操作系统,以及设备驱动程序,等等工作都是有专业的厂家来制作的,如主板显卡等硬件有华硕微星等厂家,BIOS有AWORD公司,操作系统有微软。有了这些厂家的存在,我们搭建系统仅仅从应用程序入手即可。嵌入式系统也一样,也有很多厂家专门提供硬件,BSP,操作系统,等等,傅立叶提供了一系列的底层产品,您可以直接从应用程序着手。
5.结论
嵌入式系统是基于计算机技术的强调体积、功耗、成本等等综合因素的精简计算机系统。ARM处理器是32位嵌入式处理器的一种,他的特点是可移植性强可以在不同厂家相同内核的芯片中轻松切换、功耗特低、功能强大、低端可以作为高级单片机使用、高端功能可以与PC机媲美!