嵌入式通信系统课件(完整版)_第1页
嵌入式通信系统课件(完整版)_第2页
嵌入式通信系统课件(完整版)_第3页
嵌入式通信系统课件(完整版)_第4页
嵌入式通信系统课件(完整版)_第5页
已阅读5页,还剩469页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第1章 嵌入式通信系统概述目 录 1.1 嵌入式通信系统的定义 1.2 嵌入式通信系统的发展 1.3 嵌入式系统的种类1.4 嵌入式通信系统的特点 1.5 嵌入式通信系统的组成结构1.6 嵌入式通信系统的开发与应用1.1 嵌入式通信系统的定义 3 嵌入式系统为控制、监视或辅助设备、机器或用于工厂运作 的设备。 嵌入式系统是以嵌入式应用为目的的计算机系统,并分为系 统级、板级、片级,系统级包括各类工控器、PC104模块等 板级包括各类带CPU的主板和OEM产品;片级包括各种以单 片机、DSP、微处理器为核心的产品。 嵌入式系统是以应用为中心,以计算机技术为基础,软、硬件 可裁剪,适应应用系统对功

2、能、可靠性、成本、体积和功耗等 严格要求的专用计算机系统。1.2 嵌入式通信系统的发展4从20世纪70年代单片机的出现到今天各式各样的嵌入式微处理器、微控制器的大规模应用,嵌入式系统已经有了近40年的发展历史。嵌入式系统是一种具有特定功能的专用计算机系统。它与通信和网络技术的结合可以极大地增强网络的智能性与灵活性,拓展通信功能,实现各种通信系统之间的互联互通。随着信息技术的不断发展和用户需求的不断增长,嵌入式技术在通信领域中的应用日益广泛,嵌入式通信系统的发展也日益成熟。1.2 嵌入式通信系统的发展 5嵌入式系统的产生和历史起源于微型机时代,近几年网络、通信、多媒体技术的发展为嵌入式系统应用开

3、辟了广阔的天地,使嵌入式系统成为继PC和Internet之后,IT界新的技术热点。20世纪70年代发展起来的微型计算机,由于体积小、功耗低、结构简单、可靠性高、使用方便、性能价格比高等一系列优点,得到了广泛的应用和迅速的普及。1976年,Intel公司推出了MCS-48单片机,开创了将微处理机系统的各种CPU外的资源集成到CPU硅片上的时代。1980年,Intel公司对MCS-48单片机进行了全面完善,推出了8位MCS-51单片机,奠定了嵌入式系统的单片机应用模式。嵌入式系统的全面发展是从20世纪90年代开始的,主要受到了分布式控制、数字化通信、信息家电、网络应用等强烈的应用需求所牵引。6嵌入

4、式通信系统的发展现状从20世纪90年代起,嵌入式技术全面展开,已经成为通信和消费类产品的共同发展方向。在通信领域,数字技术正在全面取代模拟技术。目前一些先进的PDA在显示屏幕上已经实现汉字写入、短消息语音发布,应用范围也将日益广阔。硬件方面,不仅有各大公司的微处理器芯片,还有用于学习和研发的各种配套开发包。目前低层系统和硬件平台经过若干年的研究,已经相对比较成熟,实现各种功能的芯片应有尽有。从软件方面讲,也有相当部分的成熟软件系统。国外商品化的嵌入式实时操作系统,已进入我国市场的有WindRiver、Microsoft、QNX和Nuclear等产品。随着因特网的迅速普及和电信业务的持续增长,通

5、信设备的重要性也不断提升。这些设备用于网络的各个部分,从手持的 PDA、寻呼机,到复杂的中心局交换机。绝大多数的通信设备都有健全的通信软件功能,用于和其它设备及网络管理器等控制实体通信。1.2 嵌入式通信系统的发展 7嵌入式通信系统的发展趋势1.2 嵌入式通信系统的发展 强大的开发工具支持和操作系统支持网络互联成为必然趋势低功耗、低成本要求丰富多样的多媒体人机界面无线网络操作系统初见端倪8按所嵌入的处理器分类1.3 嵌入式通信系统的种类 单个微处理器嵌入式处理器可扩展的系统复杂的嵌入式系统在制造或过程控制中使用的计算机系统按嵌入式系统软件复杂程度分类循环轮询系统前后台系统单处理器多任务系统9按

6、实时性分类1.3 嵌入式通信系统的种类 嵌入式非实时系统嵌入式实时系统一个实时系统(Real-time system,RTS)是指计算的正确性不仅取决于程序的逻辑正确性,也取决于结果产生的时间,如果系统的时间约束条件得不到满足,将会发生系统出错。也就是说,实时系统是对响应时间有严格要求的。根据嵌入式系统是否具有实时性,可将其分为嵌入式实时系统和嵌入式非实时系统。软实时系统硬实时系统10按应用领域分类1.3 嵌入式通信系统的种类 消费电子类嵌入式产品:便携音频视频播放器、数码相机、掌上游戏 机等。智能仪器仪表类嵌入式产品:网络分析仪、数字示波器、热成像仪等通信设备类嵌入式产品:网关(Gatewa

7、y)、关守(Gatekeeper)、计费系统、路由器、VOIP终端等国防武器类嵌入式产品:雷达识别、军用数传电台、电台对抗设备等。医疗仪器类嵌入式产品:X光机、超声诊断仪、计算机断层成像系统、心脏起搏器、监护仪、辅助诊断系统和专家系统等嵌入式系统有着非常广阔的应用前景,按照应用领域分类,嵌入式系统可分为信息家电类、消费电子类、智能仪器仪表类、通信设备类、国防武器类、医疗仪器类、生物电子类、航空电子类等。11嵌入式系统的特点1.4 嵌入式通信系统的特点 专用的计算机系统规模可变、扩展灵活实时性和可靠性操作系统内核比较小具有专门的开发工具和开发环境知识集成系统嵌入式系统是多个学科的交叉融合,它的应

