(电路与系统专业论文)基于internetintranet的嵌入式系统应用研究.pdf_第1页
(电路与系统专业论文)基于internetintranet的嵌入式系统应用研究.pdf_第2页
(电路与系统专业论文)基于internetintranet的嵌入式系统应用研究.pdf_第3页
(电路与系统专业论文)基于internetintranet的嵌入式系统应用研究.pdf_第4页
(电路与系统专业论文)基于internetintranet的嵌入式系统应用研究.pdf_第5页
已阅读5页,还剩51页未读 继续免费阅读

(电路与系统专业论文)基于internetintranet的嵌入式系统应用研究.pdf.pdf 免费下载

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

文档简介

摘要 基于i n t e r n e t i n t r a n e t 的嵌入式系统是融网络通信技术、监测技术和 嵌入式技术为一体,能嵌入和集成在其他对象中,通过i n t e r n e t i n t r a n e t 网络进行远程监测和控制的系统。本文首先对嵌入式i n t e r n e t i n t r a n e t 技术作了系统的介绍,并概括阐述了嵌入式系统在实际生活中的应用以及国 内外最新发展的情况。然后针对大家都很熟悉的t c p i p 协议进行了简单的 描叙,在此基础上,分析了嵌入式t c p i p 协议与操作系统t c p i p 的不同之 处,指出了嵌入式t c p i p 的基本设计原则,并探讨了嵌入式t c p i p 协议栈 的通信协议层次模型、总体结构体系、各个协议工作的主要流程,还列举了 一个实际应用的嵌入式t c p i p 协议的例子进行说明。本文最后以链源钢铁 厂一个实际的监控网络和数据网络一体化的项目要求为例,提出了在该系统 中引入嵌入式网络技术,并由此设计了一种基于i n t e r n e t i n t r a n e t 的嵌入 式的企业监控网络和数据网络的体系结构框架,利用有关的硬件与软件技 术,进行了设计与开发实现,并对基于i n t e r n e t i n t r a n e t 嵌入式监控系统 的三个核心问题:基于嵌入式t c p i p 协议的采集前端设备的系统设计,通 讯模块中多通讯线程的管理与调度以及数据的处理进行了探讨与实现。整个 方案解决了传统系统结构下的许多问题,从而在企业监控环境中,对各种资 源能更实时、准确、可靠地访问及有效地管理,具备了更好的性能。 关键词:嵌入式i n t e r n e t i n t r a n e t 、远程监控、t c p i p 协议、线程调度、 现场级控制 a b s t r a c t c o m b ir l e sw i t ht h ele c h n 0 1 0 9 i e so fn e t w o r kc o m m u n i c a t i o n 、 m o n i t o r i n ga n de m b e d d e dt e c h n o l o g y ,t h ee m b e d d e ds y s t e mb a s e do n i n t e r n e t i n t r a n e tisd e s g n e df o rar e m o t em o n i t o r i n g ,c o n t r o l l i n g s y s t e mb a s e do ni n t e r n e t i n t r a n e tb yw a yo fb e i n ge m b e d d e di n t ot h e o b j e c t t ob em o r t i t o r e d f i r s to f a l l ,w i t ht h ee m b e d d e d i n t e r n e t i n t r a n e t t e c h n o l o g y t h i sp a p e r s u m m a r i z e s p r i m a r y a p p l i c a t i o ni n1if ea n dt h el a t e s td e v e l o p m e n ta tp r e s e n t a n dt h e n t h ew e lk n o w nt c p i pp r o t o c o liss i m p l yp r e s e n t e d t h e p a p e r a n a l y z e st h ed i f f e r e n c e0 fe m b e d d e dt c p i pp r o t o c o la n ds t a n d a r d t c p i pp r o t o c o la n dg i v e st h eb a s i cd e s ig n e dp r i n c i p l e a 1 s oi nt h is p a p e r ,t h ec o m m u n i c a t i o rp r o t o c o lh i e r a r c b y ,g e n e r a la r c h i t e c t u r e a n de a c hp r o t o c o l sm a i np r o c e s s e sa r ed i s c u s s e di ne m b e d d e dt c p i p p r o t o c o l ,a n dt h ep r a c t i c a la p p e d e m b e d d e dt c p i pp r o t o c 0 1i sm a d e o u t a tl a s t ,o nt h eb a s iso f t h ep r a c t i c a le x a m p l eo fl i a n y u a n s c o n t r o ln e t w o r ka n dd a t an e t w o r ki n t e g r a t i o rt e c h n o l o g y ,t h i sp a p e r b r i n g su pan e wm o n i t o r i n ga n dc o n t r o ls y s t e mc o n s t r u c t i o nf r a m et h a t b a s e de m b e d d e dt c p i pp r o t o c 0 1 t a k i n gu s eo ft h et e c h n o l o g yo f e m b e d d e dn e t w o r k a i s oi nt h i sp a p e r ,d e s i g n sa n di m p l e m e n t si tw i t h t h eu s eo f r e l a t e dt e c h n o l o g i e so fh a r d w a r ea n ds o f t w a r e ,a n d d i s c u s s e sa n di m p l e m e n t st h et h r e em a i nq u e s t i o n s :t h ed e s i g no ft h e f r o n te q u i p m e n to fc o l l e c t i n g :t h em a n a g i n ga n ds c h e d u l i n gt e c h n o l o g y o ft h em u l t ic o m m u n i c a ;i o nt h r e a d si nc o m m u n i c a t i n gm o d u l eo f m o n i t o r jn ga n dc o n t r o ls y s t e m :t h ed a t ap r o c e s s i n g b e c a u s eo fi t s a d v a n t a g e ss e v e r a lp r o b l e m so ft h et r a d i t i o n a ls y s t e ma r c h it e c t u r e a r es o l v e d t h i ss c h e m ec a na c c e s sa n dm a n a g er e a lt i m em i s c e l l a n e o u s r e s o u r c e sr e i a b l ya n da c c u r a t e l yi nm or l i t o r i n ge n v i r o n m e n t ,t h e r e b y a c h i e v eab e tt e rp e r f o r m a n c e k e yw o r d :e m b e d d e d s y s t e m 、r e m o t es y s t e m 、t c p i pp r o t o c o l 、 t h r e a d s c h e d u l e 、p 1 a n tf l o o rc o n t r o l i i 引言 嵌入式i n t e r n e t i n t r a n e t 是近几年随着嵌入式系统的广泛应用和计算机网络 技术的发展而发展起来的项新兴概念和技术。单片机或微控制器( m c u ) 被广泛应 用在家庭和工业的各个领域,统称嵌入式系统。嵌入式系统以应用为中心,以计算 机技术为基础,软件硬件可剪裁,赢得了巨大的市场,在应用数量上远远超过了各 种通用计算机。随着i n t e r n e t i n t r a n e t 的发展,各种设备都产生了连接的需要, 从冰箱到电表,似乎所有电器都需要连入互联网。通过为现有嵌入式系统增加英特 网接入能力来扩展其功能,以i n t e r n e t i n t r a n e t 为介质实现信息交换过程,这就 产生了嵌入式i n t e r n e t i n t r a n e t 技术。 实现嵌入式设备i n t e r n e t i n t r a n e t 网络化,需要实现t c p i p 网络协议,但由 于i n t e r n e t i n t r a n e t 上面的各种通信协议对于计算机存储器、运行速度等的要求 比较高,对嵌入式系统产生了很大的挑战。针对嵌入式i n t e r n e t i n t r a n e t 的问题, 国内外很多厂商都进行了开发,推出方案,可分为如下几类: ( 1 ) 通过专用的w e b 服务器实现。首先利用轻网络通讯技术( 如:c a n 、 r s 一2 3 2 、r s 一4 8 5 等) 将m c u 组网构成个子网,再通过专用的w e b 服 务器作为子网设备路由器来转换实现嵌入式系统与外部网的通信。 ( 2 ) 通过专用的嵌入式网关实现。即嵌入式系统使用轻网络通讯技术与专 用嵌入式网关连接,运行t c p i p 协议,并提供t c p i p 到用户的轻型 网络的连接和路由。 ( 3 ) 把标准网络技术( t c p i p ) 一直扩展到嵌入式设备,由嵌入式系统自 身实现w e b 服务器功能,是解决问题的最佳方案。 实现第三类方案时,在嵌入式系统中,由于m c u 运算速度和存储器容量受到限 制,占用大量系统资源的t c p i p 协议的实现较为困难。因此在实现时的设计思想的 不同,又有以下几种类型:对于高档m c u 片上系统,如a r m 7 或5 8 6 e x 等嵌入式系统 中比较高档的m c u ,可运行嵌入式实时操作系统,实现较完整的t c p i p 协议;对于 低档的8 1 6 位的嵌入式系统。考虑到其系统速度和内存的限制,要想一些办法实现 简化,但要保持最基本的东西,即嵌入式设备一定要要加上t c p i p 网络协议。本文 就是针对这类嵌入式i n t e r n e t i n t r a n e t 系统展开讨论的,其结构如下: 第一章主要阐述了嵌入式系统的一些概念,如定义、分类及设计要求等,并介 绍了嵌入式系统在实际生活中一些领域的应用。 1 第二章对大家都很熟悉的t c p i p 协议族中的一些重要的协议进行了介绍。 第三章与第二章介绍的t c p i p 协议族想比较,指出了嵌入式t c p i p 的基本设 计原则,并探讨了嵌入式t c p i p 协议栈的通信办议层次模型、总体结构体系、各个 协议工作的主要流程,并通过实例说明了一个实际的嵌入式t c p i p 协议的应用。 第四章本文的重点,它以链源钢铁厂一个实际开发的企业监控网络为例,提出 了在该系统中引入嵌入式网络技术的设想,并由此设计了一种基于 i n t e r n e t i n t r a n e t 的嵌入式的企业监控网络和数据网络的体系结构框架,利用有 关的硬件与软件技术,进行了设计,并对基于i n t e r n e t i n t r a n e t 嵌入式监控系统 的三个核心问题:基于嵌入式t c p i p 协议的采集前端设备的系统设计,通讯模块中 多通讯线程的管理与调度以及数据的处理进行了探讨与设计。 第五章对全文作总结。 第一章嵌入式系统的概述 1 1 嵌入式系统的概念 1 1 1 嵌入式系统 大多数人所熟悉的桌面计算机,与l 作站和大型机一样,都是通用计算机,被 用来执行各种各样的普通任务,比如玩游戏、字处理、记帐、科学计算阻及诸如此 类的事情。相反,嵌入式系统则是执行单独一项定义明确的任务。 与任何其他的计算机系统一样,嵌入式系统也是硬件和软件的结合。然而,通 用计算机的硬件通常情况下是预先定义好的,包括c p u 、监视器、键盘、鼠标、以 及像c d r o m 这样的存储设备,并且不需定制就能得到。对于嵌入式系统而言,硬件 通常是为了系统的特殊目的而定制的,t 要原因是每个系统的要求差别相当大。因 此,依据所需的数量和功能,确定开发嵌入式系统硬件及满足所需功能的软件以保 证系统得到最优的性价比。 嵌入式系统可以被说成是由处理器、相关应用要求的外围设备和用于特定目的 的软件所组成。 1 1 2 嵌入式系统的分类 目前,嵌入式系统主要有以下两类。:由微控制器( m c t j ) 和单片机构成的简单 嵌入式系统和由嵌入式p c 构成的复杂嵌入式系统。前者适合于控制,它以某一种微 处理器内核为核心,芯片内集成r o m e p r o m 、r a m 、总线、定时计数器、w a t c h d o g 、 i o 、串行口等各种必要功能和外设,系统按应用需要设计,从而减少功耗和成本, 是目前嵌入式工业应用的主流。后者由p c 微型化发展而来,包括单板计算机( s b c ) 、 p c i 0 4 计算机和饼干机,其技术特点是将p c 机的主要硬件( c p u 、r a m 、磁盘、扩展 槽、i o 口、网络等) 集成在一张信用卡大小的主板上,将操作系统和应用软件存 储在f l a s h 芯片中( s y s t e mo nc h i p ) 。 1 1 3 嵌入式系统的要求 尽管嵌入式的类型有所不同,但它们都具有一些共同的要求: 可靠性 嵌入式系统必须在不需要重启和复位的情况下j 下常工作,而这些重启和复位对 很多桌面系统来说是常事,这就要求系统的硬件和软件都非常可靠。例如,如果嵌 入式系统因为硬件错误而停机,系统应该自动复位而不需要人为的干预。 合理的成本 如果一个嵌入式系统被计划用于非常特殊的目的,那么成本不成为问题。但是, 如果嵌入式系统用于大众市场,成本就是考虑的主要问题。 耗电低 很多嵌入式系统是由电池供电,而不是由主电源供电。在这种情况下,耗电量 应该减至最低以避免耗费电池。 有效的利用处理能力 具有不同处理能力的多种处理器可用于嵌入式系统。在选择合适处理器时, 必须考虑处理能力、存储器和成本。 有效利用存储器 大部分嵌入式系统是没有硬盘这类次存储设备的。可用于嵌入式系统的存储器 芯片只有保存程序的r o m 和保存数据的r a m 。依据功能,开发人员可以根据哪种存 储器要求更为重要来决定程序大小和数据大小。 适当的执行时间 在实时嵌入式系统中,某项任务必须在指定时间内完成。因此,分析任务以 满足这种性能约束条件是相当重要的。 1 1 4 嵌入式系统开发中的挑战和问题 在嵌入式系统的开发中,必须应付一些独一无二的问题,而这些问题也带来了 前所未有的挑战“: 协同设计 因为嵌入式系统需要由硬件和软件组成,决定系统的哪些功能用硬件实现而 哪些功能用软件实现是要考虑的主要问题。硬件实现与软件实现相比较而言,其优 点是任务执行得更快,而缺点是芯片的成本高、耗电量大,而且需要占据一定的空 间。软件实现则提供了灵活性一如果算法改变,修改软件是很容易的。在硬件实现 和软件实现之间进行选择的问题称为“协同设计”问题。 嵌入操作系统”1 可以为没有嵌入任何操作系统的系统编写嵌入式软件。可以混合使用汇编语 言和像c 这类高级语言,实现存储管理、输入输出管理和进程管理服务。在操作 系统基础上编写软件也是可以的,但是商用操作系统嵌入系统中,其系统费用是很 昂贵的。 代码优化 通常,桌面应用软件的开发不必过多考虑代码优化,因为处理器功能强大,一 般有足够的存储器可用并且在响应时间上几秒钟的差异不会带来显著的区别。然 而,嵌入式系统中存储器和执行时间是主要的约束条件,优化代码来获得最大的可 扩展性显得至关重要。 测试和调试 在开发阶段不能在目标硬件上测试嵌入式系统的软件,因而调试将会非常困 难。装有开发工具的主机系统用于开发和初步的测试,而最后软件将被转移到目标 硬件上作最终测试。在主机系统上通过实际模仿现场条件来测试和调试软件非常具 有挑战性。 1 2 嵌入式系统的应用 嵌入式系统广泛应用在制造业的控制系统中,比如化工厂、水泥厂、半导体厂、 食品加工厂、导弹研制部门、核能厂等等。在最近几年,随着能够连接网络特别是 i n t e r n e t i n t r a n e t 的设备的出现,嵌入式系统在多个方面的应用不断增长。 按照嵌入式系统的应用领域划分,可分为如下几个方面: 消费类电子产品 控制系统和工业自动化 数据通信 网络信息设备 电信 无线通信 以嵌入式系统在网络信息设备中的运用为例。 能够与网络连接并能够在网络上传输各类信息的设备被称做“网络信息设备”。 通常,网络是运行t c p i p 协议栈的企业内联网或i n t e r n e t i n t r a n e t 。 这种系统有二个方面要求: t c p i p 协议栈应该嵌入到软件中。 w e b 服务器( h t t p 服务器) 应该嵌入到系统中。 图1 1 显示了信息设备在i n t e r n e t i n t r a n e t 环境中如何工作。具有嵌入式w e b 照相机可以直接连接到i n t e r n e t i n t r a n e t 上。这种w e b 照相机可以拥有主页,而 i n t e r n e t i n t r a n e t 上的任何人都可以从传统的桌面浏览器访问该网页。 5 图1 1 网络信息设备 一个具备网络功能并连接到i n t e r n e t i n t r a n e t 的嵌入式系统可以通过定制的 硬件或从其他某些系统获得数据来完成一些测量工作,执行必要的计算并生成所需 的信息。这种信息可以存放到设备的主页上,并且该主页可以从网上任何地方进行 访问。根据该主页的格式,可以通过普通桌面浏览器、具备w a p 功能的电话或具备 j a v a 功能的电话访问它。 1 3 嵌入式系统的硬件体系结构及软件 嵌入式系统是围绕处理器来构造的。c p u ( c e n t r a lp r o c e s s i n gu n i t ,中央处理 单元) 根据从各种外部设备接收到的输入来完成必要的计算工作。除了功能不够强大 之外,嵌入式系统中c p u 的功能与桌面机中c p u 的功能完全相同。处理器只有少量 的内存,如果对于某个应用来说,这些内存不够,就使用外部存储器设备。硬件还 包括所有方便用户进行应用交互的部件,比如显示单元、小键盘等等。图1 2 显示 了嵌入式系统硬件体系结构的各种功能部件。这是一种可同时适用于微控制器和微 处理器的通用体系结构。 困匠 区五匠 医面盈固 墨臣圈 医困困 叵圈固 图1 2 嵌入式系统硬件体系结构的功能部件 1 3 1处理器 用在嵌入式系统中的处理器可以有如下三种类型: 微控制器 微处理器 d s p ( d i g i t a ls i g n a lp r o c e s s o r ,数字信号处理器) 上述每一种处理器都是通过时钟频率( i o o m h z ,2 0 0 m t l z 等) 和数据字长( 8 位、 1 6 位、3 2 位等) 来确定的。时钟频率越高,处理器速度越快。同样,数据字长越长, 精度就越高。字长还表明了处理器对存储器的寻址能力。这种寻址能力是由用于寻 址的位数量来确定的。 微控制器”j 微控制器主要是i n t e l 公司8 0 5 x 系列、m o t o r o l a 公司的6 8 h c x x 系列等等。典 型的微控制器包含在同一个i c 上的c p u 、中断控制器、定时器计数器、存储器( r a m 、 r o m 或者两者同时使用) 和其他外部设备。微控制器通常是控制应用的一种理想解 决方案,因为可以利用它们以及很少的附加电路来构成一个嵌入式系统。8 位微控 制器用于过程控制的应用,比如用在电动玩具和智能卡中。如果对处理能力和存储 器的要求很高,就需要选择1 6 位或3 2 位处理器。 微处理器 a r m ,a t m e l ,i n t e l ,m o t o r o l a ,n a t i o n a ls e m i c o n d u c t o r s 等公司推出了许多 可用的微处理器。要使用这些处理器来开发嵌入式系统,还需要大量的外围电路。 但是,微处理器具有更高的时钟频率和字长,所以它们能够寻址更多的存储器。这 些处理器用于高端应用,比如手持式电脑、i n t e r n e t i n t r a n e t 接入设备等等。 数字信号处理器 d s p 是专门为处理密集的数学算法而设计的微处理器。一个典型的音频处理应 用包括取得模拟形式的语音信号,使用a d c 将它转换为数字格式,然后再对它进行 处理。语音样本必须经过滤波处理,并根据样本值计算出滤波器因子完成频域分析。 所有这些操作都包含了密集的数学计算。为了执行这些操作,d s p 体系结构需要具 备一般处理器所没有的特点: ( 1 ) 够非常快速地计算出总和的m a c ( m u l t i p l y a n d a c c u m u l a t e ,乘法累加) 模块,而通用处理器可能要花费多个周期才能计算出一个乘积。 ( 2 ) 支持通过移位操作完成对位的处理。移位器用于完成这种操作。 ( 3 ) 独立的地址生成单元来产生存储器单元的地址,这样访问存储器变得更 加快速。 ( 4 ) 专门的硬件来实现循环。通过硬件,可以增加循环计数器,将计数值与 最终目标值进行比较,执行循环之后转到循环顶部。 1 3 2 软件 嵌入式系统根据性能需求和成本要求使用不同的处理器。每种处理器都有它自 己的指令集。因此,要为目标处理器编写软件需求了解相应的汇编语言指令。但是, 随着软件开发工具的不断进步,现在也可用高级语言编程。 1 3 2 1 d a v a 编程语言 j a v a 的主要吸引力在于它的平台无关性。实际上,j a v a 编程语言是为了解决 消费类设备开发软件应用程序而开发的,这样可以避免为不同的处理器重新编写软 件。现在j a v a 正广泛用于嵌入式软件的开发。利用j a v a 语言进行嵌入式编程具有 封装、继承等特性,并且还可以通过调用方法而不是调用函数进行消息传递。 然而,j a v a 不提供嵌入式编程中所需的一些底层服务。j a v a 语言有以下一些缺 陷: j a v a 不支持指针。因此,不能直接访问内存位置和设备。 j a v a 不支持i o 端口的访问。 j a v a 不支持与非j a v a 任务共享内存接口。 要想克服上述这些缺陷。可利用以下方法: 基于目标平台,本机代码可以用另一种语言( 例如,c 语言) 编写,然后使 用j n i ( j a v an a t i v ei n t e r f a c e ,j a v a 本机接口) 与j a v a 程序接口。但是,它的缺 点是j n i 方法是不可移植的。另一个问题是在执行本机方法时,无用存储单元收集 功能将关闭。如果有一个硬件设备,可以采用另一种语言( 例如,c 语言) 创建一 个d l l 并在j a v a 程序中使用这个d l l 。然而,采用这种方法就失去了使用j a v a 的 平台无关性的意义。 第二种方法是编写标准的j a v a 库以便将接口抽象到底层硬件。使用这种方 法,可以读写i o 端口、用j a v a 编写中断处理程序、访问存储器设备等等。 1 3 2 2 嵌入式可视化工具 m i c r o s o f t 公司出品的嵌入式可视化工具可用于快速开发嵌入式应用程序,在 开发过程中,可以使用v i s u a lb a s i c 和v i s u a lc + + 开发桌面应用程序的知识。嵌 入式可视化工具为运行在手持式电脑上的w i n d o w sc e 操作系统提供了用以开发应用 r 程序的i d e ( i n t e g r a t e dd e v e l o p m e n te n v i r o n m e n t ,集成开发环境) 由于w i n d o w s c e 是基于w i n 3 2a p i 的集合,所以稍做修改,用v b 或者v c + 十编写的桌面应用程序 就可以移植到w i n d o w sc e 平台上。 1 4 基于in t e r n e t in tr a n e t 的嵌入式系统的现状 基于i n t e r n e t i n t r a n e t 的嵌入式技术”是近几年发展起来的一项新兴概念和 新技术,是指设备通过嵌入式模块而非p c 系统直接接入i n t e r n e t i n t r a n e t ,以 i n t e r n e t i n t r a n e t 为介质实现信息交互的过程,通常又被称为非p c i n t e r n e t i n t r a n e t 接入。国外许多大公司如e m w a r e 、m i c r o c h i p 、s i i 等联合成立 了i n t e r n e t i n t r a n e t 嵌入式联盟,来专门讨论, u g , j 定i n t e r n e t i n t r a n e t 嵌入式 领域的标准并开发相关的技术。随着i n t e r n e t i n t r a n e t 嵌入式产品的开发和应用, 远程监控、数据采集和系统重构等领域将会发生深刻的变革。最典型的例子是对制 造工厂的设备进行监控的系统,该系统通过t c p i p 网络将数据传送到中央管理系 统,中央管理系统可以是运行w e b 浏览器的一台桌面计算机,从而完成整个监控过 程。 也可以从下面四个例子中看到t n t e r n e t i n t r a n e t 嵌入式系统的发展潜力: 一座城市里储水池中水的流动和储备情况可以在某个地方使用通常的w e b 浏览器集中进行监控。每个储水池具有一个嵌入式系统来监控流向和水位。信息通 过t c p i p 网络发送到中央监控点。w e b 服务器需要与每个储水池中的嵌入式系统集 成在一起 安全照相机能够监控许多关键场合的活动,这些场合包括高速公路、核能厂、 机构的安全门等等。这些照相机都是能够从中央位置进行控制并用于监控一些活动 的设备。 重病特别护理病房的诊断装置可以是信息设备,并且能够远程监控它所产生 的病人数据。 天气监控系统可以使用嵌入式服务器,它通过i n t e r n e t i n t r a n e t 实时地将 天气数据自动发送到所有通常地桌面机上。这些i n t e r n e t i n t r a n e t 嵌入式设备都 需要运行t c p i p 协议栈以及一个w e b 服务器。 目前,国外在开发i n t e r n e t i n t r a n e t 嵌入式系统的过程中,已逐渐形成了一 些比较成熟的方案,在此将作一些简单介绍。 o s i c o m 公司研发的n e t + a r m 的系统级芯片( s o c ) 要算是最正统的方案了。它 是使用r i s c 技术的4 0 m i p s 的a r m 7 ( m i e r c o r e ) ,加上以太网( e t h e r n e t ) ;使用 9 i n t e r n e t i n t r a n e t 网的一般通信协议;再包括p s o s r t o s ( 实时操作系统, i n t e r g r a t e d s y s t e m 公司的操作系统) 等组成的s o c 。 p h a r l a p 公司则把能独立的智能部分和网络部分尽可能地移出嵌入式设备,如 有些预定义的数据转移到胖客户机,嵌入式设备通过远程调用那里的d l l 来访问。 t c p i p 协议是i n t e r n e t i n t r a n e t 网上二传输数据所必需的,为此要提供最低要求和 最精简的t c p i p 协议。经过代码的高度优化,将w e b 服务器尽可能地做到最小。 a g r a n a t s y s t e m 公司在嵌入式设备上创建了具有自己特色的e m w e b 服务器。在 h t m l 文本中嵌入c 语言程序;为h t m i 增加了特殊标记,使w e b 页上的动态数据和 系统的软件相接口:再把c 语言库中的t c p i p 协议和其他重要的软件标准( 如h t m l 、 x m l 、r v s a 、t c n 等) 合并到e m w e b 服务器中去。 e m w a r e 公司面对8 1 6 位单片机的现实,另辟蹊径。本端的服务器部分刻意地 简化到仅仅保留h t m l 的标记,其余全部移到客户机一侧;网络协议部分则放弃使用 代码较长的t c p i p 协议而换用十分轻型的刚络协议,从而将设备的e m w a r e 减少到 很小的字节。而且e m w a r e 有两部分:e m t a g 对应于h t m l 标记,e m n e t 对应于网络协 议。轻型的网络协议可以支持在本端构筑小网。如果不与i n t e r n e t i n t r a n e t 网相 联便是独立网;要和i n t e r n e t i n t r a n e t 联结,则须增加网关,实行异种网络协议 的互换。网关可以单独设置,或结合具体条件与胖型客户机相结合。 1 0 2 1 数据链路层 第二章网络通信协议 数据链路层的功能”1 是为网络层提供服务的。其基本服务是将源机器中来自网 络层的数据传输给目的机器的网络层。在源机器上的网络层有一个实体,称为进程, 它把一些比特交给数据链路层,以便传输到目的机器上。数据链路层的工作是把这 些比特传输给目的机器,从而交给那罩的网络层。 2 1 1a r p :地址解析协议 数据链路为了解决把高层地址映射到物理地址的问题,即地址转换问题,采用 了地址解析( a r p 和r a r p ) 就为两种不同的地址形式一3 2 位的i p 地址和数据链层 使用的任何类型的地址一提供映射。 2 1 2 r a r p :反向地址解析协议 网络上的每个系统都具有唯一的硬件地址,它是由网络接口生产厂家配置的。 无盘系统的r a r p 实现过程是从接口卡上读取唯一的硬件地址,然后发送一份r a r p 请求,请求某个主机响应该无盘系统的i p 地址。 2 2网络层 2 2 1lp 协议( 网际协议) r 3 2 比特一 版本i h l服务类型总长 标识dfm f分段偏移 生命期协议头校验和 源地址 目的地址 图2 1i p 数据报格式 1 h l 记录r 头部的长度,d f 代表不要分段,m f 代表还有进一步的分段 一个i p 数据报由一个头部和一个正文部分构成。头部有一个2 0 字节的固定长 度部分和一个可选任意长度部分。头部格式如图2 1 所示。它以大端点机次序传送, 从左到右,版本字段的高位字节先传。在小端点机上,发送和接收都需要转换。 2 2 2i c m p 协议( 互联网控制报文协议) 因特网的操作被路由器严密的监视。当发生以外事故时,这些事件由i c m p 报告, 它也可用来检测因特网。大约定义了1 2 种i c m p 消息类型,= 最重要的i c m p 类穗如图 2 2 所示,每个i c m p 消息类型都被封装于i p 分组中。 消息类型描叙 不可达目的地分组不能提交 超时 生命期字段为0 参数问题 无效的头字段 源端抑制抑制分绢 重定向告诉路由器有关地理路线 回卢请求向一个机器发出请求看是否还活 图2 2 主要的i c m p 消息类型 2 3 传输层 因特网在传输层有两种主要的协议:一种是面向连接的协议,种是无连接的 协议。面向连接的协议是t c p ,无连接的协议是u d p 。 2 3 1t o p 协议( 传输控制协议) 传输控制协议t c p 是专门设计用于在因特网上提供可靠的、端到端的字节流 通信的协议。因特网不同于一个单独的网络,不同的部分可能具有不同的拓扑结构、 带宽、延迟、分组大小以及其他特性。t c p 被设计成能动态满足互联网的要求,并 且能足够健壮的面对各种出错。 2 3 2o o p 协议( 用户数据报协议) u d p 向应用程序提供了一种发送封装的原始i p 数据报的方法,并且发送时无须 建立连接。很多有一个请求和一个响应的客户- - n 务器应用程序采用u d p ,这样可 以避免建立连接和释放连接的麻烦。 u d p 数据段包括一个8 字节的头和数据部分。两个端口( 源端口、目的端口) 的作用与t c p 中的相同,是用来标明源端口和目的端口的两个端点。u d p 长度字段 指明包括8 字节的头及数据段长度。 2 4 应用层 2 4 1 h t t p 协议( 超文本传输协议) t l t t p 是从客户n 务器模型上发展起来的。客户和服务器是一对相互通信的程 序,客户欲与服务器连接,首先要向服务器提出请求,服务器根据请求,完成处理 并给出响应。 归纳起来,h t t p 有如下6 个重要特点”】: 1 ) 采用客户n 务器模型:h t t p 的设计支持客户服务器通信,注重超文本数据 的传输。单个服务器可以为世界范围内众多的客户提供信息服务。 2 ) 简易性:h t t p 协议使得w w w 服务器能够高速地处理大量请求,客户通过发 送请求方式和u r l ( u f i i f o r mr e s o u r c el o o g l ;o r ,统一资源定位符) 等规格化 信息就能指明服务。 3 ) 灵活性与可扩展性:h t t p 允许传送任意类型地数据,在l t t t p 信息包中,通 过内容类型标识可以定义传输的数据类型,不同的数据贴上不同的标签,就 可指明操作方法。 4 ) 无连接性。 5 ) 无状态性。 6 ) 可协商性。 h t t p 的基本工作模式 在网络协议的各个层次中,h t t p 处在应用层,建立在t c p 上面,它面向对象的 特点和丰富的操作功能,适用于分布式系统和多种类型信息处理的要求。由于其无 状态的特点,因此其协议形式简单,易于实现。而且h t t p 还可以作为与其他应用 层次协议联系的中间协议。 h t p p 的基本工作模式十分简明,如图2 3 所示。在一条连接口,客户方向服务 方发送一个请求,服务方接收请求并进行处理,然后返回一个响应。其中连接指的 是运输层虚电路,建立在客户方和服务方之问,用以传递消息;信息在连接上传递 时,采用一定语法格式,称为消息。消息又分为两种:由客户方发送的请求和由服 务方返回的响应:客户方和服务方是一条在特定连接上通信双方的角色,对于个 应用程序而言,它可能与其他多个程序有多条连接。它可能在一条连接上是服务疗, 而在另一条连接上,又扮演客户方的角色。 1r 客户方服务方 j 至接c o n n e c t i o n 响应 r e s p o n s e 图2 3h t t p 工作模式 第三章嵌入式t c p lp 协议栈 3 1 嵌入式t c p i p 协议栈的特点 基于i n t e r n e t i n t r a n e t 的嵌入式系统接入网络从原则e 来讲,只要实现 t c p i p 协议就可以。由于嵌入式设备本身的特点,在生产领域中应用的嵌入式设备 功能比较简单,只需要简化的嵌入式t c p ip 协议栈就可以,并非一定要实现完整 t c p i p 协议栈。这可根据各个系统的特点及功能来进行设计;其次,对于使用的协 议,也要根据具体的应用,作必要的简化。 t c p f l i p 协议分为四层,其协议层次模型如图3 1 所示,分别是应用层、传输层、 网际层和网络界面层。涉及的蕊个关键问题即传送信息的媒质和采用的协议。一般 工厂中最常采用的模式是以太网通信介质和t c p i p 协议。以太网已经在局域网和 i n t e r n e t 上取得成功,协议标准开放,与各种现场总线标准林立的情况相比,有更 好的兼容性;传输速度大幅提高,传输量更大,并由于交换技术的发展消除了以太 网应用于控制领域的障碍,实时性、可靠性已经足够满足应用要求。 osiiso模型tcpip协议 应用层 表示层 应用层 会话层 传输层传输层 网络层l a n 协议层次网络层 逻辑链路控制子层l l g 链路层 介质访问控制子层m a c 物理收发信号子层p l s 网络界 物理层 介质附属单元w a u 面层 图3 1 网络协议层次示意图 以太网遵循i e e e 8 0 2 3 所规定的c d m a c d ( 载波监听多路访问及冲突监测) 协 议,该协议使同一个局域网上多台计算机共享同一物理传输介质成为可能。嵌入式 i n t e r n e t i n t r a n e t 系统要通过以太网接入i n t e r n e t 就必须实现该协议要求,实现 该协议可以采用通用的n i c ( 网络接口控制) 芯片。另外,以太网上的数据的传输 1 5 是采用网络的m a c 地址来进行识别的,这就要求系统有实现i p 地址到m a c 地址的转 换的功能,即a r p ( 地址解析) 协议。a r p 协议可以细分为a r p 请求协议和a r p 响应 协议两种,系统要同其它计算机通信,就必须要实现a r p 响应协议。a r p 请求协议 在本地建立了一一个i p 地址到m a c 地址的映射,保证了对外通信的有的放矢。如果嵌 入式系统的资源( c p u 速度、r a m 存储容量) 有限,可使用以太网广播帧发送数掘分 组,这样就可以不用实现a r p 请求协议,同时也不需维护i p 地址到m a c 地址的映射 对。这种通信方式虽然对网络造成一定的压力,但可以大大节约嵌入式系统的宝贵 资源,用户可根据实际情况考虑使用。 网络层主要负责处理数据包在网络层中的协议封装。在t c p i p 协议族中,网络 层协议包括t p 协议( 网际协议) ,i c m p 协议( i n t e r n e t 互联网控制报文协议) ,以 及i g m p 协议( i n t e r n e t 组管理协议) 等。i p 协议是t c p i p 族的核心协议,它使异 构网络之间的通信成为可能。因此如果嵌入式i n t e r n e t i n t r a n e t 系统需要跨越不 同的网络进行通信就必须要实现i p 协议。i c m p 协议主要用来传递差错报文以及其 他需要注意的信息。通常使用的应用程序p i n g 就是采用i c m p 协议来测试网络的连 通情况的,这种测试对一个网络设备来说是非常重要的。i c m p 中规定了多种协议类 型和代码,如果完全的实现也要耗费不少的系统资源,对于普通的嵌入式 i n t e r n e t i n t r a n e t 的应用而占,在i c m p 协议中能够测试网络的连通情况即町,因 此只需要实现i c m p 中类型号为0 、代码为0 的p i n g 应答即可。另外,i c m p 协议本 身是被设计用来传送i n t e r n e t 上的控制报文的,嵌入式系统作为接入 i n t e r n e t i n t r a n e t 上的一种特殊设备,可以认为是被i n t e r n e t i n t r a n e t 上传输 的控制报文所控制的。基于这种对i c m p 协议的理解方式,可以对i c m p 协议进行扩 展,从而定制出专用的嵌入式远程控制协议。 工厂控制领域传输层采用t c p 协议而不是u d p 协议,是考虑到实时监控系统中, 对可靠性的要求较高。t c p 协议是面向连接的,端对端的可靠通信协议。它主要为 两台主机提供面向连接的、可靠的、无重复的双向数据流传输服务。t c p 协议设计 了严格的3 次建立连接握手过程、4 次关闭连接握手过程以及捎带确认信息并进行 滑动窗口流控的数据传输过程。这些过程的实现对系统资源耗费非常大,为了减少 系统资源的消耗,一般采用简化的t c p 协议。其简化一般遵循以下两个原则:一是 不能改变其面向连接的特性,二是其简化必须能配合其应用层所采用的协议。 应用层协议是t c p i p 协议族最大地一个子集,其中类非常繁多。最常用的有 t e l n e t ( 远程登录协议) ,f t p ( 文件传输协议) ,s m t p ( 简单邮件传送协议) ,s n m p ( 简 单网络管理协议) ,h t t p ( 超文本传输协议) 等。不同嵌入式系统对嵌入式 1 6 i n t e r n e t i n t r a n e t 所采用的应用层协议的要求都不同,例如系统如果要求采用 e - m a i l 来发送自己的信息,那么就需要针对s m t p

温馨提示

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

评论

0/150

提交评论