




已阅读5页,还剩54页未读, 继续免费阅读
(检测技术与自动化装置专业论文)基于tcpip协议与dsp的网络实时温度检测系统的分析与设计.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 基于t c p i p 协议与d s p 的网络实时 温度检测系统的分析与设计 专业 :检测技术与自动化装置 硕士生 :徐阅华 指导教师:姜孝华副教授 摘要 随着i n t e r n e t 的日益普及与嵌入式设备的广泛应用,它们之间的互联已成为 当今研究的热点,具有着广阔的应用前景和巨大的市场潜力。 通过对目前国内外此方向的一些实现方法的研究,以及对它们各自特点,关 键技术和优缺点的分析。本文提出了一种基于嵌入式t c m p 协议栈的m c u 直 接实现形式,它是用软件方法直接在嵌入式设备上实现t c p ,i p 协议,具有节省 空间,降低成本的优点,更重要的是可以随意配置甚至修改各种协议,且能通过 软件升级方式跟随未来的发展。 本课题设计了以d s p t m s 3 2 0 l f 2 4 0 7 和网络控制器r t l 8 0 1 9 a s 为核心硬件 的嵌入式系统,并结合当今流行的单总线温度传感器d s l 8 8 2 0 的应用,组成一 个基于e t h e m e t 的网络温度实时检测系统。 本文首先介绍了嵌入式t p i p 栈分析了协议栈所采用各层协议的功能及 封装。然后围绕本系统的硬件框图进行解释说明,介绍了各组成部分的功能以及 设计思想。在系统的软件设计方面,本文详细剖析了t c m p 协议栈各层协议的 实现以及网络控制器r t l 8 0 1 9 a s 的数据收发机制,并列出了各主要函数结构以 及程序流程图。 最后,通过对本系统的试验测试,检验了本文提出的方法和思路的可行性。 本系统不局限于温度采集,经一定扩展后可适用于智能网络家电,远程抄表,以 及生产过程远程监控等领域。 关键词:嵌入式系统t c m p 协议r t l 8 0 1 9 a s以太网d s l 8 8 2 0 a b 札r a c t a n a l y s i sa n dd e s i g n o far e a l - t i m en e t w o r k d e t e c t i o ns y s t e mf o rt e m p e r a t u r eb a s e do nd s p t cp :,i pp r o t o c o l m a j o r :d e t e c t i o nt e c h n o l o g ya n da u t o m a t i o nd e v i c e n a m e:x u y u e h u a s u p e r v i s o r :a s s o c i a t ep r o f j i a n gx i a o h u a a b s t r a c t w i 山t h ei n c r e a s i n gp o p u l 撕z a t i o no fi n t e l e ta n dt h ew i d ea p p l i c a t i o no f e m b e d d e de q u i p r n e n t , t h e i rc o m m u n i c a t i o n sh a v e b e e nc o n s i d e r e da s g r e a t a p p i i c a t i o np r o s p e c t a c c o r d i n gt 0s o r n el a t e s tr e s e a r c h e so f 血ei m p i e m e n t a t i o nm e m o d sa r o u n dm e w o r 王d ,t h i sp a p e rs u m m a r i z e st h e i rc h a r a c t e r s ,k e yt e c h n o i o g i e s ,a n dp r o p o s e s a r e l a t i v es i m p l er e a l i z a t i o nb a s e do nm c ua i l de m b e d d e dt c p 仃pp m t o c o is t a c k , w h i c hh a st h ea d v a n t a g e so fs a v i n gr o o ma i l dc o s t ,e s p e c i a l l yo n ec a nc o n f i g u r eo r m o d i f yp r o t o c o l s a sn e e d e da n dk e e pu pw i t hf h t u r ed e v e l o p m e n td e p e n d i n go n s o f t w a r eu p g r a d i n g t h i ss u b j e c ti sd e s 塘n e da st h ee m b e d d e ds y s t e m ,w h i c hi n c l u d e sm ek e y h a r d w a r e ,d s pt m s 3 2 0 l f 2 4 0 7a i l dn e t w o r kc o n t r o l l e rr f l 8 0 1 9 a s ,a i s ot h ep o p u l a r 1 w i r eb u st e m p e r a t u r es e n s o rd s1 8 8 2 0 ,m a k i n gu pan e t w o r kd e t e c t i o ns y s t e mf o r t e m d e r a t u r e b a s e do ne t h e m e t t h i s m e s i si n t m d u c e se m b e d d e dt c p ,i pp r o t o c o ls t a c ka n da n a l y z e si t s i m p l e m e n t a t i o nb yl i s t i n gt h em a i nf u n c t i o n a ls t n l c m r ea n dp r o c e d u r en o wc h a f t so f e v c r ya d o p t e dp r o t o c o l i a y e r t h es y s t e mh a r d w a r ec i r c u “a n dd e s i g nt h e o r ya r ea 工s o g i v e n i nt h ee n d ,t h ee x p e r i m e n tr e s u l tp r o v e st h a tm em e t h o da r i di m p l e m e n t a t i o ni s r e m l b l ea 【i df c a s i b l e t h es y s t e me x p a n d e da l s oc a nb eu s e di n f i e l d so fi n t e i g e n t n e t w o r kh o m ea p p l i a n c e s ,r e m o t er e c o r d i n 吕r e m o t em o n i t o r i n ga n dc o n t r o m n g ,e t c k e yw o r d s : e m b e d d e ds y s t e mt c m pp r o t o c o lr t l 8 0 1 9 a se t h e m e t d s l 8 8 2 0 第1 章绪论 第1 章绪论 1 1 课题提出的背景与意义 近几年来,i n t e r n e t 技术的飞速发展及其广泛的应用,掀起了新的技术浪 潮。今天,i n t e r n e t 给人们学习和生活带来了极大的方便,缩短了人与入之间 的距离它已成为人们日常生活中不可缺少的一部分。人们希望通过网络来实现 方便的,实时的信息交流和对一些设备的智能测控:希望一些很普通的东西在成 本增加很少,操作十分简单,不影响原有功能的基础上实现与i n t e r n e t 的互连。 这些设想在某些领域已经开始变为现实,智能交通、信息家电、家政系统等方面 的应用前景将十分广阔。嵌入式系统的网络互联必将成为今后网络接入和嵌入式 应用领域的一个热点。 1 1 1 嵌入式系统的发展及特点 这里提到的信息家电以及其它许多应用系统大多采用的是单片机、d s p 等微 控制器系统一一通称嵌入式系统。它是以应用为中心,以计算机技术为基础,软 硬件可裁减,适应对功能、可靠性、成本、体积、功耗严格要求的专用计算机系 统。嵌入式系统是将先进的计算机技术、半导体技术、电子技术和各个行业的具 体应用相结合后的产物,这一点就决定了它必然是个技术密集、资金密集、高度 分散、不断创新的知识集成系统。 嵌入式系统是集软件、硬件于一体的高可靠性系统。嵌入式系统麻雀虽小, 五脏俱全,软件除操作系统外,还需有完成嵌入式系统功能的应用软件,硬件除 了c p u 外,还需有外围电路支持,微处理器、微控制器、d s p 已构成嵌入式系统 硬件的基础。 嵌入式系统是资源开销小的高性能价格比系统,嵌入式系统的发展离不开应 用,应用的共同要求是系统资源开销小,由于嵌入式系统技术日益完善,各种高 性能嵌入式应用系统层出不穷,它已是资源开销小的高性能价格比的一类应用系 统。为了满足系统资源开销小、高性能、高可靠性的要求大多使用f l a s hm e m o r y 。 嵌入式系统是功能强大、使用灵活方便的系统嵌入式系统应用的广泛性, 第l 章绪论 要求该系统通常是无键盘、无需编程的应用系统,使用它应如同使用家用电器一 样方便。 如今的嵌入式系统已经广泛渗透到人们的工作、生活当中,从家用电器、移 动电话、信息终端、仪器仪表,到汽车、航空航天、军事装备、制造工业、过程 控常i 等方面,都可以发现它的踪影。 1 1 2 以太网技术的发展趋势 随着现代生产规模的扩大,要求对企业的各种信息( 如生产过程、销售、财 务以及重点设备实时监控信息) 进行及时全面的了解。这就要求把控制网络,信 息网络融为一体,构成一个统一的网络平台。另一方面,希望控制系统采用开放 性、标准化和流行的硬件、操作系统、网络技术,尽可能使用各种计算机技术, 有效地减少对专用产品的依赖,降低运行、维护成本。实现办公自动化与工业自 动化的无缝结合、形成管控一体化的全开放工业控制网络是现代企业提出的要求 【射。 传统的工业控制网络体系已经难以满足日益增长的技术需求。由于多种现场 总线经过多年的纷争,依然没有达成统一的标准,它们采用的通信协议完全不同, 要实现这些总线的兼容和互操作是十分困难的。因此,专用设备的使用,开放程 度的不够给系统的维护、升级、管理带来了很大的不便 3 l 。 因特网的迅猛发展,使人们看到了以太网的巨大潜力,它采用的t c p i p 协 议也成为目前市场应用的主流协议。以太网协议最早由施乐公司创建的,后被开 发成为一个标准,并广泛地应用于各种计算机网络,如办公局域网、工业控制网 络等场合,并且还在不断地发展。基于以太网的新技术和联网设备不断出现,以 太网已经成为事实上最常用的网络标准之一。 据美国权威调查机构a r c 报告【4 1 指出:今后以太网不仅继续垄断商业计算机 网络通信和工业控制系统的上层网络通信市场,也可能领导未来现场总线的发 展,并有可能取代目前各种现场总线成为唯一的工业控制网络标准。因此有理由 相信,在不远的将来,以太网将可以直接应用于工业现场控制,并将在工业现场 控制系统中起着非常重要的作用。 2 第1 章绪论 1 1 3 嵌入式系统的网络化 嵌入式终端应用设备的i n t e m e t 接入技术是目前以p c 为应用中心的网络技 术所未能完全覆盖的,还存在着及其广阔的空间待于发展。传统的i n t e m e t 应用 以p c 为中心,未来的i n t e m e t 应用将转向以嵌入式设备为中心。据网络专家预 测,将来在i n t e m e t 上传输的信息中,将有7 0 的信息来自于小型嵌入式系统 5 l 。 以太网具有以下应用于嵌入式场合的特点: ( 1 ) 实时性得到保证:由c s m c d 通信协议所带来的实时性较差的问题,正 随着百兆、千兆以太网的应用以及以太网交换技术的发展而得到解决。 ( 2 ) 稳定性大大提高:以太网传输介质可以是同轴电缆、双绞线或光纤,尤其 是光纤网络正在得到普及。由于光纤不受噪声干扰,因此稳定性得到很大的提高。 ( 3 ) 通用陛强:以太网是基于t c p i p 协议的,而t c p i p 最初出现时即是为了 实现异种网络互连,目前该协议已成为网络数据传输的事实标准。 以太网技术的成熟使其具备了向工业自动化、测控领域、智能家居等领域的 发展的坚实基础,嵌入式以太网技术应用的技术细节也随着以太网技术的成熟而 得到解决。 嵌入式t c p ,口协议的提出为嵌入式系统实现上网和网络的进一步普及提供 了一个新的思考方向,其应用方案和实现也将为嵌入式系统实现网络化提供很有 价值的参考。 1 2 课题研究现状 从上面的分析看出,嵌入式器件通过i n t e r n e t 及相关技术来管理我们的工 作和家庭环境已成为坚定不移的发展方向。过去提供实时多任务操作系统和专用 网络解决方案的公司,也正迅速在其产品线中增加i n t e r n e t 技术和嵌入式网络 服务器,以便实现更为开放和经济的嵌入式设备网络互连手段。 这一方案的技术难点是:如何利用微控制器本身有限的资源对信息进行加工 与处理,使之成为在i n t e r n e t 上传输的i p 数据包。综合业界各种解决方案,可 以归纳为以下五种【6 l : 第1 章绪论 1 2 1 衬用p c 网关和专用网技术 采用专用网络( 如r s 2 3 2 ,r s 4 8 5 ,c a nb u s 等) 把一小批智能设备连接在一 起,然后再将专用网络连接到一台p c 上。这台p c 起网关的作用,将专用网络上 的信息转换为i p 数据报,发到互联网上实现信息共享。这个方案可以连接多种单 片机,但存在以下缺点:它依赖p c 机作为网关进行协议转换,在多个单片机系 统分散的情况下,专用网络布线极为不便;使用的是专用网络,设备及软件也是 专用的,开放的程度不够,给系统的维护、升级、管理带来了很大的不便。 1 2 2 利用3 2 位m c u 和r t o s ( 实时操作系统) 技术 采用3 2 位高档m c u ,在r t o s 的平台上进行软件开发,在嵌入式系统中实 现t c p i p 协议。许多嵌入式操作系统( 诸如r t o sl i n u x ,w i n d o w sc e ) 本身都 包含了t c p i p 协议栈,它们向应用程序提供了标准s o c k e t 接口。从应用程序员 的角度看,将这些系统接入i n t e r n e t 所需要的工作和普通p c 机并没有什么区别, 绝大部分的工作集中于应用层的实现。但高性能微处理器和嵌入式操作系统一般 只适用于高端应用场合,否则将极大降低系统的性价比。适用的即是最好的,这 是嵌入式系统较之通用计算机系统的一个重要特征。因此,必须考虑不存在操作 系统的环境中,如何实现互联网的接入。 1 2 3 嵌入式t c p i p 硬件固化方式 硬件固化方式是指将t c p i p 协议栈用硬件方法予以实现,嵌入式系统直接 与内部固化t c p i p 协议的硬件芯片连接,由它实现协议的转换,从而使之与互 联网连接。现在市场上,像这种集成了t c p 、u d p 、i p 、i c m p 等协议的芯片有s c e n i x s e i c o n d u c t o r 公司的s x s t a c k ,s e i k o 公司的s 7 6 0 0 a 芯片以及w 3 1 0 0 a 芯片 等7 】嘲。虽然可以省去不少软件方面的工作,但这无疑增加了硬件成本,对一些 功能单一的嵌入式设备,连接一个完整的t c p i p 硬协议栈,是一个极大的浪费, 而且所增加的成本费用是难以接受的。对于大量的低档嵌入式系统,用软件实现 嵌入式t c p i p 协议具有更大的意义。 4 第l 章绪论 1 2 4 基于m c u 和虚拟软件包的方案 第四种方案是美国u b i c o m 公司提出的,它是芯片技术迅速发展和计算机系 统设计水平不断进步、c p u 速度不断提高的结果。其代表性的产品是其公司的 s x i p 2 k 系列8 位超高速单片机。在这种模型里,使用网络处理器i p 2 0 2 2 【9 】为智能 终端互联网接入提供了一个软硬件平台。这是一款基于r i s c 指令集的单片机, 在4 5 m h z 晶振驱动下,利用其内部的锁相环( p l l ) 电路,c p u 工作频率可达到 1 2 0 m h z 。而且大部分指令都是单时钟周期,指令执行速度可达1 2 0 m i p s ,因此,该 单片机能实现虚拟外设功能,即通过软件对口进行灵活的配置,c p u 执行相应 的软件模块就可以驱动普通的i ,o 口来模拟外设的功能。上面模型包含了i p u a r t 、 i pe t h e m e t 、i p s 诅c k 三个软件模块,分别实现通用异步收发器( u a r t ) 、以太网驱 动器外设和t c p i p 网络协议栈功能,从而为协议转换功能提供了重要的技术手 段。 1 2 5 删i t 嵌入式微型i n t e r n e t 互连技术 e m w a r e 公司开发的e m i t 【l0 l 采用桌面计算机或高性能的嵌入式处理器作为 网关,称为e m g a t e w a y 。e m g a t e w a y 通过r s 2 3 2 、r s 4 8 5 、c a n 等轻量级总线与外设 联系起来,每个外设都配有微型网络服务器,只占用系统很小的内存( 1 k 字节) 资源和处理器资源,称为e i f l m i c r o ,监测嵌入式设备中预先定义的各个变量,并 将结果反馈到e m g a t e w a y 中;同时e i i l m i c r o 还可以解释e m g a t e w a y 的命令,修改设 备中的变量或进行某种控制。该方案中复杂的网络协议是在e m g a t e w a y 上实现的, 应用系统m c u 只处理较简单的e m n e t 协议,进行网际连接。 最后两种方案虽然比较全面,在一些领域也得到了应用,但系统过于庞大, 成本过高,实现起来比较复杂,而且公司的系统都是采用专用设备,限制性太大。 1 3 本课题研究的主要内容 本课题所要研究的系统是m c u 的直接实现形式。如图【一l 所示,通过简化标 准的t c p i p 通信协议来实现d s p 与网络的互联。它是用软件方法直接在嵌入式设 备上实现t c p i p 协议,具有节省空间,降低成本的优点,更重要的是可以随意配 第1 章绪论 置甚至修改各种协议,且能通过软件升级方式跟随未来的发展。 t 1 6 3 2 0 l f 2 4 0 7 i 吼 8 0 1 9 | ! i s 图l 一1 本系统实现框图 当今,温度的实时采集己成为工业自动化,智能住宅,科研探索等众多领域 必不可少的一部分。最近,在丁肇中教授主持的太空阿尔法磁谱仪项目中的子课 题微硅条轨迹探测器温度控制系统( a m ss i l i c o nt r a c k e rt h e r m a lc o n t r o l s y s t e m ) 中。就必须通过卫星及时获知所有电子元件、传感器、执行器( 如泵、 阀等) 的温度来保证控制系统的正常工作。 因此,本课题结合当今流行的单总线温度传感器d s l 8 8 2 0 的应用,与以d s p 1 s 3 2 0 l f 2 4 0 7 为核心的嵌入式系统及网络控制器r t l 8 0 1 9 a s ,组成一个基于 e t h e r n e t 的网络温度实时检测系统。该系统为嵌入式设备与网络的互联提出了 一种新方法,经扩展后可以适用于生产过程监控以及智能家电的开发,也可以为 研究网络控制系统的特性和控制算法提供实验平台。 6 第2 章嵌入式t c b 仰协议栈的分析 第2 章嵌入式t c p ip 协议栈的分析 2 1 嵌入式协议栈的概念1 1 1 1 1 1 2 2 1 1t c p i p 协议简述 t c p i p 起源于6 0 年代末美国政府资助的一个分组交换网络研究项目,到9 0 年 代已发展成为计算机之间最常应用的组网形式。t c p i p 是一组不同层次上的多个 协议的组合,通常被认为是一个四层协议系统,每一层分别负责不同的通信功能: 纛体 图2 一lt c p i p 协议族的分层结构 ( 1 ) 链路层,有时也称作数据链路层或网络接口层,通常包括操作系统中的 设备驱动程序和计算机中对应的网络接口卡。它们一起处理与电缆( 或其他任何 传输媒介) 的物理接口细节。 ( 2 ) 网络层,有时也称作互联网层,处理分组在网络中的活动,例如分组的 选路。在t c p i p 协议族中,网络层协议包括i 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 组管理协议) 。 ( 3 ) 运输层主要为两台主机上的应用程序提供端到端的通信。在t c p i p 协议 第2 章嵌入式t c m p 协议栈的分析 族中,有两个互不相同的传输协议:t c p ( 传输控制协议) 和u d p ( 用户数据报 协议) 。t c p 为两台主机提供高可靠性的数据通信。它所做的工作包括把应用程 序交给它的数据分成合适的小块交给下面的网络层,确认接收到的分组,设置发 送最后确认分组的超时时钟等。由于运输层提供了高可靠性的端到端的通信,因 此应用层可以忽略所有这些细节。而另一方面,u d p 则为应用层提供一种非常简 单的服务。它只是把称作数据报的分组从一台主机发送到另一台主机,但并不保 证该数据报能到达另一端。任何必需的可靠性必须由应用层来提供。这两种运输 层协议分别在不同的应用程序中有不同的用途,这一点将在后面看到。 ( 4 ) 应用层负责处理特定的应用程序细节。几乎各种不同的t c p i p 实现都会 提供下面这些通用的应用程序:t e l n e t 远程登录,f t p 文件传输协议,s m t p 简 单邮件传送协议,s p 简单网络管理协议。 2 1 2 嵌入式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 协议进行一定的修改,制定出套适用于嵌入式系统的嵌入式t c p i p 协议是完 全必要且可行的。 嵌入式t c p i p 协议的出发点是采用简化的网络协议:在不影响网络基本功能 的原则上,以满足实用为目的,按照8 位和1 6 位等低端m c u 的性能要求,对完 整的t c p i p 协议进行一定程度的删节,量体裁衣。最终既要满足应用系统对数 据传输和控制等功能的实际需要,又要在对原有系统影响最小的基础上,实现联 网功能。 第2 章嵌入式代p ,i p 协议栈的分析 综合以上考虑,本系统对t c p i p 协议进行了一些必要的精简和优化改进, 提高传统t c p i p 协议的实时性,尽可能地做到代码精简、存储开销小,从而满 足嵌入式应用的要求。在此本人采用的协议如下【1 3 】: 链路层:a r p 协议: 网络层:i p 九c m p 协议; 传输层:u d p 协议。 2 2 地址解析协议一一a r p 2 2 1 协议概述 在某种程度上,互联网表现得像一个虚拟网络只通过分配的i p 地址来发 送和接受分组。但实际上,当一台主机把以太网数据帧发送到位于同一局域网上 的另一台主机时,是根据4 8b i t 的以太网地址来确定目的接口的。设备驱动程序 从不检查i p 数据报中的目的i p 地址。a r p 协议就是为i p 地址到对应的硬件地址之 间提供动态映射。我们之所以用动态这个词是因为这个过程是自动完成的,一般 应用程序用户或系统管理员不必关心。 从功能上讲,a r p 被分成两部分。第一部分是在发送分组时把一个i p 地址映 射到一个物理地址上,第二部分是回答其他机器的请求。 发送分组的地址转化看似比较直接,但实现起来有些复杂。给定一个目的网 点的i p 地址,软件查询本地的舢婶高速缓存是否存有从该i p 地址到物理地址的映 射。若有,则提取该物理地址,把数据放到使用该物理地址的帧中,并把该帧发 送出去;若没有,则协议软件必须广播一个a r p 请求给以太网上的所有主机并等 待目的主机的a r p 回答。 a r p 协议的第二部分是处理来自网络的a r p 分组。当任何a r p 请求分组到达时 都要提取分组中包含的i p 地址物理地址对,检查本地a r p 高速缓存中是否存有相 应的记录,如果存在则覆盖原有记录,然后接受方再处理a r p 分组的其他部分。 接受方要处理两种到达的a r p 分组。如果到达的是一个请求分组,则接受方 要判断自身是否是请求的目标,如果是,就以本机的物理地址形成应答发送回请 求方。如果到达的分组是对本机之前所发送的请求的应答,则根据某一特定规则 9 第2 章嵌入式咖p 协议栈的分析 更新本地a r p 高速缓存。 在每个主机中都有一个a r p 高速缓存,里面存放了最近i n t e r n e t 地址到硬 件地址之间的映射记录。这是a r p 高效运行的关键。 然而针对嵌入式协议来讲,由于嵌入式系统的应用方案为直接和服务器或路 由器相连,而主机和路由器都是相对固定的,其地址也是嵌入式系统所默认的目 的i p 地址。因此嵌入式系统中不需要a r p 高速缓存,在和服务器或路由器第一 次建立通讯连接时,将目的端的i p 地址和以太网地址写死即可。 2 2 2a r p 的分组格式 f 6 以太网首部 646 2 8 字节a 髓请求应答 图2 2a r p 请求和应答分组的格式 以太网报头中的前两个字段是以太网的源地址和目的地址。目的地址为全l 的特殊地址是广播地址。电缆上的所有以太网接口都要接收广播的数据帧。 两个字节长的以太网帧类型表示后面数据的类型。对于a r p 请求或应答来说, 该字段的值为o x 0 8 0 6 。 硬件类型字段表示硬件地址的类型。它的值为l 即表示以太网地址。协议类 型字段表示要映射的协议地址类型。它的值为0 x 0 8 0 0 即表示i p 地址。 接下来的两个l 字节的字段,硬件地址长度和协议地址长度分别指出硬件地 址和协议地址的长度,以字节为单位。对于以太网上i p 地址的a r p 请求或应答来 说,它们的值分别为6 和4 。 操作字段指出四种操作类型,它们是a r p 请求( 值为1 ) 、a r p 应答( 值为2 ) 、 r a r p 请求( 值为3 ) 和r a r p 应答( 值为4 ) 。 1 0 第2 章嵌入式i p ,m 协议栈的分析 2 3 网际协议一一i p 2 3 1i p 协议概述 i p 是1 m p 协议族中最为核心的协议。所有的t c p 、u d p 、i c m p 及i g m p 数 据都以i p 数据报格式传输。 i p 协议的功能。是对要发送的数据进行加i p 报头的处理,再把打好包的i p 数据报发送给姒c 层。通过数据报在一个个i p 协议模块间传送,直到数据报到达 目的模块。同时,i p 层接收由更低层( 链路层例如以太网设备驱动程序) 发来的i p 报,对接收到的数据报进行报头校验和拆报处理,并把数据发送到更高层。 i p 提供最好的传输服务,不能保证i p 数据报能成功地到达目的地。如果发生 某种错误时,i p 有一个简单的错误处理算法:丢弃该数据报,然后发送i c m p 消息 报给信源端。任何要求的可靠性必须由上层来提供( 如t c p ) 。i p 层对每个数据 报的处理是相互独立的。这也说明,i p 数据报可以不按发送顺序接收。如果一信 源向相同的信宿发送两个连续的数据报( 先是a ,然后是b ) ,每个数据报都是独 立地进行路由选择,可能选择不同的路线,因此b 可能在a 到达之前先到达。 2 3 2i p 首部解析 01 51 63 l 4 位4 位首8 位服务类型1 6 位总长度( 字节数) 版本部长度 ( 罾0 s ) 1 6 位标识3 位1 3 位片偏移 标志 8 位生存时间8 位协议1 6 位首部检验和 ( t t l ) 3 2 位源i p 地址 3 2 位目的i p 地址 选项( 如果有) 数据 图2 3i p 数据报的格式 第2 章嵌入式t c 踟p 协议栈的分析 版本:目前i p 也称作i p v 4 ,所以协议版本号为4 i 首部长度:首部占3 2b i t 字的数目,包括任何选项。由于只是4 比特字段, 所以首部最长为6 0 个字节。 服务类型字段:由于只是一般服务,所以全部置o : 总长度:指整个i p 数据报的长度。以字节为单位由于该字段长1 6 比特, 所以i p 数据报最长可达6 5 5 3 5 字节。 标识字段:难一标识主机发送的每一份数据报,通常每发送一份报文它的值 就会加l ; t t l ( t i m e t o l i v e ) 生存时闯字段:设置了数据报可以经过的最多路由器 数。t t l 初始值由源主机设置,一旦经过一个处理它的路由器,它的值就减l 。 当该字段的值为0 时,数据报就被丢弃; 协议字段:用来识别不同的高层协议( t c p 、u d p 、i c m p 、i g m p 等) ,对它们 进行封装和分用。如1 表示i 伽p 协议,2 表示i g m p 协议,6 表示t c p 协议,1 7 表示u d p 协议; 检验和字段:是根据i p 首部计算的检验和码,它不对首部后面的数据进行 计算。 2 。4i n t e r n e t 控制报文协议一一i c m p 2 4 1i c m p 概述 i c m p 经常被认为是i p 层的一个组成部分,它传递差错报文以及其他需要 注意的信息。i c m p 报文通常被i p 层或更高层协议( t c p 或u d p ) 使用。i c m p 报 文还可以对某些网络问题进行诊断,本设计中实现的是i c m p 查询报文,主要是 为p i n g 程序服务的。p i n g 程序通过发送一份i c m p 回显请求报文给主机,并等 待返回i c m p 回显应答来确定另一台主机是否可达。而实际上这两种报文在系统 正常工作时是用不到的。之所以仍然使用这两种报文,主要是为了使系统便于调 试。一般来讲,如果p i n g 不到某台主机,就可以说与这台主机不能进行通讯: 反过来,如果能p i n g 通,而不能t e l n e t 到某台主机。就说明可能是应用层的程 序有问题。 第2 章嵌入式i p ,口协议栈的分析 2 4 2i c m p 封装及报文格式 尽管与i p 协议处于同一层次,但i c m p 报文却是封装在i p 数据包的数据段 部分进行传送的,具体如图所示: 卜一叫嘴报叫 卜一i 瞅文一 1 4 字节2 0 字节8 字节 图2 4i c m p 报文的封装格式 i c m p 回显请求和回显应答报文格式如下: 0781 51 63 1 类型( o 或8 )代码( o )检验和 标识符序列号 选项数据 图2 5i c m p 回显请求和回显应答报文格式 类型字段中对于回显应答为0 ,对于回显请求就为8 ; 在这里代码字段都为o ; 检验和字段覆盖整个i c m p 报文,是必需的; 标识符字段用于发送端应用程序存入一个唯一的数值,以区别于其他进程的 应答; 序列号字段使得客户程序可以在应答和请求之间进行匹配。 1 3 第2 章嵌入式1 p ,【p 协议栈的分析 2 5 用户数据报协议一一u d p 2 5 1 u d p 协议概述 u d p 是个简单的面向数据报的运输层协议。进程的每个输出操作都正好产 生一个u d p 数据报,并组装成一份待发送的i p 数据报。这与面向流字符的协议不 同( 如t c p ) ,应用程序产生的全体数据与真正发送的单个i p 数据报可能没有什 么联系。 u d p 不提供可靠性。它把应用程序传给i p 层的数据发送出去,但是并不保证 它们能到达目的地。在传送过程中若发生问题,u d p 并不具有确认、重传等机制, 而是必须依赖应用层的协议来处理这些问题。 但是正是由于u d p 没有保证可靠性的机制,没有其他的关卡机制,u d p 才得 以实现全速地发送( 即充分发挥物理通信设备的速度) 。如果使用低速的处理器, 因u d p 的开销很小,会导致其传输率比t c p 高出很多。因此,u d p 适合于微处理 器能力有限、实时要求较高且可靠性要求不高的嵌入式应用。 2 5 2u d p 首部解析 o1 51 63 l 1 6 位源端口号1 6 位目的端口号 1 6 位u d p 长度1 6 位u d p 检验和 数据( 如果有) 图2 6u d p 首部格式 u d p 采用1 6 位的端口号来识别应用程序,根据目的端口号来分用来自i p 层 的u d p 数据报。其中源端口字段是可选的,若选用,则字段值应该是回送报文的 目的端口,若不选时其值为零。 u d p 长度字段指的是u d p 首部和u d p 数据的总字节长度。该字段的最小值为8 字节,即首部的长度。 4 第2 章嵌入式t c p n p 协议栈的分析 2 5 3u d p 检验和及伪首部 u d p 校验和覆盖的内容超出了u d p 数据报本身的范围。为了计算校验和,u d p 把伪首部引入到数据报之中,伪首部并不随着u 卿数据报一起传送,也不计算在 数据报长度之内。 使用伪首部的目的是检验u d p 数据报己到达正确的目的地。理解伪首部的关 键在于认识到:正确的目的地包括了正确的主机和主机上的特定端口号。u d p 报 文的首部仅仅指定了协议端口号,因此为了确保报文能够正确到达目的地,发送 u d p 数据报的主机在计算校验和时,把目的主机的i p 地址和其他有关数据也计 算在内。在最终的接收端,u d p 协议软件对校验和进行校验时要用到携带u d p 报 文的i p 报文的首部中的相关信息。 在u d p 校验和的计算过程中用到的伪首部长度为1 2 字节,其结构如图所示: o 1 51 6 3 1 3 2 位源i p 地址 3 2 位目的i p 地址 08 位协议1 6 位u d p 长度 1 6 位源端口号t 6 位目的端口号 1 6 位u d p 长度1 6 位u d p 检验和 数据 i 肼首部 图2 7u d p 检验和计算过程中使用的各个字段 伪首部的源i p 地址字段和目标i p 地址字段记录了发送u d p 报文是所用的源 i p 地址和目的i p 地址:协议字段指明了所使用的协议类型代码( u d p 为1 7 ) ;u d p 长度字段是u d p 数据报的长度( 伪首部的长度不计算在内) 。接收方进行正确性校 验时,必须把这些字段的信息从i p 报文的首部中抽取出来,以伪首部的格式进 行装配,然后再计算校验和。 豁:| 皿伪吲 、lrj 第3 章系统硬件的分析及设计 第3 章系统硬件的分析及设计 3 1 系统的框图 a os a 0 a 4 s a 4 d 0垃s d 0 l f 2 4 0 71 i r t l 8 0 1 9 a s d 7s d 7 v c c x 附t 1t 0 i o p a 7 s t r b| 苫 1 0 r b 璐 r d ) w b w e i o p a 6r s t d r v 图3 1 硬件总体框图 由上图可知,该系统主要由微处理器d s pt m s 3 2 0 l f 2 4 0 7 ,数字温度传感器 d s l 8 b z o 与网络控制器r t l 8 0 1 9 a s 组成。d s p 负责对网络控制器的初始化,数据 的发送和接收,传感器的数据读取;d s l 8 8 2 0 负责温度的采集;r t l 8 0 1 9 a s 负责 数据包和电信号之间的转换,即把数据包转换成物理帧格式在物理信道上传输, 将收到的物理信号还原成数据按指定格式存放在芯片r 栅中以便主机程序取用。 网卡变压器2 0 f 一0 l 与网络控制器配套使用,用于隔离发送和接收的信号。关于 各器件的连接及整个系统框图的形成原理,下面将详细叙述1 6 】【1 7 】。 3 2t m s 3 2 0 l f 2 4 0 7 简介及其外围电路2 2 1 f 2 3 3 2 1 芯片特点 - i m s 3 2 0 l f 2 4 0 7 芯片是美国德州仪器( t e x a si 【l s t m l e n t s ) 公司基于c 2 0 0 0 平台的2 4 x 系列的1 6 位定点d s p 。该系列d s p 体系结构专为实时信号处理而设 1 6 第3 章系统硬件的分析及设计 计,将实时处理能力和控制器外设功能集于一身,为控制系统应用提供了一个理 想的解决方案。有以下一些特点: 采用高性能静态c m o s 技术,供电电压3 3 v ,减小了控制器的功耗; 3 0 m i p s 的执行速度使得指令周期缩短到3 3 n s ,从而提高了控制器的实时控制能 力。 基于t m s 3 2 0 c 2 x xd s p 的c p u 核,保证了t m s 3 2 0 i j 2 4 0 7 代码和t m s 3 2 0 系列d s p 兼容。 片内有高达3 2 k 字的f l a s h 程序存储器,1 5 k 字的数据,程序r a m ,5 4 4 字双口r a m ( d a 】l a m ) 和2 k 字的单口r a m ( s a r a m ) 。 具有两个功能强大的事件管理器模块e 、a ,e v b 。每个模块包括有两个 1 6 位通用定时器,8 个1 6 位脉宽调制( p w m ) 通道。事件管理器模块适用于控 制交流感应电机、无刷直流电机、开关磁阻电机、步进电机、多级电机和逆变器 等。 可扩展共1 9 2 k 字外部存储器空间,其中6 4 k 字程序存储器空间,6 4 k 字数据存储器空间和6 4 k 字i o 寻址空间。 可编程看门狗定时器模块,提高系统的可靠性。 内置1 6 通道输入a d 转换器,最小转换时间为5 0 0 n s ,可选择由两个事 件管理器来触发。 集成了串行通信接口( s c i ) 模块和1 6 位串行外设( s p i ) 接口模块。 高达4 0 个可单独编程或复用的通用输入,输出引脚( g p i o ) 。 5 个外部中断( 两个电机驱动保护中断、复位和两个可屏蔽中断) 。 3 2 2 芯片内存管理 i m s 3 2 0 l f 2 4 0 7 的设计是基于增强的哈佛结构,它通过三组并行总线访问多 个存储空间:程序地址总线( p a b ,p r o g r a ma d d r e s sb u s ) ,数据读地址总线( d 融墟, d a t a - r e a da d d r c s sb u s ) ,数据写地址总线( d w a b ,d a t a 。w r i t ea d d r e s s b u s ) 。在d s p 运算的不同阶段,这三个总线操作不同的内存地址空间。因为这些总线的工作是 相互独立的,所有可以同时访问程序和数据空间。在一个给定的机器周期内, c a l u 可以执行多达3 次的并行存储器操作。 1 7 第3 章系统硬件的分析及设计 t m s 3 2 0 l f 2 4 0 7 包含的片内存储器有:5 4 4 字的双口r a m ( d a r a m ) ,2 k 字的单口r a m ( s a r a m ) 和3 2 k 字的f l a s h 程序存储器。其中d a r a m 分 为2 5 6 字的b o ,b i 和3 2 字的b 2 。当片内r a m 配置控制位( c n f ) 被设置为 0 时,b 0 块被映射到数据存储空间,否则,被映射到程序存储空间;块b 1 和 b 2 分别映射到地址为0 3 0 0 h 0 3 f f l l 和0 0 6 0 h 0 0 7 f h 的数据存储空间。s a r a m 则即可用于程序存储,又可用于数据存储空间,由d o n 位和p o n 位来决定。 3 2 字的f l a s h 主要由m p m i c 位来决定使用权,当m p m c = 0 时,器件设置为 微控制器方式,f l a s h 映射到片内0 0 0 0 h 7 f f r l 地址空间,当m p ,m c = l 时, 则禁用片内f l a s h 空间。 另外,芯片还可扩展6 4 k 字程序存储器空间,6 4 k 字数据存储器空间和6 4 k 字i o 寻址空间。 3 2 3l f 2 4 0 7 部分外围电路框图 1 珊_ i y 7 卜 l f 2 4 0 7
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 新型储能材料生产线项目节能评估报告
- 2025年福建美术学科真题及答案
- 2025年血站采血考试试题及答案
- 灌云县2024-2025学年第一学期四年级数学期末学业评价题库及答案
- 拆除过程中材料搬运与堆放方案
- 离异父母子女抚养费支付及家庭财产分配调整合同
- 离婚房产分割及赡养费支付协议范本
- 沙盘模拟经营试题及答案
- 主题公园舞台租赁与互动体验项目合作协议
- 航空安全员上岗培训及答案
- GB 42590-2023民用无人驾驶航空器系统安全要求
- 《精神科护理学》练习题及答案
- 护士执业注册体检表
- 直升机结构与系统版
- 新生儿疾病诊疗规范诊疗指南诊疗常规2022版
- 外科学 胃十二指肠疾病
- 《智能投顾 大数据智能驱动投顾创新》读书笔记思维导图
- 职工自愿放弃社会保险协议
- 高中英语Unit5Firstaid文章BasicFirstAid人教版必修五
- 2021北京昌平初二(上)期中数学(A)(教师版)
- SH/T 0356-1996燃料油
评论
0/150
提交评论