8、用也越来越广泛。嵌入式系统是面向专业领域、工作在特定环境下的应用系统,不同于通用计算机系统的多样性和普遍适应性,嵌入式系统是专用的计算机系统,功能是特定的,它还具有规模可变、扩展灵活、有一定的实时性和可靠性、操作系统内核比较小、具有专门的开发工具和环境等特点。12嵌入式通信系统的技术特点1.4 嵌入式通信系统的特点 实时操作系统控制设备软硬件划分快速路径与慢速路径硬件加速功能平面当今各厂商基本上都采用专用的嵌入式系统开发通信设备。这类专用系统具有以下特征:操作系统具有实时响应能力,计算资源有限,磁盘空间有限或无磁盘,通过终端或以太网口控制,有硬件加速能力。131.5 嵌入式通信系统的组成结构

9、图1-1 嵌入式通信系统的组成结构14 硬件层嵌入式通信系统的硬件层是以嵌入式微处理器为核心的,由嵌入式微处理器、存储器、I/O设备、通信模块以及电源等必要的辅助接口组成。嵌入式系统的硬件层以嵌入式微处理器为核心,在嵌入式微处理器基础上增加电源电路、时钟电路、和存储器电路(RAM和ROM等),这就构成了一个嵌入式核心控制模块,操作系统和应用程序都可以固化在ROM中。嵌入式系统外设是指为了实现系统功能而设计或提供的接口或设备。这些设备通过串行或并行总线与处理器进行数据交换。通常包括:扩展存储器、输入输出端口、人机交互设备、通信总线及接口、数/模转换设备、控制驱动设备等。1.5 嵌入式通信系统的组

10、成结构 15 中间层硬件层与软件层之间为中间层,也称为硬件抽象层或者板级支持包(BoardSupportPackage, BSP),它半系统上层软件与底层硬件分离开来,使系统的底层驱动程序与硬件无关,上层软件开发人员无需关心底层硬件的具体情况,根据BSP层提供的接口即可进行开发。该层一般包含相关底层硬件的初始化、数据的输入/输出操作和硬件设备的配置功能。BSP是介于主板硬件和操作系统中驱动层程序之间的一层,一般认为它属于操作系统一部分,主要是实现对操作系统的支持,为上层的驱动程序提供访问硬件设备寄存器的函数包,使之能够更好的运行于硬件主板。1.5 嵌入式通信系统的组成结构 16 系统软件层系统

11、软件主要包括实时操作系统、文件系统、图形用户接口等部分,主要用于提供标准编程接口,屏蔽底层硬件特性,降低应用程序开发难度,缩短应用程序开发周期。系统软件层由实时多任务操作系统(Real-timeOperationSystem, RTOS)文件系统(File System, FS)、图形用户界面(GraphicUserInterface, GUI)、网络组件组成。RTOS是嵌入式应用软件的基础和开发平台。文件系统是操作系统用于明确存储设备(常见的是磁盘,也有基于NAND Flash的固态硬盘)或分区上的文件的方法和数据结构;即在存储设备上组织文件的方法。图形用户界面是一种人与计算机通信的界面显示

12、格式,允许用户使用鼠标等输入设备操纵屏幕上的图标或菜单选项,以选择命令、调用文件、启动程序或执行其它一些日常任务。1.5 嵌入式通信系统的组成结构 17 应用层嵌入式应用层是由应用软件构成的,主要针对特定应用领域,基于某一固定的硬件平台,用来达到用户预期目标的计算机软件。由于用户任务功能的复杂性和可靠性要求,有些嵌入式应用软件需要特定嵌入式操作系统的支持。嵌入式应用软件和普通应用软件有一定的却别,它不仅要求其准确性、安全性和稳定性等方面能够满足实际应用的需要,而且还要尽可能地进行优化,以减少对系统资源的消耗,降低硬件成本。应用层是基于系统软件开发的应用软件程序组成的,它是整个嵌入式通信系统的核

13、心,用来完成对被控对象的控制功能。目前我国市场上已经出现了各种各样的嵌入式系统应用软件,包括浏览器、Email软件、文字处理软件、通信软件、多媒体软件、个人信息处理软件、智能人机交互软件、各种行业应用软件等。1.5 嵌入式通信系统的组成结构 18嵌入式通信系统开发相关技术1.6 嵌入式通信系统的开发与应用开发过程编译连接定址相对于在Windows环境下的开发应用程序,嵌入式系统开发有着很多的不同。不同的硬件平台和操作系统带来了许多附加的开发复杂性。向嵌入式平台移植软件在PC机上编写软件时,要注意软件的可移植性,选用具有较高移植性的编程语言(如C语言),尽量少调用操作系统函数,注意屏蔽不同硬件平

14、台带来的字节顺序、字节对齐等问题。19嵌入式通信系统的广泛应用1.6 嵌入式通信系统的开发与应用嵌入式移动数据库嵌入式系统在智能家居网络中的应用嵌入式语音芯片基于短距无线通信协议的嵌入式产品嵌入式系统的应用前景从家里的洗衣机、电冰箱,到作为交通工具的自行车、小汽车,到办公室里的远程会议系统等等。可能会同时使用数十片嵌入式无线电芯片,可以实现远程办公、远程遥控,真正实现网络无处不在。小结20本章主要介绍了嵌入式通信系统的基础知识。通过本章的学习,读者可以了解嵌入式系统和嵌入式通信系统的定义、特点、发展现状和发展趋势、不同的分类方式、组成结构及开发相关技术和应用。第2章 嵌入式通信系统的设计与开发

