长理培训真题库
我的
军队文职考试一本通

Linux嵌入式系统开发平台选型探讨

2020-01-30 17:17
1 嵌入式系统与 Linux 按照电气工程师协会的一个定义:嵌入式系统是用来控制或监视机器、 装置或工厂等的大规模系统的设备。具体说来,它是电脑软件和硬件的综合 体;是以应用为中心,以计算机技术为基础,软硬件可裁减,从而能够适应实 际应用中对功能、可靠性、成本、体积、功耗等严格要求的专用计算机系统 。 一般来说,嵌入式系统不能使用通用型计算机,而且运行的是固化的软件, 终端用户很难或者不可能改变固件。而 Linux 也早已成为 IT 界家喻户晓的一 个名字。概括说来,将 Linux 应用于嵌入式系统的开发有如下一些优点: ① Linux 自身具备一整套工具链,容易自行建立嵌入式系统的开发环境 和交叉运行环境,并且可以跨越在嵌入式系统开发中仿真工具(ICE)ICE))的障碍。 ② 内核的完全开放,使得可以自己设计和开发出真正的硬实时系统 ;对 于软实时系统,在 Linux 中也容易得到实现。 ③ 强大的网络支持,使得可以利用 Linux 的网络协议栈将其开发成为嵌 入式的 TCP/IP 网络协议栈。 2 嵌入式系统设计的过程 按照嵌入式系统的工程设计方法,嵌入式系统的设计可以分成三个阶段 : 分析、设计和实现。分析阶段是确定要解决的问题及需要完成的目标,也常 常被称为“需求阶段”;设计阶段主要是解决如何在给定的约束条件下完成用户 的要求;实现阶段主要是解决如何在所选择的硬件和软件的基础上进行整个软、 硬件系统的协调实现。在分析阶段结束后,通常开发者面临的一个棘手的问 题就是硬件平台和软件平台的选择,因为它的好坏直接影响着实现阶段的任 务完成。 通常硬件和软件的选择包括:处理器、硬件部件、操作系统、编程语言 、 软件开发工具、硬件调试工具、软件组件等。 在上述选择中,通常,处理器是最重要的,同时操作系统和编程语言也 是非常关键的。处理器的选择往往同时会限制操作系统的选择,操作系统的 选择又会限制开发工具的选择。 3 硬件平台的选择 3.1 处理器的选择 嵌入式系统的核心部件是各种类型的嵌入式处理器。据不完全统计,目 前全世界嵌入式处理器的品种总量已经超过 1000 多种,流行体系结构有 30 几个系列。但与全球 PC 市场不同的是,没有一种微处理器和微处理器公司 可以主导嵌入式系统,仅以 32 位的 CPU 而言,就有 100 种以上嵌入式微处 理器。由于嵌入式系统设计的差异性极大,因此选择是多样化的。 调查上市的 CPU 供应商,有些公司如 Motorola、Intel、AMD 很有名气, 而有一些小的公司,如 QE)D(ICE)Santa Clara.CA)虽然名气很小,但也生产很优秀 的微处理器。另外,有一些公司,如 ARM、MIPS 等,只设计但并不生产 CPU,他们把生产权授予世界各地的半导体制造商。ARM 是近年来在嵌入式 系统有影响力的微处理器制造商,ARM 的设计非常适用于小的电源供电系统。 Apple 在 Newton 手持计算机中使用 ARM,另外有几款数字无线电话也在使 用 ARM。 设计者在选择处理器时要考虑的主要因素有: ① 处理性能。一个处理器的性能取决于多个方面的因素,如时钟频率, 内部寄存器的大小,指令是否对等处理所有的寄存器等。对于许多需用处理 器的嵌入式系统设计来说,目标不是在于挑选速度最快的处理器,而是在于 选取能够完成作业的处理器和 I/O 子系统。如果是面向高性能的应用设计, 那 么 建 议 考 虑 某 些 新 的 处 理 器 , 其 价 格 相 对 低 廉 , 如 IBM 和 Motorola Power PC。 ② 技术指标。当前,许多嵌入式处理器都集成了外围设备的功能,减少 了芯片的数量,降低了整个系统的开发费用。开发人员首先考虑的是,系统 所要求的一些硬件能否无需过多的胶合逻辑(ICE)GL,Glue Logic))就可以连接到 处理器上。其次是考虑该处理器的一些支持芯片,如 DMA 控制器,内存管 理器,中断控制器,串行设备、时钟等的配套。 ③ 功耗。嵌入式微处理器最大并且增长最快的市场是手持设备、电子记 事本、PDA、手机、GPS 导航器、智能家电等消费类电子产品。这些产品中 选购的微处理器,典型的特点是要求高性能、低功耗。许多 CPU 生产厂家已 经进入了这个领域。今天,用户可以买到一颗嵌入式的微处理器,其速度像 笔记本中的 Pentium 一样快;而它仅使用普通电池供电即可,并且价格很便 宜。如果用于工业控制,则对这方面的考虑较弱。 ④ 软件支持工具。仅有一个处理器,没有较好的软件开发工具的支持也 是不行的,因此选择合适的软件开发工具对系统的实现会起到很好的作用。 ⑤ 是否内置调试工具。处理器如果内置调试工具可以大大缩小调试周期, 降低调试的难度。 ⑥ 供应商是否提供评估板。许多处理器供应商可以提供评估板来验证理 论是否正确,决策是否得当。 3.2 硬件部件选择的其它因素 ① 生产规模。打算做 1 套?多套?还是规模生产?如果生产规模比较大, 可以自己设计和制备硬件,这样可以降低成本。反之,最好从第三方购买主 板和 I/O 板卡。 ② 开发的市场目标。如果想使产品尽快发售,以获得竞争力,此时要尽 可能买成熟的硬件;反之,可以自己设计硬件,降低成本。 ③ 软件对硬件的依赖性。软件是否可以在硬件没有到位的时候并行设计 或先行开发。 ④ 只要可能,尽量选择使用普通的硬件。在 CPU 及架构的选择上,一 个原则是:只要有可替代的方案,尽量不要选择 Linux 尚不支持的硬件平台。 4 软件平台的选择 图 1 所示的嵌入式软件的开发流程,主要涉及到代码编程、交叉编译、 交叉连接、下载到目标板和调试等几个步骤,因此软件平台的选择也涉及到 以下几个方面。 4.1 操作系统的选择 (ICE)1)操作系统选择应考虑的因素 硬件方案确定之后,操作系统的选择就相对轻松了。硬件的不同,会影 响操作系统的选择。低端无 MMU(ICE)Memory Management Unit,存储器管理 单元)的 CPU,要使用 uClinux 操作系统;而相对高端的硬件,则可以用普通 的嵌入式 Linux 操作系统。uClinux 和普通的 Linux 有各自的优势和缺点。 可用于嵌入式系统软件开发的操作系统很多,但关键是如何选择一个适合开 发项目的操作系统。经过多年的开发实践,笔者认为应该从以下几点进行考 虑: ① 操作系统提供的开发工具。有些实时操作系统(ICE)RTOS)只支持该系统供 应商的开发工具,因此,还必须向操作系统供应商获取编译器、调试器等;而 有些操作系统使用广泛,且有第三方工具可用,因此,选择的余地比较大。 ② 操作系统向硬件接口移植的难度。操作系统到硬件的移植是一个重要 的问题,是关系到整个系统能否按期完工的一个关键因素。因此,要选择那些 可移植性程度高的操作系统,避免操作系统难以向硬件移植而带来的种种困 难,加速系统的开发进度。 ③ 操作系统的内存要求。均衡考虑是否需要额外花钱去购买 RAM 或 E)E)PROM 来迎合操作系统对内存的较大要求。 ④ 开发人员是否熟悉此操作系统及其提供的 API。 ⑤ 操作系统是否提供硬件的驱动程序,如网卡等。 ⑥ 操作系统的可剪裁性。有些操作系统具有较强的可剪裁性,如嵌入式 Linux、Tornado/VxWorks 等等。 ⑦ 操作系统的实时性能。 (ICE)2)几类嵌入式 Linux 系统的比较 嵌入式 Linux 系统方面的产品主要分为三类: 第一类是专门为 Lin
温馨提示:当前文档最多只能预览 2 页,此文档共5 页,请下载原文档以浏览全部内容。如果当前文档预览出现乱码或未能正常浏览,请先下载原文档进行浏览。
Linux嵌入式系统开发平台选型探讨 第 1 页Linux嵌入式系统开发平台选型探讨 第 2 页

下载提示

1 该文档不包含其他附件(如表格、图纸),本站只保证下载后内容跟在线阅读一样,不确保内容完整性,请务必认真阅读

2 除PDF格式下载后需转换成word才能编辑,其他下载后均可以随意编辑修改

3 有的标题标有”最新”、多篇,实质内容并不相符,下载内容以在线阅读为准,请认真阅读全文再下载

4 该文档为会员上传,版权归上传者负责解释,如若侵犯你的隐私或权利,请联系客服投诉

最近更新

热门排行