嵌入式 ARM Linux 系统开发

dy83

贡献于2015-05-18

字数:0 关键词: 嵌入式开发

自我介绍 • 姓名:琚贇 • E-MAIL&MSN:juyun1982@hotmail.com • Mobile:13701377152 嵌入式系统 —基于32位微处理器与嵌入式操作系统 主要内容 111 333 222 444 应用需求促成了丰富多样的嵌入式系统 嵌入式ARM Linux系统最新发展 剖析嵌入式ARM Linux系统技术 嵌入式ARM Linux系统典型应用 555 嵌入式ARM Linux系统的开发流程 应用对嵌入式系统提出的需求 – 以应用为中心、以计算机技术为基础,软硬件 可裁剪,应用系统对功能、可靠性、成本、体积、 功耗和应用环境有特殊要求的专用计算机系统。 – 嵌入式系统是将应用程序、操作系统和计算机 硬件集成在一起的系统(技术角度) – 嵌入式系统是设计完成复杂功能的硬件和软 件,并使其紧密耦合在一起的计算机系统。 (系统角度) • 术语嵌入式反映了这些系统通常是更大系统(被称之为嵌入的 系统)的一个完整子系统。嵌入式的系统可以包含多个嵌入式 系统。 Consumer Electronics Show Consumer Electronics Show Consumer Electronics Show Consumer Electronics Show Consumer Electronics Show Consumer Electronics Show Consumer Electronics Show Consumer Electronics Show Consumer Electronics Show 消费者在购买更多的电子产品 差异化&创新=市场增长 主要内容 111 333 222 444 应用需求促成了丰富多样的嵌入式系统 嵌入式ARM Linux系统最新发展 剖析嵌入式ARM Linux系统技术 嵌入式ARM Linux系统典型应用 555 嵌入式ARM Linux系统的开发流程 嵌入式处理器分类 • 微处理器(Microprocessor Unit, MPU) • 微控制器(Microcontroller Unit, MCU) • 嵌入式DSP (Embedded Digital Signal Processor, EDSP) • 片上系统(System On Chip) Embedded vs Computing 32位浪潮的到来 嵌入式处理器现状和发展趋势 • 典型的8位微处理系统 – MCS-51系列的单片机是低端嵌入式系统中用得最多 的微处理器。 • 典型的16位微处理系统 – MCS-96系列单片机和16位DSP芯片 • 典型的32位微处理系统 – ARM系列是应用较广泛的32位微处理器。实际上该 系列的MCU芯片很多,但大都是已ARM微内核为核 心的。32位的DSP应用的也很广泛。 嵌入式微处理器  目前主要的嵌入式处理器类型有Am186/88、386EX、SC-400 、PowerPC、68000、MIPS、ARM/StrongARM系列等 嵌入式微处理器 嵌入式微控制器 • 又称单片机,这种8位的电子器件目前在嵌入式设 备中仍然有着极其广泛的应用。 • 单片机芯片内部集成ROM/EPROM、RAM、总线、总线 逻辑、定时/计数器、看门狗、I/O、串行口、脉宽 调制输出、A/D、D/A、Flash RAM、EEPROM等各种 必要功能和外设。 • 代表性的通用系列包括8051、P51XA、MCS-251、 MCS-96/196/296、C166/167、MC68HC05/11/12 /16、 68300等。 • 另外还有许多半通用系列如:支持USB接口的MCU 8XC930/931、C540、C541;支持I2C、CAN-Bus、 LCD及众多专用MCU和兼容系列。目前MCU占嵌入式 系统约70%的市场份额。 嵌入式微控制器 • 微控制器的最大特点是单片化,体积大大减小,从而使功耗和成本 下降、可靠性提高。 • 微控制器是目前嵌入式系统工业的主流。微控制器的片上外设资源 一般比较丰富,适合于控制,因此称为微控制器。 嵌入式DSP处理器 • DSP处理器是专门用于信号处理方面的处理器,其 在系统结构和指令算法方面进行了特殊设计,在数 字滤波、FFT、谱分析等各种仪器上DSP获得了大规 模的应用。 • DSP处理器对系统结构和指令进行了特殊设计,使 其适合于执行DSP算法,编译效率较高,指令执行 速度也较高。 • DSP的理论算法在70年代就已经出现,但是由于专 门的DSP处理器还未出现,所以这种理论算法只能 通过MPU等由分立元件实现。1982年世界上诞生了 首枚DSP芯片。在语音合成和编码解码器中得到了 广泛应用。DSP的运算速度进一步提高,应用领域 也从上述范围扩大到了通信和计算机方面。 嵌入式DSP处理器 • 有代表性的产品是Texas Instruments的 TMS320系列和 Motorola的DSP56000系列。 • TMS320系列处理器包括用于控制的C2000系列,移动通信的 C5000系列,以及性能更高的C6000和C8000系列。 • Motorola公司的DSP56000已经发展成为DSP56000,DSP56100, DSP56200和DSP56300等几个不同系列的处理器。 • PHILIPS公司今年来也推出了基于可重置嵌入式DSP结构低成 本、低功耗技术上制造的DSP处理器,特点是具备双Harvard 结构和双乘/累加器单元,应用目标是大批量消费类电子产品。 • SoC就是System on Chip,SoC是一种基于IP(Intellectual Property)核嵌入式系统设计技术。 • 它结合了许多功能区块,将功能做在一个芯片上,ARM RISC、MIPS RISC、DSP或是其他的微处理器核心,加上 通信的接口单元,例如通用串行端口(USB)、TCP/IP通 信单元、GPRS通信接口、GSM通信接口、IEEE1394、蓝 牙模块接口等等,这些单元以往都是依照各单元的功能做 成一个个独立的处理芯片。 • SOC可以分为通用和专用两类。 – 通用系列包括Infineon(Siemens)的TriCore,Motorola的M-Core, Echelon和Motorola联合研制的Neuron芯片等。 – 专用SOC一般专用于某个或某类系统中。有代表性的产品是Philips 的Smart XA 嵌入式片上系统(SoC) SOC体系结构 ASIC Core Memory Embedded Processor Core Analog Functions Communication Sensor Interface SOC IP 实例 性能、功耗、体积、成本 科技进步将使SoC价格进一步下降 知识产权 嵌入式处理器的硬件框架 设计的平衡和灵活性 日常生活中的ARM 2010:ARM处理器年出货50亿片 ARM处理器分类 ARM创新的商业模式 ARM’s Activities memorymemory SoCSoC Processors System Level IP: Data Engines Fabric Physical IP Software IP Development Tools Connected Community Business Built on Partnership 一个结构体系满足不同应用需求 满足不同需求的ARM处理器 满足不同应用的ARM处理器 ARM微处理器演进 不断创新的ARM处理器技术 当前主流的ARM处理器 ARM的最新发展 2008~2009 2010 2010主流ARM11 2010主流ARM11 2010~2011 2010~2011 Cortex升级移动计算能力 CortexA8手持多媒体计算能力 Cortex-A9已发布 领先的嵌入式处理器技术发展 核芯演进图 软件变得越来越重要—价值的体现 但是…软件开发并不容易 软件复杂度增加 软件成本增加 硬件平台需要软件平台支撑 Models & players Mobile Internet Devices Full Web in your pocket 常见浏览器 UI开发 UI & OpenGL & GPU Demo GPU加速浏览 典型布局 3D导航 Mali & OpenGL ARM 3D GPU 家族 Mali 软件支持 多媒体加速技术 ARM多媒体解决方案 ARM 嵌入式软件支撑 ARM生态系统 当前主流平台 将来… ARM平台解决复杂问题 ARM现有产品 ARM开发工具 快速开发工具 RealView开发工具套件 Linux的最新发展 主要内容 111 333 222 444 应用需求促成了丰富多样的嵌入式系统 嵌入式ARM Linux系统最新发展 剖析嵌入式ARM Linux系统技术 嵌入式ARM Linux系统典型应用 555 嵌入式ARM Linux系统的开发流程 嵌入式系统组成 嵌入式系统的软/硬件框架 嵌入式硬件子系统 • 硬件子系统 嵌入式最小硬件系统 • 最小硬件系统 嵌入式软件子系统 • 嵌入式软件子系统 嵌入式系统与单片机、PC相比的优势 • 采用32位RISC嵌入式微处理器和实时操作系统组成的 嵌入式控制系统,与传统基于单片机的控制系统和基 于PC的控制方式相比,具有以下突出优点: 性能方面:采用32位RISC结构微处理器,主频从30MHz到 624MHz以上,处理能力大大超出单片机系统,接近PC机的水 平,但体积更小,能够真正地“嵌入”到设备中; 实性性方面:嵌入式机控制器内嵌实时操作系统(RTOS), 能够完全保证控制系统的强实时性; 人机交互方面:嵌入式控制器可支持大屏幕的液晶显示器, 提供功能强大的图形用户界面;输入方法多种多样; 系统升级方面:嵌入式控制器可为控制系统专门设计,其功 能专一,成本较低,而且开放的用户程序接口(API)保证了 系统能够快速升级和更新。 操作系统的发展 • 计算机系统由硬件和软件构成,在发展初期并没有操作系统 这个概念,用户使用监控程序来使用计算机。随着计算机技 术的发展,计算机系统的硬件、软件资源越来越丰富,监控 程序已不能适应计算机应用的要求。于是在六十年代中期监 控程序进一步发展形成了操作系统。到目前为止,主流的操 作系统有三种:多道批处理、分时和实时操作系统。 嵌入式操作系统结构 • 操作系统分类 – 微内核(micro-kernel) – 单晶内核(monolithic kernel) – 混合内核(hybrid kernel) 嵌入式操作系统 • 实时操作系统的特点 IEEE 的实时UNIX分委会认为实时操作系统应具 备以下的几点: .异步的事件响应 .切换时间和中断延迟时间确定 .优先级中断和调度 .抢占式调度 .内存锁定 .连续文件 .同步 嵌入式操作系统 • 实时操作系统的特点总的来说实时操作系统是事件驱动的,能对来自 外界的作用和信号在限定的时间范围内作出响应。它 强调的是实时性、可靠性和灵活性, 与实时应用软件相 结合成为有机的整体起着核心作用, 由它来管理和协调 各项工作,为应用软件提供良好的运行软件环境及开发 环境。 从实时系统的应用特点来看实时操作系统可以分 为两种:一般实时操作系统一般实时操作系统和嵌入式实时操作系统嵌入式实时操作系统。 嵌入式操作系统 • 实时操作系统的特点一般实时操作系统一般实时操作系统应用于实时处理系统的上位机 和实时查询系统等实时性较弱的实时系统,并且提供 了开发、调试、运用一致的环境。 嵌入式实时操作系统嵌入式实时操作系统应用于实时性要求高的实时 控制系统,而且应用程序的开发过程是通过交叉开发 来完成的,即开发环境与运行环境是不一致。嵌入式 实时操作系统具有规模小(一般在几K~几十K 内)、可 固化使用实时性强(在毫秒或微秒数量级上)的特点 。 嵌入式操作系统 • 基本概念 对基于芯片的开发来说,应用程序一般是一个无 限的循环,可称为前后台系统或超循环系统。 很多基于微处理器的产品采用前后台系统设计, 例如微波炉、电话机、玩具等。在另外一些基于微处 理器应用中,从省电的角度出发,平时微处理器处在 停机状态,所有事都靠中断服务来完成。 ——前后台系统 • 基本概念 中断服务程 序处理异步事 件,这部分可以 看成前台行为, 前台也叫中断级。 时间相关性很强 的关键操作一定 是靠中断服务程 序来保证的。 循环中调用 相应的函数完成 相应的操作,这 部分可以看成后 台行为,后台也 可以叫做任务级。 这种系统在处理 的及时性上比实 际可以做到的要 差。 ISR ISR ISR ISR 后台 前台 中断服务程序 时 间 ——前后台系统 嵌入式操作系统 嵌入式操作系统 • 基本概念 操作系统是计算机中最基本的程序。操作系统负 责计算机系统中全部软硬资源的分配与回收、控制与 协调等并发的活动;操作系统提供用户接口,使用户 获得良好的工作环境;操作系统为用户扩展新的系统 功能提供软件平台。 ——操作系统 硬件 硬件驱动 操作系统 用户程序 嵌入式操作系统 • 基本概念 实时操作系统是一段在嵌入式系统启动后首先执 行的背景程序,用户的应用程序是运行于RTOS之上的 各个任务,RTOS根据各个任务的要求,进行资源(包 括存储器、外设等)管理、消息管理、任务调度、异常 处理等工作。在RTOS支持的系统中, 每个任务均有 一个优先级,RTOS根据各个任务的优先级,动态地切 换各个任务,保证对实时性的要求。 ——实时操作系统(RTOS) 嵌入式操作系统 • 基本概念 代码的临界区也称为临界区,指处理时不可分割 的代码,运行这些代码不允许被打断。一旦这部分代 码开始执行,则不允许任何中断打入(这不是绝对 的,如果中断不调用任何包含临界区的代码,也不访 问任何临界区使用的共享资源,这个中断可能可以执 行)。为确保临界区代码的执行,在进入临界区之前 要关中断,而临界区代码执行完成以后要立即开中断。 ——代码的临界区 嵌入式操作系统 • 基本概念 程序运行时可使用的软、硬件环境统称为资源。 资源可以是输入输出设备,例如打印机、键盘、显示 器。资源也可以是一个变量、一个结构或一个数组等。 ——资源 任务A 共享资源任务B 任务C 信号量 嵌入式操作系统 • 基本概念 可以被一个以上任务使用的资源叫做共享资源。 为了防止数据被破坏,每个任务在与共享资源打交道 时,必须独占该资源,这叫做互斥。 ——共享资源 访问共享资源之 前申请信号量 其它任务访问受阻 而不能使用共享资源 得到允许后,才 能使用共享资源 嵌入式操作系统 • 基本概念 一个任务,也称作一个线程,是一个简单的程 序,该程序可以认为CPU完全属于该程序自己。实时 应用程序的设计过程,包括如何把问题分割成多个任 务,每个任务都是整个应用的某一部分,每个任务被 赋予一定的优先级,有它自己的一套CPU寄存器和自 己的栈空间。 ——任务 嵌入式操作系统 • 基本概念 当多任务内核决定运行另外的任务时,它保存正 在运行任务的当前状态,即CPU寄存器中的全部内容。 这些内容保存在任务的当前状态保存区,也就是任务 自已的栈区之中。入栈工作完成以后,就把下一个将 要运行的任务的当前状态从任务的栈中重新装入CPU 的寄予存器,并开始下一个任务的运行。这个过程就 称为任务切换。这个过程增加了应用程序的额外负荷。 CPU的内部寄存器越多,额外负荷就越重。做任务切 换所需要的时间取决于CPU有多少寄存器要入栈。 ——任务切换 嵌入式操作系统 • 基本概念 多任务系统中,内核负责管理各个任务,或者说 为每个任务分配CPU时间,并且负责任务之间的通信。 内核提供的基本服务是任务切换。使用实时内核可以 大大简化应用系统的设计,是因为实时内核允许将应 用分成若干个任务,由实时内核来管理它们。内核需 要消耗一定的系统资源,比如2%~5%的CPU运行时 间、RAM和ROM等。 内核提供必不可少的系统服务,如信号量、消息 队列、延时等。 ——内核 嵌入式操作系统 • 基本概念 调度是内核的主要职责之一。调度就是决定该轮 到哪个任务运行了。多数实时内核是基于优先级调度 法的。每个任务根据其重要程序的不同被赋予一定的 优先级。基于优先级的调度法指CPU总是让处在就绪 态的优先级最高的任务先运行。然而究竟何时让高优 先级任务掌握CPU的使用权,有两种不同的情况,这 要看用的是什么类型的内核,是非占先式的还是占先 式的内核。 ——调度 嵌入式操作系统 • 基本概念 非占先式内核要求每个任务自我放弃CPU 的所有 权。非占先式调度法也称作合作型多任务,各个任务 彼此合作共享一个CPU。异步事件还是由中断服务来 处理。中断服务可以使一个高优先级的任务由挂起状 态变为就绪状态。但中断服务以后控制权还是回到原 来被中断了的那个任务,直到该任务主动放弃CPU的 使用权时,那个高优先级的任务才能获得CPU的使用 权。 ——非占先式内核 嵌入式操作系统 • 基本概念 当系统响应时间很重要时,要使用占先式内核。 因此绝大多数商业上销售的实时内核都是占先式内核。 最高优先级的任务一旦就绪,总能得到CPU的控制权。 当一个运行着的任务使一个比它优先级高的任务进入 了就绪状态,当前任务的CPU使用权就被剥夺了,或 者说被挂起了,那个高优先级的任务立刻得到了CPU 的控制权。如果是中断服务子程序使一个高优先级的 任务进入就绪态,中断完成时,中断了的任务被挂 起,优先级高的那个任务开始运行。 ——占先式内核 嵌入式操作系统 • 基本概念 任务的优先级是表示任务被调度的优先程度。每 个任务都具有优先级。任务越重要,赋予的优先级应 越高,越容易被调度而进入运行态。 ——任务优先级 嵌入式操作系统 • 基本概念 中断是一种硬件机制,用于通知CPU有个异步事 件发生了。中断一旦被识别,CPU保存部分(或全部) 上下文即部分或全部寄存器的值,跳转到专门的子程 序,称为中断服务子程序(ISR)。中断服务子程序做 事件处理,处理完成后,程序回到: 1. 在前后台系统中,程序回到后台程序; 2. 对非占先式内核而言,程序回到被中断了的任 务; 3. 对占先式内核而言,让进入就绪态的优先级最高 的任务开始运行。 ——中断 前后台系统 嵌入式操作系统 • 基本概念——中断 ISR 任务 ISR 非占先操作系统 任务 A 任务 B 任务 C ISR 占先操作系统 任务 A 任务 B 任务 C 嵌入式操作系统 • 基本概念 时钟节拍是特定的周期性中断。这个中断可以看 作是系统心脏的脉动。中断之间的时间间隔取决于不 同应用,一般在10ms到200ms之间。时钟的节拍式中 断使得内核可以将任务延时若干个整数时钟节拍,以 及当任务等待事件发生时,提供等待超时的依据。时 钟节拍率越快,系统的额外开销就越大。 ——时钟节拍 使用嵌入式操作系统的优缺点 • 优点 – 使程序的设计和扩展变得容易,大大提高了开 发效率。 – 充分发挥32位CPU多任务的潜力,实现多任务设 计,能够充分利用硬件资源和实现资源共享。 – 实时性和健壮性能够得到更好的保证。 • 缺点 – 嵌入式操作系统增加ROM/RAM等额外开销,5~ 10%的CPU额外负荷。 嵌入式操作系统分类 • 按收费模式划分 – 商用型 • Vxworks, Nucleux ,PlamOS, Symbian, WinCE, QNX, pSOS,VRTX,Lynx OS, Hopen, Delta OS – 免费型 • Linux, μCLinux,μC/OS-Ⅱ,eCos,uITRON • 按实时性划分 – 硬实时 • Vxworks – 软实时 • WinCE,RTLinux – 无实时 • Embedded Linux • Linux是开放源码和免费使用的,遍布全球的众多Linux爱好 者又是Linux开发的强大技术后盾。 • 嵌入式Linux(Embedded Linux)是指对Linux经过小型化裁剪 后,能够固化在容量只有几百K字节或几兆字节的存储器芯 片或单片机中,应用于特定嵌入式场合的专用Linux操作系 统。嵌入式Linux的开发和研究是目前操作系统领域的一个 热点。主要有RTLinux和CLinux • Linux的内核小、功能强大、API丰富,系统健壮、效率高, 易于定制剪裁,在价格上极具竞争力。 • Linux不仅支持x86 CPU,还可以支持其他数十种CPU芯片。 • 近几年Linux在嵌入式领域异军突起,过去的一年中有13%的 用户已经开始使用嵌入式Linux系统进行开发工作;有52%的 用户决定在未来24个月内开始使用Linux作为嵌入式操作系 统的开发原型。 嵌入式Linux及应用 µcLinux Windows Embedded • Windows CE:一种针对小容量、移动式、智能化、 32位、连接设备的模块化实时嵌入式操作系统(缩 减的Win95)。 • 针对掌上设备、无线设备的动态应用程序和服务提 供了一种功能丰富的操作系统平台,属于软实时操 作系统, • 由于其Windows背景,界面比较统一认可。可以使 用大多数Windows开发工具(如VB,VC等),大多 数Windows应用程序经过移植后就可以运行在WinCE 平台上。 • 操作系统的基本内核需要至少200K的ROM。 VxWorks • VxWorks操作系统是美国WindRiver公司于1983年设 计开发的一种嵌入式实时操作系统(RTOS),具有 良好的持续发展能力、高性能的内核以及友好的用 户开发环境,在嵌入式实时操作系统领域牢牢占据 着一席之地。 • VxWorks所具有的显著特点是: - 可靠性、实时性和可裁减性。 - 它支持多种处理器,如x86、i960、Sun Sparc、 Motorola MC68xxx、MIPS 、POWER PC等等。 • 以其良好的可靠性和卓越的实时性被广泛地应用在 通信、军事、航空航天等高精尖技术及实时性要求 极高的领域中,如火星探测器(1997年7月4日登陆 火星表面)。 Symbian OS • Symbian由诺基亚、西门子、索尼爱立信等几家大 型移动通讯设备商共同出资组建的一个合资公 司,专门研发手机操作系统。Symbian操作系统的 前身是EPOC。 • 针对PDA及智能手机的,能够提供良好的软实时的 操作系统,目前占有60%的智能手机市场 • 与之竞争的有Windows Mobile、PalmOS以及Linux • 主要版本 – Series 60/90/80/40 – UIQ Palm OS • Palm OS是著名的网络设备制造商3COM旗下的Palm Computing掌上电脑公司的产品。 • Palm OS是一套专门为掌上电脑编写的操作系统,充分考虑 到了掌上电脑内存相对较小的情况,所以Palm操作系统本 身所占的内存很小,基于Palm操作系统编写的应用程序所 占的空间也很小,通常只有几十KB,因此基于Palm操作系 统的掌上电脑虽然只有几兆内存却可以运行众多的应用程 序。 • Palm OS在PDA市场上占有很大的市场份额, Palm OS的市 场份额占到将近90%,最近下降70%,目前主要与WIN CE进 行激烈竞争。 • 代表性的产品有Palm m505、Palm m500、Palm III等。 QNX • 加拿大QNX公司的产品。 • QNX是在X86体系上面开发出来的,这和别的RTOS不一 样,别的好多RTOS都是从68K的CPU上面开发成熟,然后再 移植到X86体系上面来的。 • QNX是一个实时的、可扩充的操作系统,它部分遵循 POSIX相关标准,由于QNX具有强大的图形界面功能,因此 很适合作为机顶盒、手持设备(手掌电脑、手机)、GPS 设备的实时操作系统使用。 C/OS及C/OS-II • C/OS—Micro Controller O S • C/OS简介 – 美国人Jean Labrosse 1992年完成,已应用于数百种产 品中。 – 应用面覆盖了诸多领域,如照相机、医疗器械、音响设 备、发动机控制、高速公路电话系统、自动提款机等 – 1998年C/OS-II,目前的版本C/OS -II V2.72 – 2000年,得到美国航空管理局(FAA)的认证,可以用 于飞行器中 – 是一个源码公开、可移植、可裁减、占用资源少、抢先 式的实时多任务操作系统。其绝大部分源码采用ANSI C 写的,移植性好。高校教学可免费使用。 – 网站www.ucos-II.com(www.micrium.com) OSE • OSE主要是由瑞典的ENEA Data AB下属的ENEA OSE Systems AB 负责开发和技术服务的,一直以来都 充当着实时操作系统以及分布式和容错性应用的 先锋,并保持良好的发展态势。 • OSE的客户深入到电信、数据、工控、航空邓领 域,尤其在电信方面,该公司已经有了十余年的 开发经验,同诸如爱立信、诺基亚、西门子等公 司确立了良好的关系。 • 目前手机市场占有率为15%左右,期望在未来3G 手机市场占有率达到50%。 Nucleus PLUS Nucleus 主要应用:网络设备,例如,路由器,机顶盒等 主要内容 111 333 222 444 应用需求促成了丰富多样的嵌入式系统 嵌入式ARM Linux系统最新发展 剖析嵌入式ARM Linux系统技术 嵌入式ARM Linux系统典型应用 555 嵌入式ARM Linux系统的开发流程 各种常见的ARM+Linux组合 ARM+Linux的典型应用 ARM+Linux的典型应用 ARM+Linux的典型应用 ARM11开发实例 嵌入式系统的应用领域 嵌入式应用 信息家电 智能玩具 军事电子 通信设备 移动存贮 工控设备 智能仪表 汽车电子 网络设备 消费电子军事国防 电子商务 网络 工业控制 嵌入式系统的应用 • 家用方面:数字电视、信息家电、智能玩具、 手持通讯、存储设备的核心。 嵌入式视频服务器 现代化家庭 嵌入式Internet应用 嵌入式系统在信息家电中的应用 • 信息家电(Information Appliance) –一般可认为,那些低单价、操作简单、 可通过因特网发送或获取信息,将逐步 分割或替代PC的某些功能,并能与其它 信息产品交换资料或讯息的产品可统称 为信息家电。 信息家电的分类及特点 • 信息家电的分类 – 网络电视(NetTV) – 网上游戏机(Internet gaming device) – 智能掌上型设备(Internet smart handheld device) – 网络电话(Internet screen Phone) – Consumer NC client等。 • 信息家电技术特点 – 处理器发展趋向低成本、高整合性与低耗能。 – 整合数字与模拟处理的技术。 – 较PC更强调通讯能力。 – 利用软件增加产品的差异性(高附加价值的关键) 典型的信息家电产品 信息家电 定义 代表性产品 网络电视 具有机顶盒或内建网络 连接的电视 Microsoft WebTV 网络可视电话 具有集成网络接入的屏 幕电话 InfoGear iPhone 网络游戏机 具有集成网络接入的游 戏操纵台 Sega Dreamcast 网络智能手持器件 蜂窝电话、个人数据助 理(PDA)和其它集成网 络接入的便携式器件 3Com Palm AT&T PocketNet Phone Nokia 9000,9000I,9110,7110 NC委托(clients) 提供网络接入以及能下 载应用软件的器件 IBM NetStation PC-中间器件 通过PC接入网络以下载 内容的器件 DIAMON Multimedia Rio Player Nuvomedia Rocket e-Book Audible Mobile Player Source: IDC, Hambrecht & Quist 信息家电——数字机顶盒 汽车电子产品(18个嵌入式控制模块)——CAN 总线网络 VOLVO S80汽车的 CAN总线网络 嵌入式应用——汽车电子 智能玩具与机器人 嵌入式技术应用——工业控制 • 工业方面:机床、冶金、电子、交通、 航空航天等行业技术升级的重要基础 阿富汗参加反恐作战的“赫 耳墨斯”价值4万美元,可 携带2架摄像机,发挥了很 好作用。 军事侦察 2002年11月 28日,以色列 一选举投票 点,发生枪击 事件,造成至 少7人死亡, 数十人受伤。 以警方用机器 人在检查一具 巴勒斯坦枪手 的尸体。 反恐防暴 微型飞行器---“黑寡妇” 空中飞行器 基于Win CE的移动机器人平台 基于RTLinux的仿人机器人 高 48 cm 重: 6 kg 灵活性:20 DOF 操作系统: RT-Linux 接口形式: USB 1.0 (12Mbps) 响应周期: 1ms 能源: DC24V x 6.2A (150W) 制造:富士通 基于VXworks的火星探路者 2004年“勇气号”再次登陆火星 主要内容 111 333 222 444 应用需求促成了丰富多样的嵌入式系统 嵌入式ARM Linux系统最新发展 剖析嵌入式ARM Linux系统技术 嵌入式ARM Linux系统典型应用 555 嵌入式ARM Linux系统的开发流程 嵌入式系统设计的主要步骤 • 以自顶向下的角度来看,系 统设计从系统需求分析开 始;第二步是规格说明,在 这一步我们对需设计的系统 功能进行更细致地描述,这 些描述并不涉及系统的组 成;第三步是系统结构设 计,在这一阶段以大的构件 为单位设计系统内部详细构 造,明确软、硬件功能的划 分;第四步是构件设计,它 包括系统程序模块设计、专 用硬件芯片选择及硬件电路 设计;第五步是系统集成, 在完成了所有构件设计的基 础上进行系统集成,构造出 所需的完整系统。 需求分析 规格说明 体系结构设计 构件设计 系统调试与集成 需求分析与规格说明 • 在设计之前,我们必须清楚要设计什么。在设计的最初阶 段,我们应从客户那里收集系统功能的非形式描述,在此 称其为需求;对需求进行提炼,以得到系统的规格说明, 规格说明中应包含我们进行系统体系结构设计所需的足够 信息。 • 在此把需求和规格说明区分开是必要的,因为嵌入式系统 的用户不是专业人员,他们对系统的描述是建立在他们想 象的、系统应具备的功能基础上,对系统可能有些不切实 际的期望,表达要求时使用自己的话而不是专业术语。因 而,必须将用户的描述转化为系统设计者的描述,从用户 的需求中整理形成正式的规格说明。 用户需求的格式 • 用户需求通常 包括功能部分 和非功能部分。 非功能部分需 求主要指:性 能、价格、尺 寸和重量、功 耗等。右边表 是一个在系统 设计的初始阶 段使用的需求 说明表格样 本,该表格用 简练、清晰的 语句描述系统 的基本需求。 项目 说明 名称 目的 输入 输出 功能 性能 生产成本 功耗 尺寸和重量 GPS移动地图系统:示例 项目 说明 名称 GPS移动地图 目的 为司机等用户提供图形状的移动地图 输入 一个电源开关、两个操作按钮、GPS信号 输入 输出 LCD显示器,分辨率为400×600 功能 可接5种GPS接收器;三种用户可选的地图 比例;总是显示当前经纬度 性能 0.25秒内即可更新一次屏幕,常温下工作 生产成本 1500元(人民币) 功耗 四节电池供电应连续工作8小时,功耗约 100mW 尺寸和重 量 尺寸不大于20cm×30cm,重量不大于 0.25公斤 GPS移动地图是一种 手持设备,该设备 为用户(如汽车驾 驶员)显示他当前 所处位置周围的地 图;显示的地图内 容应随用户以及该 设备所处位置的改 变而改变。该设备 从GPS上得到其位置 信息,移动地图的 显示看起来应类似 纸张上的地图。针 对用户的初步要 求,我们编写出如 右表所示的系统需 求表。 描述规格说明的工具 • 规格说明应更精确地反映用户的需求,它是设 计者在设计时必须明确遵循的要求。规格说明 应小心编写,描述应足够清晰,不能有歧义, 以便别人可以通过它来验证设计是否达到要求。 规格说明中通常只描述系统应做什么,而不描 述系统该怎么做。 • 描述规格说明的工具可采用统一建模语言 (UML)。UML语言是一种面向对象的建模语 言,它是软件工程课程中详细讲解的内容,本 书附录A中简要地介绍了它的概念和图形工具。 体系结构设计 • 系统结构设计的目的 是描述系统如何实现 系统的功能,它是系 统整体结构的一个计 划。右图以框图的形 式描述了GPS移动地图 的体系结构,图中展 示了移动地图的主要 操作和其间的数据流。 框图仍很抽象,还没 有规定软件完成什 么,专用硬件完成什 么,等等。但该图还 是清楚地描述了许多 功能,如需搜索地形 图数据库、需显示地 图、需接收GPS信号等。 GPS接 收器 信号 搜索 引擎 显示 控制 显示 器 数据 库 用户 接口 系统硬件体系结构 显示器 显示控制器 (含显缓) 存储器 GPS信号接收 器 CPU I/O接口 系统软件体系结构 GPS接口 程序 数据库查询 输入/输出控制 程序 显示控制 定时器 构件设计 • 体系结构设计中告诉我们需要什么样的构件,而构件设 计中就是设计或选择符合体系结构和规格说明中所需求 的构件。构件通常既包括硬件,如FPGA、电路板等,也 包括软件模块。 • 一些硬件构件是现成的。现成的硬件构件即有标准构 件,也有专用构件,例如CPU芯片,存储器芯片等就是 标准构件,而在移动地图中GPS接收器就是专用构件。 同样地,软件构件也可利用标准软件模块,如地图数据 库及数据库标准访问例程及函数。 • 更多的情况下,我们需要自己设计一些构件,即使采用 标准的集成电路,也必须设计连接它们的印刷电路板, 同时,需做大量的定制编程。当然,建立嵌入式软件模 块时,必须确保系统实时性良好,并且在允许的范围内 不占用更多的存储空间。在移动地图这个例子中,电能 消耗特别重要,设计时应尽量减少存储器读/写,因为 存储器访问是主要的功耗来源,存储器的访问必须精心 安排,以避免多次读取相同的数据。 系统调试与集成 • 只有建立构件后,才能将它们合并得到一个可以 运行的系统。当然在系统集成阶段并不是仅仅把 所有的构件连接在一起就行,通常都会发现以前 设计上的错误。在系统集成时按阶段构架系统, 并每次只对一部分模块排错,能够更容易地发现 并定位错误。我们必须确保在体系结构和各构件 设计阶段尽可能按阶段集成系统,并相对独立地 测试系统功能。系统集成时要准确定位出现的错 误是非常困难的,在这一阶段,设计者的专业知 识和经验将起很大的作用。 教学硬件平台—ARM 2002嵌入式内核总量: 6.265亿 其他 0.8% MicroSPARC 3.1% MIPS 13.9% PowerPC 2.8% ARM 79.5% 498M498M 87M87M 19M19M 17.617.6 MM *包括用于32位、64位RISC结构的片上系统 教学硬件平台—ARM UP-NetARM2410-S 教学软件平台-Linux • 近200种操作系统,WinCE、Linux、Vxworks、QNX、 Nucleus、…… • 适于学习的源代码开放的操作系统:Linux、 C/OS • Linux:层次结构且内核完全开放、网络功能强大、 完整开发工具、广泛的硬件支持、遵循通用国际标 准,便于程序的移植 • C/OS:源代码公开、实时内核、易懂、易学、易 用

下载文档,方便阅读与编辑

文档的实际排版效果,会与网站的显示效果略有不同!!

需要 10 金币 [ 分享文档获得金币 ] 0 人已下载

下载文档

相关文档