15、目 录 2.1 概述 2.2 系统设计技术2.3 嵌入式通信系统的开发工具2.4 嵌入式通信系统的调试方法2.1 概述 23嵌入式通信系统的开发过程一般为:在通用PC机上的集成开发环境中编程交叉编译和链接通过嵌入式调试系统调试正确将程序下载到目标平台上运行因此,选择合适的开发工具和调试工具,对整个嵌入式系统的开发都非常重要。2.2 系统设计技术 24 嵌入式通信系统的开发过程图2-1 嵌入式系统开发的一般过程嵌入式系统设计过程一般由5个阶段构成:需求分析、体系总体设计、硬件/软件设计、系统集成和系统测试。2.2 系统设计技术 25 需求分析与规格说明需求分析阶段需要确定设计任务和设计目标,并提

16、炼出设计规格说明书,作为正确设计指导和验收的标准。需求可分为功能部分和非功能部分。功能性需求是指系统必须要有哪些功能;非功能性需求则是指其他因素,比如大小、价格、设计时间等。2.2 系统设计技术 26 需求分析与规格说明对一个大型的系统进行需求分析是一件繁琐的工作,可以从先获取相对少量的、简单的信息入手,下图是一个简易需求表,可以利用它来思考系统的基本特性,并且整理成列表。名称目的输入输出功能性能生产成本功耗物理尺寸和重量表2-1 需求表格样本2.2 系统设计技术 27 需求分析与规格说明这些需求的内容是不是有相互冲突的状况,例如模块之间的接口不兼容或是系统操作的不合理状况。综合来说,一个好的

17、需求文件应该具有以下几项特性:2.2 系统设计技术 28 体系结构设计阶段体系结构设计阶段描述系统如何实现所述的功能性和非功能性需求,体系结构描述必须同时满足功能上和非功能上的需求。判断是否符合速度成本方面的限制:(1)必须有某种方式估算框图中的构件,如移动地图系统中的搜索和绘制功能的特性。(2)精确估算源于经验,既有一般的设计经验也有类似系统的特定经验。 软件设计阶段可以直接使用一些标准构件,构件通常包括硬件和软件两部分。嵌入式系统的设计还要求有较高的设计技能,在设计软件时要非常小心地读/写存储器以减小功耗。由于存储器访问是主要的功耗来源,因此存储器事务必须精心安排以避免多次读取同样的数据2

18、.2 系统设计技术 29 系统集成阶段把系统的软件、硬件和执行装置集成在一起,进行调试,发现并改进单元设计过程中的错误。系统集成一般是指硬件与软件的集成,实际上集成的对象应包括:嵌入式操作系统、板级支持包(BSP)、硬件、软件和实时特性。实时特性对嵌入式系统来说是相当重要的,硬件可以像设计所要求的一样操作,软件也可以像编写及调试所要求的一样运行,而产品却可能会由于实时性问题依然无法运行。 系统软件测试阶段软件测试是软件生存期中一个重要阶段,是保证软件质量保证关键步骤。软件测试的目的是为了检验软件系统是否满足需求。软件测试是在软件投入运行前,对软件需求分析、设计规格说明和编码进行最终复审的活动。

19、2.2 系统设计技术 30 系统设计的形式化方法 UML简介统一建模语言(Unified Modeling Language,UML)是面向对象软件的标准化建模语言。(1)UML基本元素: UML最基本的元素是对象和类,对象是类的实例。(2)主要内容: UML从考虑系统的不同角度出发,定义了用例图、类图、对象图、状态图、活动图、序列图、协作图、构件图、部署图等9种图。 UML特点(1)UML统一了各种方法对不同类型的系统、不同开发阶段以及不同内部概念的不同观点,从而有效的消除了各种建模语言之间不必要的差异。(2)UML建模能力比其它面向对象建模方法更强。(3)UML是一种建模语言,而不是一个开

20、发过程。 2.2 系统设计技术 31 系统设计的形式化方法 UML的应用领域UML的目标是以面向对象图的方式来描述任何类型的系统,具有很宽的应用领域。其中最常用的是建立软件系统的模型,但它同样可以用于描述非软件领域的系统,如机械系统、企业机构或业务过程,以及处理复杂数据的信息系统、具有实时要求的工业系统或工业过程等。总之,UML是一个通用的标准建模语言,可以对任何具有静态结构和动态行为的系统进行建模。此外,UML适用于系统开发过程中从需求规格描述到系统完成后测试的不同阶段。2.2 系统设计技术 32 嵌入式通信软件设计 嵌入式通信软件的组成(1)嵌入式通信软件构建类型广义地划分,通信系统有两类

21、软件构件:协议软件(应用软件)和系统软件。协议软件实现协议规范;而系统软件(含基础软件)通常包括一个实时操作系统和管理硬件的基础软件。(2)嵌入式通信软件设计考虑硬件体系结构;RTOS是否选定;需要什么样的性能;需要实现那些协议;实现时要使用哪些全局数据结构和表;需要什么样的缓冲区管理和定时器管理;告警、统计处理机制;系统测试方法。2.2 系统设计技术 33 嵌入式通信软件设计通信软件结构模型图2-2 通信系统软件结构模型2.2 系统设计技术 34 嵌入式通信软件设计通信系统协议软件实现(1)状态机协议是通信系统功能的核心,而协议实现的核心是状态机。(2)协议数据单元处理(3)协议接口协议任务

22、并非孤立存在或执行,需要和系统环境中的其他成分接口和交互包括:PDU预处理给状态机的事件PDU传输实时操作系统存储管理缓冲区管理时间管理事件管理进程间通信驱动程序接口配置与控制2.2 系统设计技术 35 嵌入式通信软件设计通信系统协议软件实现(4)协议软件数据结构表:主要有配置、控制、状态、统计四类。其他数据结构:进程控制块和接口控制块实现:在协议软件中使用的数据结构表、进程控制块、接口控制块,通常使用数组、链表、树结构等方式实现。(5)配置与控制协议的配置与控制是指协议的管理。开启和关断协议开启和关断特定端口的协议特定接口的编址设定最大帧尺寸协议消息超时管理对等实体的超时处理鉴别安全信息流量

