ARM嵌入式开发流程和开发工具(含ADS与Multi ICE简介)

2021-09-24 16:31

ARM嵌入式开发流程和开发工具(含ADS与Multi ICE简介)

第4章 ARM嵌入式开发流程和开发工具 嵌入式系统的设计可以分成三个阶段:分析、设计和实现。分析阶段是确定要解决的问题及需要完成的目标,也常常被称为“需求阶段”;设计阶段主要是解决如何在给定的约束条件下完成用户的要求;实现阶段主要是解决如何在所选择的硬件和软件的基础上进行整个软、硬件系统的协调实现。在分析阶段结束后,通常开发者面临的一个棘手的问题就是硬件平台和软件平台的选择,因为它的好坏直接影响着实现阶段的任务完成。

通常硬件和软件的选择包括:处理器、硬件部件、操作系统、编程语言、软件开发工具、硬件调试工具、软件组件等。

在上述选择中,通常,处理器是最重要的,同时操作系统和编程语言也是非常关键的。处理器的选择往往同时会限制操作系统的选择,操作系统的选择又会限制开发工具的选择。

4.1 ARM嵌入式开发模式

嵌入式系统与一般PC机在开发的硬件环境上的最大差异就是它分成两个平台,一个是宿主机(Host),一个是目标机(Target)。这里的宿主机通常就是PC机,首先利用宿主机上丰富的资源、良好的开发环境编写和编译能够在目标机上运行的程序,这个过程叫做交叉编译,然后通过串口、并口、网络或其它接口通过一定的传输手段将交叉编译生成的目标代码传输并装载到目标机上。图4-1中就是采用并口在线仿真器与目标机和宿主机进行连接,从而实现目标代码的运行和调试。宿主机的工作环境可以是Windows 98,Windows XP,Windows 2000以及RedHat等操作系统,具体选择何种操作系统是由所采用的仿真器和所开发的软件决定,在ARM的开发过程中对于不同的软件开发阶段所采用的调试手段是不同的,宿主机的操作系统需求也就不一样。详细的描述请参考本节后面的内容。

图4-1所示为一个典型的目标机/宿主机开发模式。宿主机运行ADS 1.2集成开发环境,并通过在线仿真器(Multi-ICE)对目标处理器(Samsung公司的基于ARM920T核的S3C2410处理器)ARM处理器进行调试。宿主机和在线仿真器通过并口连接,在线仿真器同时连接到目标机的JTAG接口。

图4-1 目标机/宿主机开发模式 4.2 ARM嵌入式开发流程和开发工具

ARM嵌入式系统的开发流程非常灵活而复杂,尤其是软件开发过程牵涉到许多不同的开发过程,而且每个开发过程所使用的开发工具均不尽相同,因此,在深入学习ARM软件开发之前,有必要对ARM嵌入式开发流程和所使用的开发工具有一个初步的了解,本节就是要达到这样的目的,至于各个开发过程和开发工具的详细介绍请参考后续有关章节。

ARM嵌入式开发流程和开发工具(含ADS与Multi ICE简介)

4.2.1 选择硬件平台

1、处理器的选择

嵌入式系统的核心部件是各种类型的嵌入式处理器。据不完全统计,目前全世界嵌入式处理器的品种总量已经超过1000多种,流行体系结构有30几个系列。但与全球PC市场不同的是,没有一种微处理器和微处理器公司可以主导嵌入式系统,仅以32位的CPU而言,就有100种以上嵌入式微处理器。由于嵌入式系统设计的差异性极大,因此选择是多样化的。

ARM是近年来在嵌入式系统有影响力的微处理器制造商,ARM的设计非常适用于小的电源供电系统。Apple在Newton手持计算机中使用ARM,另外有几款数字无线电话也在使用ARM。

设计者在选择处理器时要考虑的主要因素有:

1)处理性能

一个处理器的性能取决于多个方面的因素,如时钟频率,内部寄存器的大小,指令是否对等处理所有的寄存器等。对于许多需用处理器的嵌入式系统设计来说,目标不是在于挑选速度最快的处理器,而是在于选取能够完成设计目标的处理器。

比如:对于ARM处理器,如果需要使用软解压实现视频,应该尽量选用ARM9、Xscale等高档处理器。而对于一般工业控制,则可以考虑ARM7芯片是否满足要求。

2)技术指标

当前,许多嵌入式处理器都集成了外围设备的功能,减少了芯片的数量,降低了整个系统的开发费用和技术难度。开发人员首先考虑的是,系统所要求的一些硬件能否方便地连接到处理器上。其次是考虑该处理器的一些支持芯片,如DMA控制器,内存管理器,中断控制器,串行设备、时钟等的配套。

各个厂家市场的ARM芯片都根据不同的设计目标扩展了丰富的接口,在选择处理器时应该考虑选择能够支持尽可能多的功能,尤其是相对设计复杂的功能。

3)功耗

嵌入式微处理器最大并且增长最快的市场是手持设备、电子记事本、PDA、手机、GPS导航器、智能家电等消费类电子产品。这些产品对微处理器的基本要求是:高性能、低功耗。

4)操作系统和软件支持工具的选择

操作系统的移植和开发是嵌入式设计中的一个关键阶段。处理器和操作系统的选择在一定程度上互相影响,同时又将影响其软件支持工具,因此,处理器的选择的同时必须充分考虑操作系统的因素。

在ARM系统中,如果用户希望使用Windows CE、Linux等操作系统,就需要选择ARM720T以上带有MMU(Memory Management Unit)功能的ARM芯片,ARM720T、ARM920T、ARM922T、ARM946T、Strong-ARM都带有MMU功能。而ARM7TDMI则没有MMU,不支持Windows CE和Linux,但目前有uCLinux以及uC/OS-II等不需要MMU支持的操作系统可运行于ARM7TDMI硬件平台之上。事实上,uCLinux已经成功移植到多种不带MMU的微处理器平台上,并在稳定性和其他方面都有上佳表现。

另外,如果决定采用Linux、Windows CE、vxWorks等操作系统时,在选择处理器时应该尽量选择该操作系统已经支持的处理器,这样可以大大加快开发进度,降低难度。

选择不同的操作系统,其软件开发过程和调试手段各不相同,你的选择方案是否能够提供各个开发阶段(包括bootloader开发、操作系统移植、驱动开发和应用开发)所需的软件支持工具也是一个必须考虑的因素。

5)是否内置调试工具

处理器如果内置调试工具可以大大缩小调试周期,降低调试的难度。ARM提供JTAG调试接口,而且有众多的第三方厂家推出各种调试工具。

ARM嵌入式开发流程和开发工具(含ADS与Multi ICE简介)

2、硬件平台的选择

选择好目标微处理器后还需要准备硬件平台。目前国内外有许多针对各种ARM微处理器的开发板,这些开发板对所支持的ARM微处理器做了详细的硬件评估和软件支持。在自己动手设计硬件平台之前,购买一块这种开发板作为测试平台,进行学习和参考,这样可以大大加快开发进度。对于一些应用,也可以直接在这些开发板上进行,这样可以省略硬件设计的阶段。

ARM嵌入式开发流程和开发工具(含ADS与Multi ICE简介).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:普洱茶生茶的泡法

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: