(光学工程专业论文)嵌入式系统在dsp与网络接口中的应用.pdf_第1页
(光学工程专业论文)嵌入式系统在dsp与网络接口中的应用.pdf_第2页
(光学工程专业论文)嵌入式系统在dsp与网络接口中的应用.pdf_第3页
(光学工程专业论文)嵌入式系统在dsp与网络接口中的应用.pdf_第4页
(光学工程专业论文)嵌入式系统在dsp与网络接口中的应用.pdf_第5页
已阅读5页,还剩67页未读 继续免费阅读

(光学工程专业论文)嵌入式系统在dsp与网络接口中的应用.pdf.pdf 免费下载

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

文档简介

哈尔滨栏人学硕十学位论文 摘要 随着i n t e r n e t 技术的飞速发展,信息技术对于人们至关重要。传统的网络互 连以p c 机为中心,而在一些专用控制及数字信号处理的小型系统中,为了节约系 统的成本及简化设计常常要求脱离p c 机,而直接采用微控制器或数字信号处理器 结合嵌入式系统来完成与网络的接口,由于近年来嵌入式系统的飞速发展,使得 这样的简化嵌入式网络系统得以实现。 要将嵌入式系统连上i n t e r n e t 的关键是如何实现网络接口,以及如何提供相 应的网络协议。即需做好两方面的工作:( 1 ) 硬件上,要给系统主控器加一个网络 接口;( 2 ) 软件上,要提供相应的通讯协议。以及如何将r t o s 嵌入到d s p 上。 本次设计的主要目标是通过以太网使嵌入式系统连入i n t e r n e t 。针对嵌入式 系统资源有限的特点,为突出设计的主要目的,本文提出一种利用t i 公司的 t m s 3 2 0 v c f i 4 1 0 数字信号处理器结合嵌入式系统附带精简的嵌入式u d p 、i p 协议实 现数据在互联网络上的传输。因为这种方案和其它嵌入式网络相比具有低开销的 最大特点。它的不足之处就是软件的编写比较繁琐。本系统设计的是p c 机通过串 行接口把待处理的数据送给d s p ,经处理后结合“c o s i i 嵌入式操作系统和网卡 控制芯片r t l 8 0 1 9 a s 实现网络传输。 关键词:d s p ;嵌入式系统;uc o s - 1 i ;以太网:u d p i p 哈尔滨f 释入学硕士学位论文 a b s t r a c t w i t ht h er a p i dd e v e i o p m e n to fi n t e r n e tt e c h n o l o g y ,i n f o r m a t i o ni sv e r y l m p o r t a n tt op e o p l e t r a d i t i o n a lc o n n e c t i o no fn e t w o r kt r e a tp ca st h e c e n t e r ,b u ti ns o m es m a lls y s t e mo fs p e c i a lc o n t r o la n dd i g it a ls i g n a l p r o c e s s i n g ,i no r d e rt os a v et h ec o s to fs y s t e ma n dp r e d i g e s tt h e d e s i g n m e n t ,p e o p l eo f t e nn e e dt oa d o p tm c ua n dd s pw i t h o u tp ci n c l u d i n g e m b e d d e ds y s t e mt oa c h i e v et h ei n t e r f a c et ot h en e t w o r k b e c a u s eo ft h e r a p i dd e v e l o p m e n to fe m b e d d e ds y s t e m , i tm a k et h ea c h i e v e m e n t1 i k et h a t s i m p l ee m b e d d e ds y s t e mo fn e t w o r k t om a k et h ee m b e d d e ds y s t e ml i n kt oi n t e r n e t ,t h ek e yi sh o wt o i m p l e m e n tt h ei n t e r f a c e ,a n dh o wt op r o v i d er e l e v a n tp r o t o c o lo f n e t w o r k ,t h a ti st om a k eb e t t e ro ft w or e s p e c t :( 1 ) i nh a r d w a r e ,w es h o u t da d d an e t w o r ki n t e r f a c et ot h em a i ns y s t e mc o n t r o ld e v i c e :( 2 ) i ns o f t w a r e ,w e m u s tp r o v i d er e l e v a n tp r o t o c o la sw e lla se m b e d d i n gt h er t o st od s p t h ea i mo ft h i sd e s i g ni st om a k ee m b e d d e ds y s t e ml i n kt oi n t e r n e t t h r o u g he t h e r n e t a i m m i n ga tt h ec h a r a c t e ro fl i m i t e ds o u r c eo fe m b e d d e d s y s t e ma n ds t a n d i n go u tm a i ni n t e n to ft h i sd e s i g n m e n t ,1b r i n gf o r w a r da w a yi nw h i c hiu s et m s 3 2 0 v c 5 4 1 0c o m b i n n i n ge m b e d d e ds y s t e ma n di n c l u d i n g s i m p l eu d p i pp r o t o c o lt oa c c o m p l i s hd a t at r a n s m i s s i o ni ni n t e r n e t b e c a u s e t h i sp r o j e c th a s t h ec h a r a c t e ro f1 0 wc o s tc o m p a r i n gt oo t h e re m b e d d e d s y s t e m b u ti th a si t sd e f i c i e n c yw h i c ht h es o f t w a r ep r o g r a mi ss o c o m p l i c a t e t h ed e t a i li st h ed e a l e dd a t ai st r a n s f e r r e dt od s pt h r o u g h p c ,a f t e rd e a l i n g ,c o m b i n i n guc o s i ia n dn i cr t l 8 0 1 9 a sw ea c c o m p l i s h e d d a t at r a n s m i s s i o ni ni n t e r n e t k e y w o r d s :d s p ;e m b e d d e ds y s t e m ;l ac o s i i :e n t e r n e t :u d p i p 哈尔滨工程大学 学位论文原创性声明 本人郑重声明:本文的所有工作,是在导师的指导下, 由作者本人独立完成的。有关观点、方法、数据和文献等引 用已在文中指出,并与参考文献相对应。除文中已经注明引 用的内容外,本论文不包含任何其他个人或集体已经公开发 表的作品成果。对本文的研究做出重要贡献的个人和集体, 均已在文中以明确方式标明。本人完全意识到本声明的法律 结果由本人承担。 作者( 签名) : 至垒遣 日期:0 孵年d 月寸日 哈尔滨i :程人学硕士学位论文 第1 章绪论 1 1 本课题的背景及来源 随着i n t e r m e t 技术的飞速发展,信息技术对于人们至关重要。传统的网络互 连以p c 机为中心,而在一些专用控制及数字信号处理的小型系统中,为了节约系 统的成本及简化设计常常要求脱离p c 机,而直接采用微控制器或数字信号处理器 结合嵌入式操作系统来完成与网络的接口,由于近年来嵌入式系统的飞速发展, 使得这样简化的嵌入式系统得以实现。 当今世界除了那些常见的由主机+ 显示器+ 键盘+ 鼠标组成的功能齐备的通 用计算机外,另一种新型的电子应用系统越来越受到人们的重视和亲睐。这就是 嵌入式系统。这种系统着眼于应用,已被人们定义为“以应用为中心、以计算机 技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功 耗严格要求的专用计算机系统”。它以明显的体积小,价格低,专用性能高的优势, 在电子应用中逐渐呈现出独占鳌头的趋势。目前嵌入式系统在家庭、工业等各个 领域中的应用已越来越广,如在信息家电和工业控制的各个方面都可以看到它的 身影。据统计,这些嵌入式设备在数量上已远远超过通用计算机。其前景倍受人 们看好。 应用众多的m c u ( 单片机、a r m 等) 侧重于事件处理,属于事物处理型微处理 器,具有丰富的控制功能,如简单易用的位操作和中断嵌套能力,而且配有完善 的外围电路,使其与外设的连接比较方便,特别适合嵌入式应用领域,但其数据 的运算、处理功能比较弱。d s p 侧重于数据流处理,内部的硬件体系结构和指令 特别适合数据流的实时处理,所以d s p 系统通常用于大数据量的实时处理系统中。 功能复杂的控制器需要嵌入式操作系统( 一般都是实时的) 的管理。嵌入式操 作系统的硬件一般包括处理器微处理器、存储器及外设器件和i o 端口,软件部 分包括操作系统软件( 要求实时和多任务操作) 和应用程序编程,并且软硬件可裁 剪,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算 机系统。嵌入式操作系统所遵循的最重要的设计原则是:采用各种算法和策略,始 终保证系统行为的可预测性。可预测性是指在系统运行的任何时刻,在任何情况 哈尔滨1 程人学硕十学忙论文 下,实时操作系统的资源调配策略都能为争夺资源( 包括c p u 、内存、网络带宽等) 的多个实时任务合理地分配资源,使每个实时任务的实时l 生要求都能得到满足。 d s p 嵌入式系统是把d s p 系统嵌入到应用电子系统中的一种通用系统,具有 d s p 系统的所有技术特征,例如复杂算法的运算、信号的处理,同时还具有应用 目标所需要的技术特征。d s p 嵌入式系统不再是一个专用的d s p 系统,而是一个 完整的具有多任务和实时嵌入式操作系统的计算机系统,这对于需要复杂算法和 一定事务处理的对象尤其适合。 由于全世界各种技术标准的统一,通过各种网络设备,i n t e r n e t 已接入千家 万户,其中高速以太网正成为办公和科研的重要的手段。t c p i p 协议作为 i n t e r n e t 中应用最为广泛的通讯协议,跨越不同的地域、网络和机器,将各种计 算机联接起来,互通信息。世界上的多种现场总线为了与网络相联,也设计了和 其它不同网络联接的接口,因此设计一种精简的t c p i p 协议包含在嵌入式操作系 统中,并把以太网作为底层网络在技术与实际应用上成为可能。 本文选择t m s 3 2 0 c 5 4 x 系列d s p 中的5 4 1 0 作为控制器和处理器的c p u ,为提 高控制器的可靠性和处理设计的实时陛,选择嵌入式操作系统uc o s i i 作为管理 控制器的操作系统,调度各种任务的执行和管理外围设备,选择r t l s 0 1 9 a s 作为 底层网络以太网的控制芯片,为实现网络传输而嵌入了i p 、u d p 协议。 1 2 本课题相关的技术问题 1 2 1 网络控制器的发展 微控制器中由单片机等几种c p u 发展到如今种类繁多、功能强大、性能各异 的微处理器,外围器件的速度和功能不断提高和强大。由于各种对象对控制功能、 计算速度等要求越来越高,控制器的任务管理变得更加复杂,只依靠开发者一个 或几个人编写系统管理和任务执行程序的情况变得越来越不可能。嵌入式操作系 统广泛应用,使开发者从繁琐、重复性的劳动中解放出来,并且提高了系统的可 靠性、实时性,同时各种设备之间通信的网络互联已成为时代的需要和潮流。 目前,在数字信号处理方面,c p u 中以d s p 最为适合。在嵌入式操作系统方 哈尔滨】? 科人学硕士学位论文 面,l i n u x ,g x w o r k s ,州x ,p s o s ,w i n c e ,uc o s i i 应用最为广泛。 复杂的大系统平台一般以嵌入式操作系统作为管理软件,商端跚( a f j i i , p o w e rp c 等) 作为控制c p u ,d s p 作为信号专用处理芯片。复杂程度中等的系统一 般也使用嵌入式操作系统,c p u 为m c u 或d s p 。d s p 作为c p u 对需要一定数据处理 和控制的中小型系统最为合适。简单的系统一般只使用单片机,如8 0 3 1 就可以达 到目的。 1 2 2c p u 的介绍 由于科学技术的飞速发展和半导体工艺的不断成熟,c p u 的性能和速度比几 年前有了极大的提高。这是由于大量采用新技术,更改内部系统结构( 一股为哈佛 结构) ,使用流水线技术,提高处理器的并行处理能力,提供在线仿真( 一般用j t a g 接口) ,同时在片中还集成大量外设接口大大增强了系统的功能和减小了硬件平 台的体积。 低端的8 位的单片机,芯片内部集成的功能越来越多,封装越来越小,系统 时钟频率己有很大提高,而在高端3 2 位c p u 中a r m 和d s p 在我国应用极为广泛。 a r m ( a d v a n c e dr i s cm a c h ir l e s ) 是微处理器行业的一家知名企业,设计了大 量高性能、廉价、耗能低的r i s c 处理器,具有性能高、成本低和低能耗的特点, 适用于多种领域。a r m 提供一系列内核、体系扩展、微处理器和系统芯片方案。 由于所有产品均采用一个通用的软件体系,所以相同的软件可在所有产品中运行 ( 理论上如此) 。a r m 的内核是小型、快速、低能耗、集成式的r i s c 结构,虽然是 3 2 位的c p u ,但它可以提供1 6 位的t h u m b 指令,以1 6 位系统的成本,提供3 2 位r i s c 性能。a r m 还集成了类似于i c e 的c p u 内核调试技术,所以原型设计和系 统芯片的调试得到了极大简化。 d s p 芯片,也称数字信号处理器,是- , e e 适合于进行数- t q a 号处理运算的微 处理器,其主要应用是实时快速地实现各种数字信号处理算法,其处理速度比最 快的c p u 还快1 0 5 0 倍。但在当今的数字化时代背景下,d s p 已成为视频处理、 可视电话、通信、计算机、消费类电子产品等领域的基础器件,被誉为信息社会 革命的旗手。在全球d s p 产品市场中,t i 公司独占鳌头,占世界市场4 5 的份额, 哈尔滨l 科人学硕士学位论文 其次是朗讯( 2 8 ) ,a d i ( 1 2 ) ,摩托罗拉( 1 2 ) 、其他公司( ( 3 ) 。d s p 器件支持 对密集的乘法运算,大多数采用了哈佛结构,将存储器空间划分成两个,分别存 储程序和数据。大多数的d s p 都有专门的硬件,用于零开销循环。所谓零开销循 环是指处理器在执行循坏时,不用花时间去检查循环计数器的值、条件转移到循 环的顶部、将循环计数器减l 。d s p 处理器往往都支持专门的寻址模式,因为d s p 应用要求高度优化的代码,大多数d s p 厂商都提供一些开发工具,以帮助程序员 完成其优化工作。d s p 的优异性能使其应用范围越来越广泛,已经扩展到各行各 业。 t i ,m o t o r a l a 等公司已经研制出把m c u 和d s p 结合在单芯片中的微处理器, 所以,以后的c p u 趋势将会朝着二者结合的方向发展,而嵌入式操作系统的使用、 网络的互联己成为必然。 1 2 3 嵌入式实时系统 目自u 在中国大多数现场控制软件丌发还是基于处理器直接编写程序,没有采 用实时操作系统( r t 0 s ) ,不能将系统软件和应用软件分开处理。r t o s 是一段嵌 入在目标代码中的软件,用户的其它应用程序都建立在r t o s 之上。不但如此,r t o s 还是一个可靠性和可信性很高的实时内核,将c p u 时间、中断、i 0 、定时器等资 源都包装起来,留给用户一个标准的a p i ,并根据各个任务的优先级,合理地在 不同任务之间分配c p u 时间。嵌入式操作系统所使用的c p u 与通用型的最大不同 就是嵌入式c p u 大多工作在为特定用户群设计的系统中,它通常都具有低功耗、 体积小、集成度高等特点,能够把通用c p u 中许多由板卡完成的任务集成在芯片 内部,从而有利于嵌入式系统设计趋于小型化,移动能力大大增强,跟网络的耦 合也越来越紧密。 胛o s 所遵循的最重要的设计原则是:采用各种算法和策略,始终保证系统行 为的可预测性( p r e d i c t a b i1it y ) 。可预测性是指在系统运行的任何时刻,在任何 情况下,实时操作系统的资源调配策略都能为争夺资源( 包括c p u 、内存、网络带 宽等) 的多个实时任务合理地分配资源,使每个实时任务的实时性要求都能得到满 足。r t o s 是针对不同处理器优化设计的高效率实时多任务内核,优秀商品化的 哈尔滨一l 程人学硕十学位论文 r t o s 可以面对几十个系列的嵌入式处理器m p u ,m c u ,d s p ,s o c 等提供类同的a p i 接口这是r t o s 基于设备独立的应用程序丌发基础。因此基于r t o s 上的c 语言 程序具有极大的可移植性。在r t o s 基础上可以编写出各种硬件驱动程序、专家库 函数、行业库函数、产品库函数,和通用性的应用程序一起,可以作为产品销售, 促进行业内的知识产权交流,因此r t o s 又是一个软件开发平台。r t o s 的引入, 解决了嵌入式软件丌发标准化的难题。随着嵌入式系统中软件比重不断上升、应 用程序越来越大,对丌发人员、应用程序接口、程序档案的组织管理成为一个大 的课题。引入r t o s 相当于引入了一种新的管理模式,对于开发单位和开发人员都 是一个提高。 uc 0 s i i 的前身是u c o s ,由于源代码的开放、简洁,功能的完善,广泛 应用于世界各地,而且不断的发展。由于其代码简洁,具有般商业实时内核可 移植、可裁减、多任务、占先式等特点,因此非常适合移植到中小型系统中。 1 2 4 网络通信协议 计算机网络从8 0 年代末丌始,局域网技术发展成熟,出现光纤及高速网络 技术,多媒体,智能网络,整个网络就像一个对用户透明的大的计算机系统,发 展为以i n t e r n e t 为代表的互联网。i n t e r n e t 网起源于1 9 6 9 年美国国防部高级研 究计划局协助开发的4 个节点组成的a r p a 网。把世界各地的计算机网、数据通信 网以及公用电话网,通过路由器和各种通信线路在物理上连接起来,再利用 t c p i p 协议实现不同类型的网络之间相互通信,是一个“网络的网络”,i n t e r n e t 网的基础是现存的各种计算机网络和通信网络。 当计算机技术与通信技术结合产生了计算机网络后,各企业管理部门问通信 都以网络为中介,实现了信息与资源共享,同时,信息技术的发展也引起了自动 化结构的变革,逐步形成以网络集成自动化系统为基础的企业信息系统。现场总 线( f i e l d b u s ) 就剁i 顶应这一形势发展起来的新技术,它是计算机网络与控制系统 结合的必然产物。 i n t e r n e t 所使用的7 r c p i p 协议在世界上广泛应用,己有许多工厂、智能小 区、公青 在对实时性要求不是很高的场合使用基于快速以太网的t c p i p 协议网 哈尔滨j :程大学硕士学位论文 络,解决了各系统2 _ r 自j 兼容的问题。但t c p i p 协议实际上是一个完备的协议族, 包括众多狮议而且机制复杂,所以必须根据家庭智能控制器的需要对t c p i p 协议 进行特定的修改和精简。 1 3 本课题的研究工作及内容安排 根据b i 面的分析,本文以数字信号处理器为核心,采用t i 公司t m s 3 2 0 v c 5 4 1 0 作为微处理器,n i c 以以太网络接口控制芯片为例进行软硬件的开发。 要将嵌入式系统连上i n t e r n e t 的关键是如何实现网络接口,以及如何提供相 应的网络协议。即需做好两方面的工作:( 1 ) 硬件上,要给系统主控器加一个网络 接口;( 2 ) 软件上,要提供相应的通讯协议。以及如何将r t o s 嵌入到d s p 上。本 设计与本论文就在这几个方面作了一些工作。 本次设计的主要目标是通过以太网使嵌入式系统连入i n e r n e t 。针对嵌入式 系统资源有限的特点,为突出设计的主要目的,提出一种利用t i 公司的 t m s 3 2 0 v c 5 4 1 0 数字信号处理器结合嵌入式系统附带精简的嵌入式u d p 、i p 协议实 现数据在互联网络上的传输。因为这种方案和其它嵌入式网络相比具有低开销的 最大特点。它的不足之处就是软件的编写比较繁琐。硬件系统设计思路是p c 机通 过串行接口把待处理的数据送给d s p ,经处理后结合“c 0 s i i 嵌入式操作系统和 网卡控制芯片r t l 8 0 1 9 a s 实现数据的网络传输。下图是本系统的总体图: 厅订r l _ ;i r 而r l 里坚m e 1 ,。,一。,。,一i ,。,一j 图1 1 系统的总体图 本文首先主要介绍了网络的结构模型以及与本课题相关的网络通信协议,并 对协议的结构和网络的延迟作出了分析。 其次在第三章对嵌入式操作系统uc 0 s i i 的内核和运行机制进行了详细的 介绍。 在第四章,先给出了本系统的硬件设计,系统框图,电路图以及各器件的介 绍,其次给出了系统的的软件设计。 第五章,本章详细的描述了嵌入式操作系统u c o s i i 在d s p 上的移植过程。 最后在第六章得出了本次课题的结论和对本课题的总结。 哈尔滨一程人学硕十学位论文 第2 章网络通信协议的介绍 2 1 网络通信协议的总体模型 目前广为流行的网络通信系统层次模型是i s o o s i 的七层网络模型。i s o o s i 是国际标准化组织指定的开放式系统互连参考模型。它将网络按功能分为七个层 次,每个层次提供一定的服务,并提供与相邻层的接口,隐藏其下各层的细节, 这七个层次自下而上分别是:物理层、数据链路层、网络层、传输层、会话层、表 示层和应用层。一般来说物理层和数据链路层的任务由硬件来实现,合称硬件层; 网络层以上的各层功能一般由软件来实现,合称软件层。 主机a 主机b 1 物理层( p h y s ic a ll a y e r ) 物理层是o s i 模型的最底层,利用物理传输介质为数据链路层提供物理连接。 主要任务是在通信线路上传输数据比特电信号。此层是用来确保一方发送二进制 数字1 时,另一方收到的是l 而不是0 。这里的典型问题是使用多少伏特的电压 哈尔滨f 程人学硕士学何论文 代表1 ,多少伏特的电压代表0 ;一个比特持续多少微秒:传输是否同时在两个方 向上进行;最初的连接如何建立和完成通信后连接如何终止;网络插座有多少针 以及各针的用处。此层涉及的主要是机械、电气、过程接口以及物理传输介质等 问题。此层设计完全可以作为电气工程领域内的问题来处理。 2 数据链路层( d a t al i n kl a y e r ) 物理层协议虽然保证了通信双方为顺利传输每一个比特“o ”、“l 所需的 底层内部一致,但物理媒体总存在于自然环境中,噪声干扰、信道失真和连接状 况的变动等总是客观存在的。物理层并不能保证传输的比特流完全不出差错。至 于由比特流构成的数据帧是否正确,物理层协议根本不管。为此还需要利用协 议判断物理层传输的比特流是否出现差错,处理差错并构造出无差错的数据帧。 数据链路层协议的主要功能是:通过校验、确认、反馈、重发( 通常使用c r c 循环冗余校验) 等手段,将原始物理上的连通链路改造成为无差错的数据链路;将 比特流组合成数据链路层协议下的数据单元,坝;判断每帧中的地址码、控伟4 码、 校验码;控制流量,防止高速发送来的数据淹没接收方。 3 网络层( n e t w o r kl a y e r ) 网络层是网络的传输系统,决定了主机和所有源地址和目的地址之间包交换 点的接口。它的主要功能是通信子网内的寻径、流量、差错、顺序、进出路出等 控制,即负责将数据从物理连接的一端传送到另一端,实现点到点的通信。通过 执行路由算法,网络层能够为报文分组在经过通信子网时选择最适当的路径。由 于网络层需要执行路径选择、拥挤控制和网络互连等功能,是o s i 参考模型中最 复杂的一层。 4 传输层( t r a n s p o r tl a y e r ) 传输层负责提供两节点之间数据的传输,当两节点己经确定建立联系后,传 输层则负责监督,以确保数据能够正确无误的传送。传输层的目的是向用户提供 可靠的端到端服务,透明地传送报文,它向高层屏蔽了下层数据通信的细节,因 而,它是网络体系中晟关键的一层。 5 会话层( s e s s i o nl a y e r ) 会话层为每一个网络会话建立和协调不同主机之间进程和应用程序的连接。 它负责控制每一站究竟什么时间可以传送和接收数据,为不同的用户提供建立会 哈尔滨i 程人学硕十学位论文 话关系,并对会话进行有效管理。 6 表示层( p r e s e n t a ti o nl a y e r ) 表示层主要用于处理两个通信系统中信息的表示方式,完成数据格式的转 换并对数据进行加密解密、压缩恢复等操作。它包含网络通信时重复使用的 公共函数,提供与网络相关的文件格式或视频显示等的接口。 7 应用层( a p p l i c a t i o nl a y e r ) 应用层包括与专门的用户应用程序的所有相关细节,实现具体的网络应用。 它是o s i 模型的最高层,负责网络中应用程序与网络操作系统之间的联系,并为 用户提供各种服务。例如文件传输、远程登录、电子邮件以及网络管理等。 对应这七层有七类不同的协议。每一类协议都有各自不同的多种协议。例如 物理层和数据链路层有i e e e 8 0 2 3 协议,i e e e 8 0 2 4 协议,p p p 点对l 渤议,x 2 5 协议,帧中继和a t m 等;网络层有a r p 协议、r a r p 协议、i c m p 协议、i g k l p 协议、 i p 协议和i p x 协议等。据具体网络架构的不同来选用各种合适的协议。 2 2i e e e 8 0 2 3 协议 由于本次设计主要是通过以太网使嵌入式系统连入i n t e r n e t ,所以这里有必 要介绍一下适合于以太网物理层和数据链路层的专用协议一i e e e s 0 2 3 协议。 1 e e e s 0 2 3 标准描述了采用随机竞争型媒质接入控制c s m a c d 协议的基带总 线型l a n 的姒c 子层和物理技术规范。目前应用最广泛的商品网络一以太网 ( e t h e r n e t ) ,是具体体现这一标准的典型代表。 c s m a c d 的全称是“具有碰撞检测的载波侦听式多址接入控制”。它的控制规 则如下: ( 1 ) “边说边听”( l w t ) 。任一发送方在发送数据帧期间要保持侦听帧的碰撞 情况。一旦检测到碰撞发生,应立即中止发送,不管所发送的这一帧是否发完。 ( 2 ) “强化干扰”( j a m 。发送方在检测到碰撞并停止发送后,立即改为发送 哈尔滨l :程大学硕十学位论文 - d , 段“强化干扰信号”,以加强碰撞检测的效果。 ( 3 ) “碰撞检测窗口”( b w t ) 。任一发送方若能完整地发完一个数据帧,则停 顿一段时间并侦听信道情况。若在此期间未发生碰撞,则可确认该帧己发送成功。 此时间区间即称“碰撞检测窗口”,其值为总线的最大传播时延。 上述第( 1 ) 点保证尽快确知碰撞发生和尽早关闭碰撞发生后的无用发送,这 有利于大大提高信道的利用率;第( 2 ) 点可以提高网上所有工作站对于碰撞检测的 可信度,保证了分布控制的一致性:第( 3 ) 点有利于提高一个数据帧发送的可信度。 如果接收站在此窗口内发送应答帧( a c k 或n a k ) 的话,则可保证应答绝对成功。 c s m a c d 协议的站问数据传输采用附加检测窗口的确认方式。在c s m a c d 确 认式传输协议中,对于确认帧给予优先发送权利。当某个站有数据帧等待发送时, 该站不仅需要等待传输媒质空闲( 没有检测出载波) ,而且继续等待一个“基本等 待时间”( b w t ) 。在经历b w t 后,如果传输媒质空闲,此时才能发送数据帧,某站 遇到发送冲突时,遵从退避时延后再检测载波。当没有载波时,再等待b w t 。如 果传输媒质仍是空闲,方可重发数据帧。接收站收到发送站送出的帧后,由于b w t 所约定的传输媒质空闲,立即在b w t 内返送确认( a c k ) 帧。因为b 1 】f i 在数值上等于 传输媒质两端之间的信息往返传播时间( 考虑数据帧和a c k 帧的传播延迟) ,从而 保证确认帧不会与数据帧相碰撞。 2 2 2 帧结构 标准i e e e 8 0 2 3 帧结构由以下几部分组成:帧头( p r e a m b l e ) 、帧起始定界标 志( s f d s t a r to ff r a m ed e l i m i t e r ) 、目的地址( d e s t i n a t i o n ) ,源地址( s o u r c e ) 、 数据长度( l e n g t h ) 、数据( d a t a ) 和帧校验序列( f c s ) 。如下图所示: 6 2 b 2 b6 b6 b 2 b4 6 - 1 5 0 0 b4 b 在帧结构中,除了数据域的长度不固定外,其他域的长度都固定不变。 在数据发送时,帧头、帧起始定界符与校验和都是由网络接口控制芯片自动 添加的。在接收数据过程中,帧头和帧起始定界符将被跳过,即网络接口控制 哈尔滨i 程人学硕士学位论文 芯片一旦检测到有效的帧头和帧起始定界符,就认为有效数据丌始,并将有效 数据存入接收缓冲环。存入接收缓冲环的数据包括:目的地址、源地址、数据域 长度、数据域及校验和。 1 帧头和帧起始定界符 帧头是6 2 位1 、0 交替的位序列,即1 0 1 0 1 0 1 0 1 0 。使用这一序列的目的 是为了取得接收到的串行数据的位同步信号。当发送帧时,每一帧都包含了6 2 位的帧头,在接收帧时,帧头的6 2 位l 、0 序列被跳过。即使在网络数据传输时 丢掉一些1 、0 序列,也不会影响有效数据的f 确接收。 帧起始定界符( s f d ) 负责检测有效帧的字节起始位置,由连续2 位1 组成, 即1l 。一旦网络接口控制芯片的定界逻辑检测到两个连续的1 ,就认为有效帧已 到,把接收到的串行数据以字节方式计数,并将数据送入f i f o 。 在网络上传输数据时,由于某种原因,使帧头中的某一位由0 变为l ,网络接 口控制芯片就会接收到错误帧( 由c r c 校验逻辑完成) ,从而拒绝接收该帧数据。 2 目的地址 帧在网络上传输的目的地,其值代表了网络上某台计算机网卡的网卡号即网 卡地址。对于接收方来说,网络接口控制芯片可以通过该地址过滤那些不愿接收 的帧( 即该帧的目的地址与接收方物理地址不一致的帧) 。 网卡芯片支持三种地址格式:物理地址、多址地址和广播地址。 ( 1 ) 物理地址用该地址用来指明接收该帧的计算机所安装的网卡地址。该地 址是唯一的,即接收该帧的计算机只有一台。所有物理地址的m s b 位的值为0 , 即4 8 位网卡地址的最高位为0 。对于接收方来说,如果接收到的帧的目的地址与 网卡地址不同,则拒绝该帧。 ( 2 ) 多址地址。该地址用来指明接收该帧的多个目的地址,最多可达6 4 个。 每个多址地址的m s b 位的值为1 ,即4 8 位地址中的最高位为1 。网络接口控制芯 片使用标准哈希( h a s h ) 算法来过滤该地址。其原理是:将多址地址经标准哈希算法 变为6 位的值,利用该6 位值来索引6 4 位的寄存器阵列m a r ,并使用该6 4 位寄 存器阵列来过滤6 位的值,以此达到多址寻址的目的。 ( 3 ) 广播地址。该地址用来指明该帧可以被网络上的所有结点接收。广播地 址是用全l 柬表示,即4 8 位的目的地址的每一位的值都是l 。该地址不需要匹配 哈尔滨i :样人学硕十学位论文 或过滤等步骤,它所对应的帧可阻直接被接收。 3 源地址 源地址是发送该帧的网卡地址,该地址只能是物理地址,用来指明发送该帧 的唯一结点。 4 数据长度 数据长度用来表示数据域的有效数据的字节数。网卡芯片不解释数据长度信 息,即在帧接收时不是通过该数据来判断帧是否结束,而是通过c r s 和c r c 校验 和结果来判断帧是否结束。 5 数据域 数据域可以包含4 6 一1 5 0 0 字节的有效数据。如果待发送的数据多于1 5 0 0 个 字节,必须将其封装在多个帧中发送;如果待发送的数据少于4 6 个字节时,必须 填充一些无用数据,以达到至少4 6 字节的要求。数据长度不包括填充的无用数据 的字节个数。 注意:网络接口控制芯片不能处理小于4 6 字节和多于1 5 0 0 字节的情况,设 计人员在装帧时必须遵守这一要求。 对于数据域的这一要求是由i e e e 8 0 2 3 标准规定的,当然提出这一要求是有 原因的。要求对于有效数据不能大于1 5 0 0 字节的理由是:当网络上传输过长的帧 时,如果该帧在传输过程中出错,则重传该帧所花的代价太大。要求有效数据不 小于4 6 字节的理由有:一是为了区分信道中的有效帧和无用信息:二是避免冲突 发生而检测不到的情况出现。即发送的比特流在未到达网络最远端时就完成了帧 的发送。这时如果发生碰撞的话,发送端不能检测到冲突信号。 6 帧校验 网络接口控制芯片的帧校验方式采用c r c 一3 2 位校验和,其生成多项式为:铲 + x ”+ x z l + x 2 + x + x ”+ x ”+ x ”+ x 8 + x 7 + x 5 + x 4 十x 2 + x + 1 ,网络接口控制芯片利用 c r c 产生校验模块完成校验码的生成和计算校验和,并在发送时将产生的c r c 一3 2 位校验码加在数据域之后,在接收时通过计算校验和来确定接收到的帧是否正确。 注意:除帧头、帧起始定界符和帧校验字段由网络接口控制芯片自动添加外, 其他字段必须由程序指定。 哈尔滨l :程犬学硕士学位论文 2 3u d p 协议 u d p 协议( 用户数据报协议) ,和t c p 相似,同属传输层协议,都作为应用程 序和网络传输的中介。本设计中使用了u d p 协议。所以在此先对此协议作一个简 介。 u d p 协议对于传输层的两大责任: ( 1 ) 创建进程到进程的通信; ( 2 ) 提供流控制机制。 u d p 使用端口号来完成责任( 1 ) 。对责任( 2 ) ,u d p 在个非常低的水平上完 成此功能。在收到分组时没有流控制机制,也没有确认,但u d p 提供某种程度的 差错控制。如果u d p 检测出在收到的分组中有一个差错,它就悄悄地丢弃这个分 组。 传输层负责为进程提供连接机制。这些进程应能向传输层发送数据流。传输 层在发送端的责任是和接收器建立连接;将数掘流分割成可传输的单元:将它们 编号;逐个发送。在接收端的责任为等待属于同一进程的所有不同单元到达;检 查并传递那些没有差错的单元;并将它们作为一个流交付给接收进程。当整个流 发送完毕后,传输层应当关闭该连接。 与t c p 不同,u d p 只从进程接收数据单元,并将它们“不可靠”地交付给接 收端。数据单元必须足够小到能被装进到个u d p 分组中。 u d p 是一种无连接的不可靠的传输协议。它除了提供进程到进程的通信( 而不 是主机到主机的通信) 外,没有给i p 服务添加任何东西。它只完成非常有限的差 错检验。 u d p 的优点:非常简单,且开销最小。若一个进程想发送一个很短的报文而不 关心可靠性,使用u d p 要比使用t c p 简单的多。 对通信来说,必须定义以下4 点: ( 1 ) 本地主机; ( 2 ) 本地进程: ( 3 ) 远程主机; ( 4 ) 远程进程。 哈尔滨r 程人学硕士学位论文 本地主机和远程主机用i p 地址来定义。而定义进程用端口号,一个0 - - 6 5 5 3 5 之间的整数。 端口号分为3 类:熟知端口;注册端口和动念端口( 也叫短暂端口) 。 u d p 的熟知端口有:e c h o 协议在端口7 ;u s e r 协议在端口1 l ;d a y t i m e 协议 在端口1 3 ; n a m e s e v e r 协议在端口5 3 :b o o t p s 协议在端口6 7 ,b o o t p c 协议在 端口6 8 ;t f t p 协议在端口6 9 ;s k n p 协议在端口1 6 1 用户数据报的帧格式: 源端f _ | 号1 6 b i t 目的端f i 号l6 b i t 总长度l6 b it 检验和i 6 b i t 数据 源、目的端口号:1 6 b i t ,0 - - 6 5 5 3 5 。 长度:1 6 b i t ,用户数据报首部加数据的总长度。最小为8 字节。此时只有首 部而无数据。最大长度为0 - - 6 5 5 0 7 ( 6 5 5 3 5 2 0 8 ) 字节( 2 0 字节i p 首部,8 字 节u d p 首部,6 5 5 3 5 为i p 数据包最大长度限) 检验和:检验出现的差错。 u d p 的检验和与i p 的检验和不同。它包括3 部分:伪首部,u d p 首部以及应 用层来的数据: 伪首部 片部 数据 3 2 位源i p 地址 3 2 位目的i p 地址 仝08 位协议( 1 7 )i 6 位i j d p k 度 源端l 】地址i 6 r目的端l j 地址16 化 u d p 总妖度1 6 位检验和1 6 他 数据必需进行填充使数据是l6 r 的倍数 若检验和不包括伪首部。用户数据报也可能安全和正确。但如果i p 首部受 到损伤。它可能被错误交付到主机或协议( 协议字段为1 7 。若传输中此值改变则 丢弃此分组) 。 哈尔滨j :程人学硕十学位论文 2 4i p 协议 i p 协议是t c p i p 协议族使用的传输机制。它是网络层的主要协议。要上 i n t e r n e t 网,此层协议必不可少,下面简单介绍一下此协议。 i p 协议是一种不可靠无连接数据报协议一尽最大努力服务。即不提供差错检 验或跟踪。每一个分组独立进行处理。每一个分组使用不同的路由传到目的站。 数据报可能不按顺序到达。可能丢失,可能受损。 i p 层分组称为数据报,是一个变长分组。它由2 部分组成: 首部数据 其中,首部由两部分组成:固定部分+ 可变部分。固定部分长度为2 0 字节, 可变部分由选项组成,最长为4 0 字节。 i p 数据报首部格式: 景 h l e n 服务类型总长度 4 b i t8 b i t1 6 b i t 标识标志分片偏移 1 6 b i t3 b i t1 3 b i t 生存时间协议检验和 8 b i t8 b i t1 6 b i t 源i p 地址 目的【p 地址 选项 v e r :版本。一般为4 ,所有字段按4 版本来解释。若目的机器使用其它版本 则应丢弃数据报,而不错误地解释数据。 h l e n :首部长度。定义数据报以4 字节计算的总长度。没有选项时首部长 度为2 0 字节,所以此字段为5 ( 5 4 = 2 0 ) 。它最大为1 5 ( 1 5 4 = 6 0 ) 。 服务类型:定义路由器如何处理此数据报。此8 位的含义依次为: 76 5 432l0 d o d 2 :优先字段,遇到问题时根据优先级处理数据报。 哈尔滨i :程大学硕士学位论文 d 、t 、r 、c :合称t o s 字段,每个数据报中这4 位中只能有一个为1 。o 0 0 0 代表“正常( 默认) ”;0 0 0 1 代表“最小代价”:0 0 1 0 代表“最高可靠性”;o 1 0 0 代 表“最大吞吐量”;1 0 0 0 代表“最小延时”。 选择的原则为:交互式活动属于需要立即引起注意的活动和需要立即响应的 活动,所以需要最小延时;发送成块数据需要最大吞吐量;管理活动需要最高可 靠性:后台活动需要最小代价。 总长度:以字节计的数据报总长度( 首部+ 数据) 。i p 数据报长度限制为2 ”一 1 。所以上层数据长度限制为2 一1 一( 2 0 6 0 ) 。 标识:用来标识一个从源主机发出的数据报。i p 协议用一个计数器标识数据 报。当i p 发送数据报时,将该计数器的当日口值复制到标识字段中,并将计数值+ 1 。这个标识与源i p 地址唯一定义这个数据报。 标志:3 位组成。其含义依次为: j 卫 d :可否分片标志。l 表示不允许机器将该数据报分片。若不分片就无法将此 数据报通过任何可用的物理网络进行转发,该数据报丢弃。同时向源站发i c m p 差错报文。0 表示必要时可分片。 m :该数据报是否还有其他片标志。l 表示此数据报不是最后的分片。o 表示 此数据报是最后的分片或唯一分片。 分片偏移:表示分片在整个数据报中的位置。以8 字节为度量单位。故1 3 位。 将数据报进行分片的主机或路由器必须这样选择每一个分片的长度,即第一介字 节数应能被8 除尽。若对一个已分片的数据报再进行分片,分片偏移

温馨提示

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

评论

0/150

提交评论