23、参数管理封装信息2.2 系统设计技术 36 嵌入式通信软件设计通信系统协议软件实现(6)系统启动对各种表的大小参数进行初始化为动态数据结构和状态表分配内存状态表变量初始化缓冲区和定时器接口初始化从本地源读入配置,并对配置初始化高层和低层接口初始化,包括向高层和/或低层注册需要时创建和启动其它的协议任务在无限循环中等待2.2 系统设计技术 37 嵌入式通信软件设计多板通信软件的设计(1)板件通信协议及实现板间通信协议(ICCP或ICP)解决各主控板之间的通信问题和主控板和硬件插板的通信问题。目前使用的通信方式:TCP、UDP、HDLC等。板间通信协议的实现:对底层通信方式进行封装,提供两个统一的

24、接口,分别对应基本传输服务(A类服务)和带差错控制的服务(B类服务)。(2)多板系统中的故障与容错多板系统和单板系统都会受到硬件故障的影响。但多板系统能够通过切换到另一块板对故障进行处理。这就是多板系统的容错。目前,电信级设备普遍要求具有容错功能。单控制板+多线板结构是通信应用中经常使用的多板系统实现。2.2 系统设计技术 38 嵌入式通信软件设计通信系统管理软件SNMP管理公共管理信息协议(CMIP)公共对象请求代理结构(CORBA)事务语言1(TL1)命令行接口(CLI、MML)2.3 嵌入式通信系统的开发工具39在进行嵌入式系统开发时需要特殊的开发工具,程序员才能调试运行在目录系统中的程

25、序。这些工具最少必须具有以下三种关键能力:(1)可方便地控制目标处理器的运行;(2)可方便地更新目标系统中的程序代码;(3)提供对目标系统无干扰的、实时的运行监控。嵌入式系统的开发工具种类繁多,可以是纯软件的,如指令集模拟器(Instruetion Set Simulator,ISS)、调试器;也可以为软硬件结合的,如集成开发环境与在线仿真器。除了指令集模拟器,嵌入式系统的开发工具由两个部分组成:调试器前段(Debugger Front End,DFE)和目标代理(Target Agent)。目标代理的作用是控制目标机的运行和搜索目标机的运行状态和运行数据。调试器前段通过通信信道与目标代理进行

26、通信,可控制目标代理进而控制目标机。40开发嵌入式通信系统的高级语言开发嵌入式系统使用的高级程序语言与开发通用计算机软件使用的高级程序语言相比,主要在于编译器的不同。嵌入式系统的处理器通常与调试主机(通用计算机)的处理器为非同类处理器,它们的指令系统是不同的,此类编译器成为交叉编译器。选择交叉编译器一般主要考虑以下的因素。2.3 嵌入式通信系统的开发工具41嵌入式操作系统嵌入式操作系统(Embedded Operating System,简称:EOS)是指用于嵌入式系统的操作系统。嵌入式操作系统是一种用途广泛的系统软件,通常包括与硬件相关的底层驱动软件、系统内核、设备驱动接口、通信协议、图形界

27、面、标准化浏览器等。嵌入式操作系统负责嵌入式系统的全部软、硬件资源的分配、任务调度,控制、协调并发活动。它必须体现其所在系统的特征,能够通过装卸某些模块来达到系统所要求的功能。目前在嵌入式领域广泛使用的操作系统有:嵌入式实时操作系统C/OS-II、嵌入式Linux、Windows 、VxWorks等,以及应用在智能手机和平板电脑的Android、iOS等。2.3 嵌入式通信系统的开发工具ADS简介ADS(ARM Developer Suite)是ARM处理器下最主要的开发工具。是ARM公司提供的专门用于ARM相关的应用开发和调试的综合性软件工具。ADS 是全套的实时开发软件工具,包编译器生成的

28、代码密度和执行速度优异。可快速低价地创建ARM 结构应用。42指令集模拟器若代码是使用汇编语言编写的(或者是继承来的汇编语言代码库),可在通用计算机上使用指令集模拟器。指令集模拟器(Instruetion Set Simulator)是用来在一种体系结构的计算机上执行另一种体系结构计算机软件的程序。它用软件模拟目标机指令集体系结构的所有指令执行的功能,从而达到和在目标机上执行同样的功能和结果。2.3 嵌入式通信系统的开发工具43嵌入式调试系统简介调试是嵌入式系统开发过程中必不可少的重要环节,通用计算机应用系统与嵌入式系统的调试环境存在明显差异。通用计算机一般采用桌面操作系统,调试器与被调试的程

29、序常常位于同一台计算机上,操作系统也相同。目前,在嵌入式调试系统中有两种调试方式,即monitor方式和片上调试方式。monitor方式是在目标操作系统与调试器内分别内置专用功能模块,用于相互通信从而实现调试功能。片上调试方式是在CPU内部嵌入额外的硬件控制模块,主机通信端口与目标板调试通信接口通过一块简单的信号转换电路板连接。2.4 嵌入式通信系统的调试方法44基于Angel的调试方法基本原理:位于目标板上的CPU已经固化了一个完整的调试监控程序,这个监控程序可以接受来自调试主机的调试命令,并执行这些命令,如设置断点、单步运行、读写存储器等;同时,这个监控程序也可以把数据传送到调试主机。An

30、gel系统有如下特点:2.4 嵌入式通信系统的调试方法支持调试支持C库半主机支持通信支持任务管理支持异常处理45基于JTAG的调试方法JTAG(Joint Test Action Group;联合测试工作组)是一种国际标准测试协议(IEEE 1149.1兼容),主要用于芯片内部测试。现在多数的高级器件都支持JTAG协议,如DSP、FPGA器件等。标准的JTAG接口是4线:TMS、TCK、TDI、TDO,分别为模式选择、时钟、数据输入和数据输出线。在ARM开发调试时,首先要通过一定的方式使目标系统进入调试状态,然后在调试状态下完成各种调试功能。例如查看处理器状态、查看和修改存储内容等。ARM7T

