




已阅读5页,还剩60页未读, 继续免费阅读
(测试计量技术及仪器专业论文)tcpip协议在以太网现场总线及虚拟仪器中的研究与应用.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
中文摘要 学科专业:测试计量技术及仪器 论文题目:t c p i p 协议在以太网现场总线及虚拟仪器中的研究与应用 硕士生:杜欢 导师:古天祥教授 本论文围绕t c p i p 协议展开了两个方面的研究与应用。第一个方面是对 t c p i p 协议进行裁剪和优化,以构成以太网现场总线系统;另外一个方面是采 用l a b v i e w 中的t c p i p 网络功能,编程实现网络化的虚拟数字电压表。 , ( 以太网是最常用的网络,而t c p i p 是最常用的通信协议,将这两种技术应 用于现代化智能测试领域,使测控系统的现场技术与计算机网络的主流技术很 好地融合起来,可极大地促进和加速现场总线的发展,不但可以打破国外厂商 的垄断企图,而且还可共享规模经济的效益,大大降低产品开发和系统组建的 成本,保证我国现场总线技术的可持续发展。因此,开展以太网现场总线技术 的研究,对我国这样的发展中国家而言,有着十分重要的现实意义。) ,、 对以太网现场总线的研究与开发是一个国防预研基金项目,本文主要结合 具体的硬件和软件代码阐述了嵌入式t c p i p 协议的设计思想及实现方法。眩项 研究成果可以广泛应用于现代化智能测控领域。它实现了现场总线的彻底开放 性,达到了提高检测手段、降低成本、提高工作效率等目的。才论文中详细介绍 了硬件系统的构成、功能和以太网接口芯片的驱动方式,着重分析和阐述了嵌 入式t c p i p 协议栈的构成、每个协议的内容、实现这些协议的各个程序模块以 及其中关键的编程细节等,并配有相关的程序流程图加以详细说明。整个课题 的硬件是一块n c e x 单板,上面采用的关键芯片主要包括嵌入式微处理器i n t e l 3 8 6 e x 、以太网接口控制芯片r e a l t e k8 0 1 9 a s 等;软件是由a n s i c 编写,主要 完成了以太网接口控制芯片的驱动和嵌入式t c p i p 协议栈的实现。 、 除上面讲到的内容夕瞄论文还介绍了基于数据采集卡p c i 一1 2 0 0 基本硬件和 图形化编程语言l a b v i e w 设计的一种网络化虚拟数字电压表,它是t c p i p 协 议的具体应用。障中详细阐述了该虚拟数字电压表的设计思路、 点。它的完成使逸程电压测量和网络化虚拟仪器教学成为可能。 方法及功能特 、 x 关键词: 以太网现场总线,v 嵌入式t c p 1 p 协议jn c e x ,客户机服务器模式,虚拟 仪器 a b s t r a c t s u b j e c ts p e c i a l i t y :t e s tm e a s u r e m e n t t e c h n o l o g y & i n s t r u m e n t t h e s i st i t l e :t h er e s e a r c ha n da p p l i c a t i o no ft c p i pp r o t o c o l si nt h ee t h e r n e t f i e l d b u sa n dv i r t u a l1 1 1 s t r u m e n t m a s t e r :d u h n a nt u t o r :p r o f e s s o r t i a n x i a n g g u t h i st a s ki san a t i o n a ld e f e n c ef o u n d a t i o np r o j e c t t h i sp a p e ri l l u s t r a t e st h e t h o u g h tm a dm e t h o d o fe m b e d d e dt c p i pp r o t o c o lw i t hh a r d w a r em a ds o f t w a r e t h e r e s u l tc a nb ew i d e l yu s e di nm o d e r nm e a s u r e m e n t & c o n t r o lf i e l di ti m p r o v et h e m e t h o do f l n e a s m e m e n t ,d e c r e a s et h ec o s t ,i m p r o v et h ew o r ke f f i c i e n c y t h ep a p e r i l l u s t r a t e st h ec o n s t r u c t i o n & f u n c t i o no fh a r d w a r e t h ed r i v i n gm e t h o do fe t h e r n e t i n t e r f a c ec h i p ,a n di t a n a l y z e st h ec o n s t r u c t i o no fe m b e d d e dt c p i pp r o t o c o l ,t h e c o n t e n to fe a c hp r o t o c 0 1 e a c hf u n c t i o nm o d u l ea n dp r o g r a m m i n gd e t a i l sw i t hf l o w c h a r t s t h eh a r d w a r ei sa s i n g l e b o a r dn a m e d n c e x ,i n c l u d i n g e m b e d d e d m i c r o p r o c e s s o ri n t e l3 8 6 e x ,e t h e l - n e t i n t e r f a c e c h i p r e a l t e k 8 0 1 9 a s ,e t c t h e s o f t w a r ei sw r i t t e ni na n s ic ,f i n i s h e st h ef u n c t i o n s i n c l u d i n g t h e d r i v i n g o f e t h e r n e ti n t e r f a c ec h i pa n dt h er e a l i z a t i o no fe m b e d d e dt c p i pp r o t o c o ls t a c k i t s m a i n p e c u l i a r i t y i st oc u to u tt h et c p i p p r o t o c o la c c o r d i n g t o i d i o g r a p h i c r e q u i r e m e n to fm e a s u r i n gt a s k ,a n do n l yt ok e e pt h ec o n t e n to fn e e d e dp r o t o c 0 1 f u r t h e r m o r e ,i to p t i m i z e s t h en e e d e d p r o t o c o l t os a t i s f i e dt h e r e q u i r e m e n t o f e m b e d d e d s y s t e m b e s i d e sa b o v ec o n t e n t ,t h et h e s i si n t r o d u c e sak i n do fn e t w o r kv i r t u a l d i g i t a l v o l t a g em e t e rw h i c hi sb a s e do np c i 一1 2 0 0h a r d w a r ea n dg r a p h i c a lp r o g r a m m i n g l a n g u a g e l a b v i e w t h ep a p e ri l l u s t r a t e s d e t a i l e d l y t h e t h o u g h t ,m e t h o d s a n d f u n c t i o n so ft h i sv i r t u a l d i g i t a lv o l t a g em e t e li t s f i n i s hm a k e sr e m o t e v o l t a g e m e a s u r e m e n ta n d t e a c h i n gt h r o u g h n e t w o r k p o s s i b l e k e yw o r d s : e t h e r n e tf i e l d b u s ,e m b e d d e dt c p i pp r o t o c o l ,n c e x ,c l i e n t s e r v e rm o d e l , v jr u a li n s t r u m e n t 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得的 研究成果。具我所知,除了文中特别加以标注和致谢的地方外,论文中不包含 其他人已经发表或撰写过的研究成果,也不包含为获得电子科技大学或其它教 育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任 何贡献均已在论文中作了明确的说明并表示谢意。 签名:杰主塞k 日期:年月 日 关于论文使用授权的说明 本学位论文作者完全了解电子科技大学有关保留、使用学位论文的规定, 有权保留并向国家有关部门或机构送交论文的复印件和磁盘,允许论文被查阅 和借阅。本人授权电子科技大学可以将学位论文的全部或部分内容编入有关数 据库进行检索,可以采用影印、缩印或扫描等复制手段保存、汇编学位论文。 ( 保密的学位论文在解秘后应遵守此规定) 签名:导师签名:咕天楫 日期:跏参年月子日 电子科技大学硕士论文 第一章引言 网络技术、信息技术的飞速发展,引起了自动化领域的深刻变革,并逐渐 形成了网络化的、全开放、全分布的自动控制系统体系结构。而现场总线正是 这场深刻变革中的重要技术。按照i e c1 1 5 8 标准规定,“现场总线”是指一种 互联现场自动化设备及其控制系统的双向数字通信协议。我们可以将其理解为 一种计算机网络,只不过其上的节点不是一般的计算机,而是智能化仪表。现 场总线的关键是把网络化、信息化的概念彻底引入到控制领域和工厂的控制中, 构建完整的控制网络和信息网络。它和传统的集散控制相比,具有全开放、全 分散、互操作等许多优点。人们认为,现场总线的出现标志着工业测控技术领 域又一个新时代的开始。 现场总线的开发和应用,起源于欧洲,后来发展到北美与南美,到现在为 止,大大小小、形形色色的现场总线约有4 0 多种,如f f 、p r o f i b u s 、l o n w o r k s 、 c a n 等。这些现场总线均有自己专用的协议,要构成一个控制系统必须采用相 应的开发工具、平台、软件包,这往往是一个较昂贵的价钱。而国际上有关现 场总线技术的竞争十分激烈,各大厂商为了自己的利益,都在发展和维护自己 的产品,并积极参与和把持标准的制定工作,期望能主导现场总线技术的发展。 这导致多种现场总线标准长期并存,难以形成统一的标准,更谈不上真正意义 上的开放,从而制约了现场总线技术的长期发展。 国内有着巨大的现场测控设备市场,我国近几年也非常重视现场总线技术 的发展,如果我们总是跟随或受限于某些国外现场总线技术,则很难开发出具 有自己特色的产品,而且产品的发展速度必然落后于国外企业,结果只能是被 国外企业淘汰,或沦为国外企业的技术代理,这对我国民族工业极为不利。而 如果想要自行开发,存在的不利条件是我国综合技术力量薄弱,科研力量规模 小、资金少,无力研制复杂的现场总线专用芯片,在硬件技术上基本上只能采 用已有的产品,因此很难和国外企业进行正面的竞争,只能采取开发具有自己 特色产品的策略。 开放性是现场总线的重要特点之一,它不仅是指技术公开,而且也应具有 应用广泛的特点。以太网是目前世界上应用最为广泛的计算机通信技术,它的 彻底开放性和应用的广泛性是目前任何一种现场总线都不能比拟的。我们直接 采用以太网技术,就可以使我国和国外同步进行研究,增强我国的研究能力和 竞争能力,掌握现场总线领域研究和发展的主动权,这将是我国自动化领域发 展的一次机遇。 电子科技大学硕士论文 另一方面,以i n t e r n e t 为代表的计算机网络的迅速发展及相关技术的日益 完善,突破了传统通信方式的时空限制和地域障碍,使更大范围内的通信变得 十分容易。| n t e m e t 拥有的硬件和软件资源正在越来越多的领域中得到应用,比 如电子商务、网上教学、远程医疗、远程数据采集与控制、高档测量仪器设备 资源的远程实时调用、远程设备故障诊断等等。与此同时,高性能、高可靠性、 低成本的网关、路由器、中继器及网络接口芯片等网络互联设备的不断进步, 又方便了 n t e r n e t 、不同类型测控网络、企业网络间的互联。利用现有 n t e r n e t 资源而无需建立专门的拓扑网络,使组建测控网络、企业内部网络以及它们与 i n t e r n e t 的互联都十分方便,这就为测控网络的普遍建立和广泛应用铺平了道 路。 把t c p i p 协议作为一种嵌入式的应用,嵌入现场智能仪器的r o m 中,使 信号的收、发都以t c p 1 p 方式进行,如此,测控系统在数据采集、信息发布、 系统集成等方面都以企业内部网络为依托,将测控网和企业内部网及i n t e m e t 互联,便于实现测控网和信息网的统一。在这样构成的测控网络中,传统仪器 设备充当着网络中独立节点的角色,信息可跨越网络传输至所及的任何领域, 实时、动态( 包括远程) 的在线测控成为现实。将这样的测量技术与过去的测 控、测试技术相比不难发现,今天,测控能节约大量现场布线、扩大测控系统 所及地域范围。使系统扩充和维护都极大便利的原因,就是因为在这种现代测 量任务的执行和完成过程中,网络发挥了不可替代的关键作用,即网络实实在 在地介入了现代测量与测控的全过程。 内嵌t c p i p 协议的现场智能仪器通过以太网互联构成的以太网现场总线, 对硬件的开发能力要求较低,可以大量采用现有的成熟的硬件产品,而不需要 开发复杂的专用电路,主要工作集中在软件设计和开发上,我们的科研单位和 企业完全有能力承担。同时,由于采用技术成熟、应用广泛的产品,成本相对 低廉,是我国生产企业所能够承担的。 目前,现场总线技术已成为当今世界各国关注的热点课题。世界发达国家 的自动化公司都投入了巨大的人力、财力,全方位地进行技术和应用研究,并 进行了激烈的市场争夺,期待成为现场总线控制领域的领导者。这使现场总线 技术技术出现了复杂的局面,形成了多种现场总线标准。在这场现场总线技术 引起的变革中,我国采取什么样的现场总线技术发展策略是十分重要的。由上 可以看出,开展以太网现场总线技术的研究不但符合国际现场总线技术的发展 趋势,并且有利于我国自主开发具有自己特色的现场总线产品。因此研究以太 网现场总线具有非常重要的现实意义。 电子科技大学硕士论文 2 1 基本概念 第二章以太网现场总线概述 所谓以太网现场总线,就是利用当今世界上最流行的开放式局域网 e t h e r n e t 作为连接工业i o 控制模块的通信网络,作为真正开放式的现场总线系 统。 2 _ 2 采用e t h e r n e t 作为现场总线的原因 2 2 1 远程i o 传统方法 一般来说,远程i o 系统和主计算机的通信是通过r s 2 3 2 或r s 4 2 2 4 8 5 , 以及c a n ,d e v i c en e t ,l o n w o r k s ,p r o f i b u s 等现场总线。这些现场 总线与e t h e r n e t 网相比具有以下优缺点: ( 1 ) r s 一2 3 2 :是最简单最省钱的总线,但缺点是传输距离近,只有5 0 英尺,通信速率低,点对点形式。 ( 2 ) r s 一4 2 2 4 8 5 :使用差分通信,通信距离4 0 0 0 英尺以上。主要缺点是 缺少明确的通信协议标准。要使一个多站系统工作,每个设备必须具有一个独 特的地位,以便把它与线上的所有其它设备区别开来。由于所有通信都是在一 对线上进行,必须有某种方法分辨出数据流的地址信息、数据信息,主计算机 必须协调每个设备的工作状态。 ( 3 ) c a n ,l o n w o r k s ,p r o f i b u s 等:每种类型总线均有自己专用 的协议,要构成个控制系统必须采用相应的开发工具、平台、软件包,这往 往是一个较昂贵的价钱,只有开发商、研究机构才能有这套开发工具,才能构 成系统,而一般用户则无能为力。这就是因为这些总线通信协议不是开放式而 造成的最大局限性。另一方面,上述现场总线的部件要比e t h e r n e t 贵得多。 2 2 2 e t h e r n e t 作为现场总线的优点 应用于测控领域的现场总线的关键特点在于它的数字式互连性、互操作性、 开放性和网络性能。网络性能包括实时性、可靠性等。数字式互连是网络的基 本特征,这是任何网络技术都能够满足的。互操作性可以通过采用共同的协议 和标准实现。而开放性是所有因素中十分重要的一个。开放性不仅是指技术公 开,而且也应具有应用广泛的特点,应用广泛是开放性最重要的衡量指标。从 电子科技大学硕士论文 这个标准来衡量,以太网是高性能现场总线极好的选择,因为e t h e r n e t 是目前 世界上应用最为广泛的计算机通信技术。 如果采用e t h e r n e t 作为高速现场总线,有如下优点: e t h e r n e t 已有几十年的历史,广泛应用于通信网络中,它具有很多特性, 因而很适用于工业网络和远程传感器i o 。 它是一个世界性的开放标准,t c p p 协议实际上已得到普遍的支持。 它是整个w i n d o w s9 8 和n t 操作系统的一部分,几乎可通用于u n i x 环境,而且它是在i n t e r n e t 上使用的协议。采用t c p i p 协议,在互操 作性方面几乎没有什么问题,这是传统各类现场总线所无法比拟的。 通信速率高:具有1 0 m b p s 或更高版本,可为远程i o 系统提供宽带宽。 比1 9 2 k 波特通信速率的r s 4 2 2 4 8 5 网络来说将近高三个数量级。 低成本:网络通信接口板价格十分便宜,只需几十人民币。 丰富的辅助设备:低价的集线器h u b ,桥接器b r i d g e ,路由器r o u t e r , 交换器s w i t c h 等应有尽有。 通信介质多种类:同轴电缆、双绞线、光纤、无线,均十分成熟。 资源共享能力强:利用e t h e r n e t 现场总线,很容易将y o 数据连接到信 息系统中,以实时方式共享公司信息系统上的资源、应用软件和数据 库数据。 e t h e r n e t 是一个同层对同层网络,在网络上任何设备都可以在任何时间 发送或广播数据,只要没有其它设备广播即可,因此,现场发生某一 事件,远程y o 设备可以立即通知系统主机。 e t h e m e t 作为现场总线也有一定的局限性,由于其通信具有随机性质, 发送一个特殊信息包所需的时间量不可能得到保证,这受网上的接点 数和通信量所制约,通信量大将延长发送时间,但是,请注意所说延 长的时间仍为毫秒量级,对工控系统来说几乎不影响实时性。 实际上在国际上也有许多公司采用e t h e m e t 网作为数据采集系统,如 r e a dt i m ei n t e r g r a n t i o n ,b a y t e c h ,f u k e ,m e a s u r e m e n tt e c h n o l o g y 和 i n t e l l i g e n ti n s t r u m e n t a t i o n 等公司都采用此网络。并且已经在多处工业 现场中应用,比如在意大利其应用范围已从流水线监控延伸到了制酒 行业。 最重要的是,采用e t h e r n e t 作为现场总线,可以避免现场总线技术游 电子科技大学硕士论文 离于计算机网络技术的发展主流之外,使现场总线和计算机网络的主 流技术很好地融合起来,形成现场总线技术和一般网络技术互相促进 的局面。这将意味着可以实现自动控制领域的彻底开放,从而打破任 何垄断的企图,并使自动化领域有更多的人和行业参与,使其成为一 个竞争更加激烈的领域,保证自动化技术能够得到更加迅速的发展, 而广大用户将是最大的受益者。 因为以太网和t c p i p 均是一种标准,在很多情况下运用以太网和t c p i p 来搭建网络能够简化结构。比如目前较热的智能小区,因为布线的原因,不能 为每个家庭布很多线,而以太网的8 芯双绞线是一定有的。如果你制造的设备, 比如安全产品、远程抄表产品、家居智能产品能够走以太网的话,可以利用现 成的以太网络。但如果走其它网络,比如r s 4 8 5 、c a n 、l o n w o r k s 等,那 么需要另外布线。不但布线复杂,而且还涉及到消防安全等。从成本看,用以 太网实现联网要比c a n 、l o n w o r k s 等更为便宜。除此以外,将来有电话、 电视、计算机三网合一的趋势,即电话信号、电视信号、联网都在以太网上跑, 所以将来必然是高速的以太网的天下,我们将以太网技术应用到现场总线中, 也顺应了网络技术的发展。 过去,微处理器芯片( 如i n t e l3 8 6 、4 8 6 等) 以及以太网控制芯片等都比 较贵,体积也大,难以应用在现场设备中,因而也就不可能利用e t h e r n e t 作为 现场总线。但是随着集成电路技术的飞速发展,p c 机应用量越来越多,现在微 处理器芯片和以太网控制芯片价格越来越低,性能越来越好,体积越来越小, 采用高档微处理器做i o 控制器的条件已完全具备,从而开辟了用e t h e r n e t 作 现场总线的技术的发展。 2 3 以太网协议 2 3 1 以太网封装格式 以太网组帧的标准有两种,一种是以太网( 狭义以太网) 封装格式,还有 一种是i e e e8 0 2 2 8 0 2 3 ( 广义以太网) 封装格式。 以太网封装格式是指数字设备公司( d i g i t a le q u i p m e n tc o r p ) 、英特尔公司 ( i n t e lc o r p ) 和x e r o x 公司在1 9 8 2 年联合公布的标准。它是当今t c p i p 网络 中最常用的格式。 另一个可选的格式是i e e e ( 电子电气工程师协会) 8 0 2 委员会规定的8 0 2 2 和8 0 2 3 标准。介质访问控制子层( m a c ) 由8 0 2 _ 3 标准来定义,而逻辑链路 电子科技大学硕士论文 控制子层( l l c ) 则由由8 0 2 2 标准来定义。1 e e e8 0 2 2 1 8 0 2 3 定义了一个与以 太网不同的帧格式。 在t c p i p 世界中,以太网的数据报封装是在r f c8 9 4 中定义的,i e e e 8 0 2 网络的数据报封装是在r f c1 0 4 2 中定义的。主机需求r f c 要求每台i n t e r n e t 主机都与一个1 0 m b s 的以太网电缆相连接: ( 1 ) 必须能够发送和接收采用r f c8 9 4 ( 以太网) 封装格式的分组。 ( 2 ) 应该能够接收与r f c8 9 4 混合的r f c1 0 4 2 封装格式的分组。 ( 3 ) 也许能够发送采用r f c1 0 4 2 格式封装的分组。如果主机能同时发 送两种类型的分组数据,那么发送的分组必须是可以设置的,而且 默认条件下必须是r f c8 9 4 分组。 现代的操作系统均能同时支持这两种类型的协议格式,但最常用的封装格 式还是r f c8 9 4 定义的格式。对嵌入式系统来说,由于资源有限,不可能 支持太多的协议格式,因此只需要采取其中的一种就够了。在本课题中,我 们采用的是以太网的封装格式。 i 同步位1 分隔位l 目的地址i 源地址j 类型l数据i 填充位l c r c f l7 字节l1 字节l6 字节i6 字节i2 字节1 不超过1 5 0 0 字节l 可选l4 字节l 图2 - 1 以太网的物理传输帧 目的地址:以太网的地址为4 8 位二进制地址,表明该帧传输给哪个网 卡。如果为f f f f f f f f f f f f ,则是广播地址,广播地址的数据可以被 任何网卡接收到。 源地址:表明该帧的数据是哪个网卡发的,即发送端的网卡地址,同 样是4 8 位。 类型字段:表明该帧的数据是什么类型的数据,协议不同,类型字段 也不同。如:0 8 0 0 h 表示数据为l p 包,0 8 0 6 h 表示数据为a r p 包。 ( 在i e e e8 0 2 封装中,该字段是长度字段。幸运的是,8 0 2 定义的有 效长度值与以太网的有效类型值无- * h 同,据此可以对两种帧格式进 行区分。如果该字段的值小于0 6 0 0 h ,该物理帧是i e e e8 0 2 封装,如 果大于0 6 0 0 h ,则该帧是以太网封装。) 从i n t e m e t 的观点来看,帧类 型字段是最本质的,它意味着以太网的帧是自识别的。当一帧到达一 指定机器时,操作系统根据帧类型决定使用哪个协议软件对它进行处 理。自识别帧的主要优点是它允许在同一物理网络混合使用多个协议 而不相互干扰。 电子科技大学硕士论文 数据段:该段数据不能超过1 5 0 0 字节。因为以太网规定整个传输包的 最大长度不能超过15 1 4 字节( 1 4 字节为目的地址、源地址、类型字段) 。 填充位:由于以太网帧传输的数据包最小不能小于6 0 字节,除去目的 地址,源地址,类型共1 4 字节,还必须传输4 6 字节的数据,当数据 段的数据不足4 6 字节时,后面补0 0 0 0 0 0 ( 当然也可以补其它值) 。 c r c :3 2 位数据校验位。该校验由网卡自动计算,自动生成,自动校 验,自动在数据段后面填入。对于数据的校验算法,我们无需了解。 事实上,同步位、分隔位、填充位和c r c 这几个字段是由网卡自动产生的, 我们不用理它。我们要理的是目的地址、源地址、类型和数据这四个字段的内 容。 2 3 2 以太网硬件地址 以太网定义了一个4 8b i t 寻址方式。每台连到以太网络的计算机分配到一 个唯一的4 8b i t 数字,即它的以太网地址。为分配地址,以太网硬件制造商购 买以太网地址块,在生产以太网接口硬件时按顺序给它们分配。 通常,以太网地址是以机器可读形式固定在主机接口硬件上的。因为以太 网地址属于硬件设备,所以它们有时也叫硬件地址( h a r d w a r ea d d r e s s ) 或物理 地址( p h y s i c a la d d r e s s ) 。以太网地址有以下重要性质:物理地址与以太网接口 硬件相联系;把硬件接口移到新机器上或替换失效的硬件接口将改变机器的物 理地址。 因为一台i n t e r n e t 主机的以太网地址可以改变,所以网络高层软件的设计 要能适应这种变化。 主机接口硬件检测分组并决定把哪些分组发送到主机。请记住,每个接口 收到的是每一个分组的一个拷贝,哪怕是要发送到其它机器的。主机接口把分 组中的目的地址字段作为一个过滤器:接口忽略要转发到其它机器上的分组, 只把地址是本地主机的分组传给主机。编址机制和硬件过滤是必要的,它们可 以避免计算机因到达数据过多而超载。尽管计算机的中央处理器可完成这种检 测,但由主机接口做此事可使所有计算机的处理速度不致因以太网上的通信流 量而降低。 一个4 8b i t 地址不仅仅指定目的计算机地址,它可以是以下三种形式之一: 一个网络接口的物理地址( 单播地址,u n i c a s ta d d r e s s ) 网络广播地址( b r o a d c a s ta d d r e s s ) 电子科技大学硕士论文 组播地址( m u l t i c a s ta d d r e s s ) 按照传统,广播地址( 全1 ) 保留用来指同时发送到所有的站点。组播地 址是一种有限的广播形式,其中网上计算机的某个子集同意收听一给定组播地 址。 主机接口至少应该接受两种地址的数据:它自已的物理地址( 也就是单播 地址) 和广播地址。虽然有的接口可以编程识别组播地址甚至别的物理地址, 但这种情况一般很少使用。在本设计中,只要求能够接收单播地址和广播地址 数据报即可。 以太网的冲突退避算法是由以太网控制芯片自动执行的,在我们的设计中 不用考虑,所以在此就不介绍了。 电子科技大学硕士论文 第三章嵌入式t c p i p 协议 3 1 嵌入式t c p i p 协议的实现与常规实现的不同 数据链路层选择用以太网协议,那么在上层网络协议栈的选择上为什么要 用t c p i p 而不是其它协议栈( 比如i p s p x ) 呢? 这是因为t c p i p 是i n t e r n e t 网络环境中“既成事实”的开放系统平台,要想使一个内部网络或网络设备对 外部世界来讲是可视的,则必须用t c p i p 进行通信。通过t c p i p 能够使内部 网络或网络设备与整个i n t e m e t 联网,在全世界范围内进行通信与信息交流。 一个可互联的设备本质上就比一个不可互联的设备更有价值。假如你在某一区 域安装了很多监控产品,但数据中心却不在该区域,而是设在其它地方,这时 就需要通过t c p i p 协议来传输控制信息、状态信息以及数据信息。另外,在嵌 入式产品中实现t c p i p 协议的好处是可以统一平台,使不同厂家生产的产品兼 容。比如一个大型的智能社区可能由多家设备供应商来进行建设,其中一些厂 商做平台、做软件,另外一些厂商做硬件。如果大家遵守t c p i p 协议,各自的 远程抄表产品、智能防盗产品等才可能兼容,地产开发商才能选择多个供应商, 这样不但有利于竞争,而且也避免了因某个厂家倒闭而造成重大影响。 t c p i p 最先是在u n i x 系统里实现的,后来的l i n u x 、d o s 、w i n d o w s 也实现了t c p i p ,随后t c p i p 协议也被移植到其它嵌入式的处理器上,例如8 位的m c s 5 1 单片机、a v r 单片机,1 6 位的a r m 、c 1 6 6 以及3 2 位的m i p s 、 a r m 等芯片上。t c p 1 p 协议的最底层i p 层,很多定义都是1 6 位或3 2 位的, 例如源i p 地址( 3 2 位) 、目的l p 地址( 3 2 位) 、校验值( 1 6 位) ,特别是校验 值,是以1 6 位为单位进行计算的,这样使得能够处理1 6 位、3 2 位运算的c p u , 比如8 0 2 8 6 、8 0 3 8 6 ,a r m 、m i p s 、d s p ,就有很大的速度上的优势。而8 位机m c s 5 l 处理则会慢很多。 由于智能仪器的资源有限,所以在仪器中嵌入的t c p i p 协议栈和我们平常 用的计算机中的t c p i p 协议栈有很大的不同。嵌入式t c p i p 不追求协议的完 备性,一般以“够用即可”为原则,所以需要根据实际需求来对协议栈进行裁 剪。再加上本设计方案没有采用操作系统,所以不能够直接移植u n i x 上实现 的t c p i p 协议源代码。最早期的l i n u x1 0 版的内核是最小的实现t c p 1 p 的 操作系统,它的程序的大小大概在1 兆字节。而现在的红旗l i n u x 、红帽子 l i n u x ,内核多达几十兆,整个系统要几张光盘来装。而嵌入式系统的程序空 间极为有限,在本设计中可直接寻址的空间仅为1 2 8 k 字节,这跟电脑的存储 电子科技大学硕士论文 空间相比要差几个数量级。除了程序空间小之外,可用的内存r a m 也是非常 小的,本设计中的s r a m 为5 1 2 k ,而电脑的r a m 至少在1 兆以上。 由于嵌入式系统与电脑的差别很大,所以嵌入式t c p i p 与常规t c p i p 的 实现有很大的不同。在电脑里编写t c p i p 程序,你可以不考虑代码大小、代码 速度,但在嵌入式系统上这些都是要考虑的问题。综合来说,嵌入式系统t c p i p 实现与u n i xt c p i p 实现有如下区别: ( 1 ) 操作系统:不论是w i n d o w s 、u n i x 、l i n u x ,它们都有一个多 任务操作系统,这使得代码编写简单化,而在本课题设计的嵌入式 系统上,因为成本的原因,没有采用实时嵌入式操作系统,这使得 代码结构变为无限循环十硬件查询+ 顺序执行的方式。 ( 2 )内存分配:w i n d 0 w s 或u n i x 的内存分配是动态的,根据需要随 时分配、随时撤消。在l i n u x 、u n i x 操作系统中,它们都是m b u f 的存储结构。m b u f 是一个存储链,这个链可以动态地增加和减小。 比如在数据包很少的情况下,u n i x 分配一个2 k 字节的缓冲区可能 就够用了,但如果数据包很多,就有可能要分配6 4 k 甚至更多的缓 冲区,可分配的内存要根据c p u 的可用内存来调整。但是在嵌入 式系统中却不能够这样做。一个最大的以太网数据包有15 0 0 多个字 节,分配一包的缓冲区就要1 5 k 字节,而单板机上只外接了5 1 2 k 字节的s r a m 。而这5 1 2 k 字节的r a m 要被各个协议所用,而不 仅仅是存放收到的数据包。一般的做法是分配一个2 5 6 6 = 1 5 3 6 个 字节的r a m 来存放收到的以太网数据包,收到一包就处理一包。 而u n i x 却可以收很多包才处理。在本嵌入式系统中,存放收到的 以太网数据包的r a m 是固定的,而不是动态分配的。u n i x 中的 m b u f 结构以及所有的内存管理、内存分配机制在本设计中并不适 用,因此相关的代码对本系统也是无用的。 ( 3 ) 协议支持:t c p i p 包含从应用层、传输层、网络层到物理层的一系 列协议,且每层可采用的协议又有好几种。在u n i x 里可支持比较 完整的t c p i p 协议,但在嵌入式系统里却无法做到。这是因为嵌入 式系统应用针对性非常强,只需要实现与需求相关的部分协议,而 不使用的协议则一概不支持。例如文件共享s m b 协议,u n i x 、 w i n d o w s 操作系统都支持,但在嵌入式系统中却没有必要。本课 题的嵌入式系统主要是为了完成远程数据采集和数据传输,而不是 网页浏览、文件传输这些功能,所以只需实现最精简的t c p i p 协议 电子科技大学硕士论文 栈( 包括a r p 、i p 、1 c m p 、u d p 这四个协议) 即可,而更高层的 协议,如h t t p ( h y p e r t e x t t r a n s f e r p r o t o c o l ,超文本传输协议) 、s m t p ( s i m p l e m a i l t r a n s f e r p r o t o c o l ,简单邮件传送协议) 、f t p ( f i l e t r a n s f e r p r o t o c o l ,文件传输协议) 等一般是不需要支持的。嵌入式应用的 t c p i p 协议是针对对某一协议而言,例如a r p 协议,u n i x 系统支 持以太网、令牌环等网络的a r p ,但嵌入式只需支持以太网的a r p 就行了。也就是说,对于莱一协议,也要尽可能地简化。i p 包最大 可以为6 5 k ,可以分段传输,但在嵌入式系统中无法容纳如此大的 数据包,因此一般是不支持分段的。嵌入式系统一般采用发送小数 据包的方式,以避免分段。 3 - 2 嵌入式t c p i p 的几种实现方案 目前实现嵌入式t c p i p 有以下几种方案: 通常是通过选择能够支持t c p i p 的实时操作系统r t o s 。例如,q n x 公司的n e u t r i n or t o s 内,就有各种t c p 1 p 模块,可以提供完整的 t c p i p 协议栈,也可以提供部分嵌入式的协议栈。这样的r t o s 还有 p s o s 、v x w o r k s 、w i n d o w s c e ,它们可以满足多种通信的需求。但缺 点是嵌入式实时操作系统太贵,虽然网上也有免费的,但因为用户太 少,资料不够详尽,学习起来难度较大。而且r t o s 内部实现的t c p i p 协议栈是通用的,针对性不强,难免会有相对于具体应用多余的代码, 不能保证代码的尽量精简。 由于目前t c p i p 已经十分成熟,于是许多厂商将t c p i p 协议栈用硬 件方法予以实现。日本s e i k o 公司以i r e a d y 芯核为基础,开发的$ 7 6 0 0 芯片即是这样的t c p i p 协议芯片。它实质上由m c u 及内部固化 t c p i p 协议的芯片组成应用系统的核心。 也可以选用以d s p 为基础的t c p i p 协议栈,如e d e v i c e 公司提供的 s m a r t s t a c k 协议栈,就是在a n a l o gd e v i c e s 公司的a d l 2 1 8 xd s p 芯片 的基础上实现的。 还可以采用第三方提供的嵌入式协议栈。市场上主要的网络协议公司 有i n t e r n i c h e 公司、p a c i f i cs o f l w o r k s 公司、c m x 公司、m u l t i p o r t 公 司等,它们可以根据客户的需求提供独立的嵌入式t c p i p 协议栈。这 类协议栈一般用c 语言编写,与硬件平台和操作系统无关,适应性较 强,但价格一般较贵。 电子科技大学硕士论文 当然也可以自己开发协议栈。优点是可以根据实际需求进行定制,代 码可以做到最精简,而且硬件比较简单,成本比以上其它方案都低, 适合于低成本的应用如消费类产品、测试头等。缺点是软件工作量大, 难度也大。美国s c e n i x 公司推出的新一代s x 微处理器,就是根据自 己的特点自行开发的t c p i p 协议栈。 最后还可以采用网关代理的方式,这样也能满足仪器上网的需求。这 种实现方式采用桌面计算机作为网关,上面支持t c p i p 协议并运行 h t t p 服务程序,形成一个用户可以通过网络浏览器进行远程访问的服 务器。该服务器通过r s 2 3 2 、r s 4 8 5 、c a n 、红外、射频等轻量级总 线与多个嵌入式设备联系起来,每个嵌入式设备的应用程序中包含一 个独立的通信任务,监测嵌入式设备中预先定义的各个变量,并将结 果反馈到服务器中,同时嵌入式设备还可以解释服务器的命令,修改 设备中的变量,或进行某种控制。中国单片机公共实验室的i s t ( 因特 网传感器技术) 即采用此种实现方案。 综合考虑本课题的任务需求和产品成本等因素后,拟采取自行开发嵌入式 t c p i p 协议栈的方案。 电子科技大学硕士论文 4 1 单板结构 第四章n c e x 单板介绍 带有微处理器的能够连接到i n t e r n e t 的设备称为嵌入式i n t e r n e t 。一个嵌入 式i n t e m e t 系统包括三部分:物理层接口、网络协议栈( t c p i p ) 、微处理器, 每一部分对于实现智能的网络化系统都是必不可少的。 图4 - 1 嵌入式i n t e r n e t 结构 其中物理层接口、微处理器和一些外围电路共同构成了单板硬件,因为微 处理器采用的是i n t e l 公司的3 8 6 e x ,所以将该单板定名为n c e x ( n e t w o r kc a r d o f 3 8 6 e x ) 。它的结构框图如下: 复位按钮 d b 9 串口0 d b 9 串口1 r j 4 5 网口 c p u 总线输出 n c e x 分为两个子系统:c p u 子系统和以太网接口子系统。 4 2 c p u 子系统模块 4 2 1 结构描述 嵌入式系统的核心是嵌入式微处理器,而i n t e l3 8 6 e x 微处理器在嵌入式应 用中已获得了世界的公认。i n t e l3 8 6 e x 嵌入式微处理器是一个全静态的3 2 位 电子科技大学硕士论文 处理器,它使嵌入式应用达到最优化。它功耗小,工作电压低,将许多经常使 用的d o s 类型的外围通道都集成到了芯片内部。它具有1 6 位数据线、2 6 位地 址线。其内部结构的方框图如下: d m a 口 总线仲 裁单元 内 存 地 址 一地址广_ 总线接口| = 二爿 片选信号 中央处 理单元 内 存 数 据 中断控制单元 外 围 地 址 外 围 数 据 数据 n 藏面雨习 1一 时钟发生器和 1 电源管理单元 刷新控制单元 看门狗定时单元 串行l o 单元 计时控制单元 图4 - 33 8 6 e x 内部结构 下面对i n t e l3 8 6 e x 上集成的外围通道进行简要的介绍: 时钟发生器和电源管理单元 时钟发生器电路产生彼此独立的两个时钟。核心使用的时钟是 p h i c p h 2 c ,外围通道使用的时钟是p h l
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年岸电系统行业当前发展趋势与投资机遇洞察报告
- 2025年应急产业行业当前发展现状及增长策略研究报告
- 收纳培训资料课件
- 收入确认五步法培训课件
- 2025年部编新版语文七年级上册第五单元复习课教案
- 2025年药品检查员培训试题及答案(GSP、GMP试题)
- 撞车后安全知识培训内容课件
- 2025年注册安全工程师考试真题(含答案)
- 2025会计专业技术人员继续教育考试试题和答案
- 摘苹果课件教学课件
- 承保实务非车险课件
- 电梯日管控、周排查、月调度内容表格
- 实验室生物安全会议记录
- 幼儿园教学活动设计方法
- 液氧站施工方案
- 发泡模具验收报告
- 全国各气象台站区站号及经纬度
- 深圳市劳动法律法规参考手册
- 现金流游戏课件
- HCCDP 云迁移认证理论题库
- 深远海智能养殖装备平台
评论
0/150
提交评论