31、DMI可以通过三种格式进入调试状态:(1)通过设置程序断点(breakpoint) ;(2)通过设置数据断点(watchpoint);(3)相应的外部请求进入调试状态;2.4 嵌入式通信系统的调试方法小结46本章主要介绍了嵌入式通信系统的设计与开发技术。通过对本章的学习,希望读者可以掌握一定的系统设计方面的技术,对嵌入式通信软件的开发有一定的了解,掌握常用的嵌入式开发工具和嵌入式系统调试方法。第3章 嵌入式通信系统的硬件平台目 录 3.1 概述 3.2 嵌入式通信系统的硬件结构3.3 嵌入式处理器3.4 嵌入式通信系统的通信模块3.5嵌入式通信系统的I/O设备3.1 概述 49嵌入式通信系统的

32、核心部件是各种类型的嵌入式处理器,嵌入式系统硬件平台是随着嵌入式处理器芯片的发展而发展的。嵌入式通信系统的硬件平台以嵌入式处理器为核心,在嵌入式处理器基础上增加电源电路、时钟电路、存储器电路(RAM和ROM等)和通信接口,这就构成了一个嵌入式核心控制模块,操作系统和应用程序都可以固化在ROM中。嵌入式处理器是整个嵌入式通信系统的基础,决定着整个平台的性能。3.2 嵌入式通信系统的硬件结构50图3-1 嵌入式通信系统的硬件结构3.3 嵌入式处理器51嵌入式处理器的分类常用嵌入式处理器可以分为:嵌入式微处理器(MPU)、嵌入式微控制器( MCU) 、嵌入式DSP处理器、嵌入式片上系统、FPGA处理

33、器等几大类,其中更档次的8/16/32/64位微控制器应用最为广泛。微处理器:嵌入式微处理器(Micro Processor Unit,MPU)是由通用计算机中的CPU演变而来的。微控制器:嵌入式微控制器(Microcontroller Unit, MCU)的典型代表是单片机。嵌入式数字信号处理器:是专门用于信号处理方面的处理器,其在系统结构和指令算法方面进行了特殊设计,具有很高的编译效率和指令的执行速度。片上系统:指的是在单个芯片上集成一个完整的系统,对所有或部分必要的电子电路进行包分组的技术。3.3 嵌入式处理器52嵌入式处理器的特点作为嵌入式系统的核心,嵌入式处理器担负着控制、系统工作的

34、重要任务,使宿主设备功能智能化、灵活设计和操作简便。相对通用处理器,嵌入式处理器有5个特点:体积小、集成度高、价格较低可扩展的处理器结构功耗很低对实时多任务有很强的支持能力具有功能很强的存储区保护功能3.3 嵌入式处理器53嵌入式处理器的选择原则嵌入式通信系统通常是为专门执行某项任务而设计开发的,其功能范围比较狭窄。设计师需要进行高度优化,必须为这些设计选择合适的处理器。选择恰当的处理器是个复杂的工作,一般需考虑以下问题:3.3 嵌入式处理器54嵌入式处理器的发展历程嵌入式微处理器诞生于20世纪70年代末,其间经历了SCM、MCU、网络化、软件硬化四大发展阶段。SCMMCU网络化软件硬化单片微

35、型计算机阶段嵌入式微控制器大发展阶段3.4 嵌入式通信系统的存储器55存储器用来存放计算机工作所必须的数据和程序,在嵌入式系统中普遍使用。嵌入式微处理器在运行时,大部分总线周期都是用于对存储器的读/写访问。因此存储器性能的好坏将在很大程度上影响系统的性能。为了追求存储器的高性能,一方面要从存储单元设计、制造上研究改进;另一方面要从存储器系统的结构上探索、优化。本节主要在介绍存储器结构的基础上分析基本存储单元的特性。在嵌入式通信系统中由于其应用特点,采用最多的是半导体存储器,如SDRAM、EEPROM、Flash等。常用的半导体存储器主要包括随机存储器和只读储器两类。本节主要介绍这两类存储器。3

36、.4 嵌入式通信系统的存储器56存储系统的层次结构图3-2 存储器层次结构图3.4 嵌入式通信系统的存储器57随机存储器随机存储器(random access memory,RAM)是与CPU直接交换数据的内部存储器,也叫主存(内存)。它可以随时读写,而且速度很快,通常作为操作系统或其他正在运行中的程序的临时数据存储媒介。在嵌入式系统中主要用于:(1) 存放当前正在执行的程序和数据。(2) 作为I/O数据缓冲存储器。(3) 作为中断服务程序中保护CPU现场信息的堆栈。3.4 嵌入式通信系统的存储器58随机存储器组成:RAM电路由地址译码器、存储矩阵和读写控制电路三部分组成。分类:按照存储单元的

37、工作原理,随机存储器又分为静态随机存储器(Static RAM,SRAM)和动态随机存储器(Dynamic RAM,DRAM)。特点:RAM主要有以下几个特点随机存取易失性对静电敏感访问速度快需要刷新(再生)3.4 嵌入式通信系统的存储器59随机存储器RAM的选择在设计嵌入式系统时,随机存储器的选择一般有两种:SRAM和DRAM。一般按一下原则:如果系统的随机存储器的容量不是很大,则一般采用SRAM;。对速度有较高要求,使用SRAM;对功耗敏感,可使用SRAM;如果已经集成了DRAM控制器,可选择DRAM ;32位嵌入式处理器一般使用DRAM;复杂的嵌入式系统可以采用SRAM和DRAM混合设计

38、的方案, 如关键数据通道上的一小块SRAM 和其他所有地方的大容量DRAM。3.4 嵌入式通信系统的存储器60只读存储器只读存储器(Read-Only Memory,ROM)。ROM所存数据,一般是装入整机前事先写好的,整机工作过程中只能读出,而不像随机存储器那样能快速地、方便地加以改写。ROM中的内容一经写入,在工作过程中就只能读出不能重写,即使掉电,写入的内容也不会丢失。只读存储器种类很多,有掩模ROM、PROM(可编程ROM)、EPROM(光可擦除的可编程ROM)、EEPROM(电可擦除的可编程ROM)、Flash等。可编程可擦除存储器(Erasable Programmable Rea

39、d Only Memory ,EPROM)是一种具有可擦除功能,擦除后即可进行再编程的ROM内存,写入前必须先把里面的内容用紫外线照射它的IC卡上的透明视窗的方式来清除掉。电可擦除的可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)是一种掉电后数据不丢失的存储芯片。快闪存储器(flash EPROM)是电子可擦除可编程只读存储器(electrically erasable programmable read-only memory, EEPROM)的一种形式。3.5 嵌入式通信系统的通信模块61以太网以太网(

40、Ethernet)指的是由Xerox公司创建并由Xerox、Intel和DEC公司联合开发的基带局域网规范,是当今现有局域网采用的最通用的通信协议标准。以太网主要分为 标准以太网、快速以太网、千兆以太网和万兆以太网。以太网的数据传输有以下特点:(1) 所有数据位的传输由低位开始,传输的位流采用曼彻斯特编码。(2) 以太网传输的数据段长度最小为60字节,最大为1514字节。(3) 通常以太网卡可以接收来自三种地址的数据,即广播地址、多播地址(在嵌入式系统中很少使用)和它自己的地址。但有时用于网络分析和监控,网卡也可以设置为接收任何数据包。(4) 任何两个网卡的物理地址都是不一样的。网卡地址由专门

41、结构分配,不同厂家使用不同地址段,同一厂家的任意两个网卡的地址也是唯一的。3.5 嵌入式通信系统的通信模块62以太网嵌入式以太网接口的两种实现方法:这种方法对嵌入式处理器没有特殊要求,只需要把以太网芯片连接到嵌入式处理器的总线上即可。该方法通用性强,不受处理器的限制,但是,处理器和网络数据交换通过外部总线(通常是并行总线)实现,速度慢、可靠性不高并且电路板布线复杂这种方法要求嵌入式处理器有通用的网络接口。通常这种处理器是为面向网络应用而设计的。处理器和网络数据交换通过内部总线实现,因此速度快,实现简单。3.5 嵌入式通信系统的通信模块63以太网嵌入式以太网控制器LAN91C111LAN91C1

42、11芯片是专门用于嵌入式产品的10M/100M第三代快速以太网控制器。该以太网控制器的主要功能如下:自适应地选传输速率, 支持10Mb/s/100Mb/s;充分支持全双工交换式以太网;支持突发数据传输;8k 字节的内部存储器用作接收发送的FIFO缓存;增强式能量管理功能支持总线8位、16位、32位的CPU访问;提前发送和接收。3.5 嵌入式通信系统的通信模块64CAN控制器局域网络(Controller Area Network, CAN)是由以研发和生产汽车电子产品著称的德国BOSCH公司开发的,并最终成为国际标准(ISO 11898),是国际上应用最广泛的现场总线之一。CAN通信协议主要描

43、述设备之间的信息传递方式。CAN技术规范定义了模型的最下面两层:数据链路层和物理层,是设计CAN应用系统的基本依据。基于CAN总线的分布式控制系统在以下方面具有明显的优越性:网络各节点之间的数据通信实时性强开发周期短网络内节点个数在理论上不受限制3.5 嵌入式通信系统的通信模块65LON(LonWorks协议)LON,即LonWorks协议,能够为设计、创建、安装和维护设备网络方面的许多问题提供解决方案。LonWorks网络中设备的通信是采用一种称为LonTalk的网络标准语言实现的。LonTalk协议是为LON总线设计的专用协议,它具有以下特点:发送的报文都是很短的数据(通常几个到几十个字节

44、);通信带宽不高(2Kbps到2Mbps);网络上的节点往往是低成本、低维护的单片机;多节点,多通信介质;可靠性高;实时性高。3.5 嵌入式通信系统的通信模块66LON(LonWorks协议)LonTalk物理层协议适应不同的通信介质,如:双绞线(twisted-pair)、电力线(powerline)、无线电(radio-frequency)、红外线(infrared)、同轴电缆(coaxialcable)、光纤(fiber)甚至是用户自定义的通信介质。支持不同的数据解码和编码,如:通常双绞线使用差分曼彻斯特编码、电力线使用扩频、无线通信使用移频键控)(FSK)。3.5 嵌入式通信系统的通信

45、模块67无线通信ZigBee :ZigBee是基于IEEE802.15.4标准的低功耗局域网协议。RFID:射频识别,RFID(Radio Frequency Identification)技术,又称无线射频识别,是一种通信技术,可通过无线电讯号识别特定目标并读写相关数据,而无需识别系统与特定目标之间建立机械或光学接触。蓝牙( Bluetooth ):是一种无线技术标准,可实现固定设备、移动设备和楼宇个人域网之间的短距离数据交换(使用2.42.485GHz的ISM波段的UHF无线电波)。IrDA:红外数据组织(Infrared Data Association)的简称。IrDA已经制订出物理介

46、质和协议层规格,以及2个支持IrDA标准的设备可以相互监测对方并交换数据。3.6 嵌入式通信系统的I/O设备68一个实用的嵌入式通信系统常常配有一定的外部设备,构成一个以嵌入式微处理器为核心的计算机系统。这些外部设备包括输入设备,如键盘、触摸屏等;输出设备,如显示器等;完成数据控制和转换的设备,如定时器、计数器、模/数转换器、数/模转换器等。这些外部设备中,一部分以微控制器的形式集成为片上设备,其他的通常是单独实现。本节主要介绍广泛应用于嵌入式通信系统的I/O设备。3.6 嵌入式通信系统的I/O设备69输入设备键盘:键盘是最常用的人机输入设备。键盘主要由一个开关阵列组成,此外还包括一些逻辑电路

47、来简化它到微处理器的接口。嵌入式系统中所用到的键盘中的按键通常是由机械开关组成的,通过机械开关中的簧片是否接触来断开或者接通电路。当开关打开时,通过处理器I/O接口的一个上拉电阻提供逻辑1;当开关闭合时,处理器I/O接口的输入被拉到逻辑0。触摸屏:触摸屏是覆盖在输出设备上的输入设备,用来记录触摸位置。当前的触摸屏输入技术主要有红外式、电阻式、电容式及表面声波式四种。其中电阻式触摸屏在低成本嵌入式系统中应用较广。电阻式触摸屏用二维电压表来探测位置。3.6 嵌入式通信系统的I/O设备70输出设备LCD(液晶)显示器是嵌入式系统中最主要的输出设备。一般情况下,显示器可以直接驱动,也可以通过帧缓冲区驱

48、动。显示元素较少的显示器直接由逻辑电路驱动,而显示元素较多的显示器用RAM帧缓冲区驱动。直接驱动:多个数字阵列是直接驱动显示的简单例子。单数字显示器通常有七段,每段可以是发光二极管,也可以是液晶显示器。帧缓冲区:帧缓冲区是一个连到系统总线上的随机存取存储区。微处理器可以以任意所需次序将值写入帧缓冲区。液晶控制板:大平面显示器通常由LCD构成。其中每个像素都由一个液晶体构成。LCD显示器到系统的接口独具特点,这主要因为LCD像素阵列能够被随机访问。早期的液晶显示控制板被称为被动矩阵,它依靠一个二维的电线网络来编址像素。现代液晶显示控制板显示器使用一种主动矩阵系统,它给每个像素配置转发器,以此来控

49、制、访问LCD显示器。主动矩阵显示器提供了更高的对比度和显示质量。小结71本章在简要介绍嵌入式通信系统的硬件平台的基础上,分析了嵌入式通信系统的核心嵌入式处理器,介绍了它的分类、特点、选择原则以及发展历程。通过引入嵌入式存储器的层次结构,介绍了两类存储器。详细介绍了通信模块的各种通信协议,包括以太网、CAN、LON以及各种无线通信协议。最后主要介绍了嵌入式通信系统的各种I/O设备。第4章 嵌入式通信系统的实时操作系统目 录 4.1 概述 4.2 操作系统4.3 嵌入式操作系统4.4 嵌入式实时操作系统4.5 常用嵌入式实时操作系统4.1 概述 74嵌入式通信系统的软件分为:简单系统和复杂系统。

50、使用嵌入式操作系统,可以有效地提高系统的开发效率和可靠性。简单系统 裸机设计 裸机设计的系统简单 软件的代码量比较少 适用于民用产品 可靠性要求一般不高复杂系统 需要使用嵌入式操作 系统 需要扩展程序存储器 系统处理事务比较多, 事务之间关系复杂 程序算法复杂 软件开发难度比较大 .4.1 概述 75嵌入式通信系统一般采用实时操作系统(RTOS)。RTOS是嵌入式应用软件的运行和开发平台,是一段嵌入在目标代码中的软件,用户的其他应用程序都建立在其上。RTOS是可靠性、可信任性很高、一般经过时间考验的实时内核。基于RTOS开发的程序,具有较高的可移植性。本章首先介绍操作系统、嵌入式操作系统的一些

51、知识,然后介绍RTOS的概念和功能,介绍嵌入式RTOS的内核和可剥夺性,最后介绍目前比较广泛使用的嵌入式RTOS。4.2 操作系统 76 操作系统的概念和功能操作系统是计算机用户和计算机硬件的接口,也是计算机硬件与其他软件的接口,是用于管理、控制计算机硬件与软件资源的应用程序。操作系统给开发者和计算机用户都带来了便利。从开发者角度看,它能够在很大程度上隐藏硬件细节,给发开者提供一个抽象、容易使用的开发界面,并且能够继承前人的开发成果,提高开发效率。从用户角度看,它是系统资源的管理者,可以负责对不同程序之间的CPU、内存和其他I/O设备的分配。4.2 操作系统 77 操作系统的概念和功能操作系统

52、一般会提供以下功能:4.2 操作系统 78 进程有的操作系统把进程叫做任务,本章提到的任务和进程是相同的意思。在操作系统中,进程是享用系统资源的对象,是资源分配的基本单位。在国内,一般把进程理解为:“可并发执行且具有独立功能的程序在一个数据集合上的运行过程,它是操作系统进行资源分配和保护的基本单位。”首先强调进程是一个程序运行的动态过程,而且该程序必须具有并发运行的程序结构。其次强调了这个运行过程必须依赖一个数据集合而独立运行,从而形成了系统中的一个单位。它具有动态性、并发性、独立性、异步性和结构性五大特性。4.2 操作系统 79 进程在不同的操作系统中,进程一般至少有三种状态:运行、就绪、阻

53、塞。如图4-1所示。图4-1 进程的基本状态及转换关系三者之间的关系:就绪状态的进程被调度就会运行,系统根据某种规则或者调度策略暂停某个进程的运行,运行的程序就会进入就绪状态。一旦被阻塞进程所等待的事件发生且进程获得了这个消息,进程就进入了就绪状态。进程获得除处理器以外的所有必需的资源处在就绪状态的进程获得了处理器的使用权进程需要等待一个事件而暂停运行4.2 操作系统 80 进程图4-1可以看出,系统总是要从处于就绪状态的进程里选择一个转换为运行状态的。这种选择一个就绪状态并使之运行的工作就叫做进程调度,是操作系统的一项重要任务。进程调度,指在系统中所有的就绪进程里,按照某种策略确定一个合适的

54、进程并让处理器运行它。从使进程获取处理器使用权的方式来看,有两类调度方式:可剥夺方式和不可剥夺方式。可剥夺方式中,高优先级的进程可以终止低优先级的进程;不可剥夺方式中,运行进程除非主动让出处理器,否则其他进程无法获得机会运行。4.2 操作系统 81 进程调度算法有时间片轮转法,优先级调度法,多级反馈队列调度法等。 时间片轮转法要求系统中的每个进程轮流占用处理器运行一个相同的时间片。时间片指操作系统将CPU的时间划分的若干个时间段。八进程的时间片轮转调度示意图如4-2所示:图4-2 具有八个进程的时间片轮转调度示意图4.2 操作系统 82 进程 优先级调度法按进程的优先级来确定待运行进程。系统中

55、的所有进程都各自有一个优先级,这个级别就标志着一个进程在抢占处理器时的权利大小。调度器在调度时,首先选择优先级最大的进程作为待运行进程。 多级反馈队列调度法把系统中的进程分组,不同的组优先级不同,同组的进程优先级相同。每组中只有一个队首进程才能分配CPU的时间片。只有当在高优先级队列中找不到就绪进程时,才到低优先级的就绪进程队列中选取。4.2 操作系统 83 操作系统的分类从操作系统工作的角度,计算机的操作系统分为以下四类。(1) 单用户操作系统:只能面对一个用户。(2) 批处理操作系统:作业处理系统。(3) 分时操作系统(4) 实时操作系统(RTOS) 分时操作系统旨在能让多个计算机用户共享

56、计算机资源、能及时地响应和服务联机用户。软件的执行在时间上要求并不严格,时间上的延迟可能会让用户多等候一段时间,一般不会造成灾难性的后果; 对于RTOS,主要任务是对事件进行实时处理,调度一切可利用的资源完成实时控制进程。软件在事件发生时必须能够在严格的时限内做出响应,即使在尖峰负荷下也是如此。否则会导致系统的失败。4.3 嵌入式操作系统 84 嵌入式操作系统的概念和特点随着技术的发展,嵌入式通信系统的硬件功能越来越强大,嵌入式软件开始使用C、C+等高级语言编写,调试手段也越来越多、越来越成熟。在体系结构上也由最初的单一控制流程,逐渐引入嵌入式操作系统等技术。嵌入式操作系统通常包括与硬件相关的

57、底层驱动软件、系统内核、设备驱动接口、通信协议、标准化浏览器,对整个系统的资源进行管理。它的显著特点包括:(1) 微型化(2) 实时性和高可靠性(3) 可裁剪性(4) 易移植性4.3 嵌入式操作系统 85 嵌入式操作系统的发展嵌入式通信系统的发展经历了4个比较明显的阶段。面向Internet阶段4.3 嵌入式操作系统 86 嵌入式操作系统的构成嵌入式操作系统一般包括:操作系统内核、多进程管理、内存管理。有些嵌入式系统则提供额外的功能,例如文件系统、图形用户接口等。许多嵌入式操作系统更像是一个函数库,它能够与应用程序一块在编译环境下编译成一个单一的映像文件,从而在嵌入式硬件平台上运行。(1) 操

58、作系统内核:一般负责操作系统最底层的一些功能。(2) 多进程管理:多个进程之间通信、同步、切换等问题。(3) 内存管理:内存的划分、分配、释放等操作。(4) 文件系统:主要完成系统中文件的组织、创建、删除、维护等工作。4.4 嵌入式实时操作系统 87 RTOS的概念和功能RTOS(实时操作系统)指具有实时特性、能支持实时控制系统工作的操作系统,它能够将系统中各种设备有机地联系在一起,并控制它们完成既定的进程。实时操作系统一般分为:硬实时操作系统和软实时操作系统。硬实时操作系统是指,在该系统中,如果不能满足所需的时限要求,就会导致系统失效,产生难以弥补的损失。而软实时操作系统,指的是如果该系统不

59、能满足所需的时限要求,将会导致系统的性能降低,但系统仍将继续运作。4.4 嵌入式实时操作系统 88 RTOS的概念和功能对于嵌入式RTOS来说,它必须具备以下特点,提供以下基本功能:应用程序中建立进程、删除进程、挂起进程、恢复进程以及进程的响应、切换和调度等。进程间的交流和合作。进程间同步和通信的机制有:消息、事件信号量。实时操作系统会借用CPU的内存管理单元来完成内存管理。包括定时唤醒、定时事件机制,和定时消息机制。实时操作系统的中断处理程序要更加短小、精悍。4.4 嵌入式实时操作系统 89 RTOS的重要评价指标评价一个RTOS,衡量其优劣,可以从以下几个方面: 进程调度算法 事件发生率单

60、调算法,截止期最早优先算法,最小裕度算法。 上下文切换时间 处理器把控制权从当前运行的进程转交给另外一个就绪进程所需的时间。 时间确定性 系统调用运行的时间应当有一个最大执行时间限度。 最小内存开销 在限的空间内不仅要装载RTOS,还要装载用户程序。 最大中断禁止时间 影响外部中断请求的响应时间。4.5 常用嵌入式实时操作系统 90 嵌入式Linux嵌入式Linux的核心源代码公开、界面友好、质量可靠,为嵌入式实时操作系统带来了新的生机和活力。Linux的主要特征如下: 移植性好 可随意配置 源代码免费 高度模块化 软件的模块化 虚拟内存 Nucleus Plus为实时嵌入式应用而设计的一个抢

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论