(电路与系统专业论文)ethernet+over+usb的原理及其实现.pdf_第1页
(电路与系统专业论文)ethernet+over+usb的原理及其实现.pdf_第2页
(电路与系统专业论文)ethernet+over+usb的原理及其实现.pdf_第3页
(电路与系统专业论文)ethernet+over+usb的原理及其实现.pdf_第4页
(电路与系统专业论文)ethernet+over+usb的原理及其实现.pdf_第5页
已阅读5页,还剩52页未读 继续免费阅读

(电路与系统专业论文)ethernet+over+usb的原理及其实现.pdf.pdf 免费下载

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

文档简介

敝 摘要 在手持设备中进行同步一般可以通过各种串口,网卡,红外以及u s b 接口等。其中,u s b 以快 速、同步、动态连接且价格低廉,越米越受到欢迎。随着u s b 的广泛应用,在嵌入式l i n u x 系统中 越米越多地增加了对u s b 的支持。随着网络功能的逐渐普及、强大,通常的做法是在底层将u s b 接 口模拟成一个以太网接口,实现基于e t h e r n e t 的网络连接。从而在上层进行同步数据,实现文件传 输以及文件备份等。涉及的理论就是e t h e r n e t0 v e ru s b 。 2 0 0 2 年初,英特尔公司推出了基于英特尔x s c a l e 技术的新型处理器。英特尔x s c a l e 内核是和 a r m 架构v 5 t e 结构兼容的微处理器。它集成了多种微结构的特点,从而能够完成更高的性能要求。 这样用户可以根据自己的需求进行配置,实现自己特定的功能。其内部有u s bd e v i c e ( u s 肋) 的控 制器,不需要额外的硬件支持,使得在硬件模块的设计上大大地简化,通过它我们可以将手持产品 与p c 通过u s b 连接线进行同步数据,实现文件传输以及文件备份等。 根据上面的论述,本课题的研究:j :作选择基于i n t e lx s c a l ep x a 2 5 5 嵌入式处理器的硬件平台, 综合嵌入式l i n u xk e r n e l2 4 1 8 的操作系统。_ i :作的主要内容是在底层将u s b 接口模拟成以太网 接口,即在普通的u s b 接口上传送i p 数据包,实现基于e t h e r n e t 的网络连接,从而在上层进行数 据同步。由于上层的同步:j :具直接通过f t p 协议进行传输数据;而传输层与网络层协议_ t c p i p 协议在l i n u x 内核中已经得到很好的支持。冈此本课题所要做的i :作只需要最底层的实现,即实现 u s b 总线接口的驱动、实现将u s b 模拟为以太网功能的设备驱动以及实现热插拔的驱动,并提出相 应的优化方案及实现。在应用层中实现文件的同步和备份。 主要详细分析有介绍了u s b l 1 协议规范、e t h e r n e t 协议、硬件电路设计、驱动中具体进行数 据传输的实现、热插拔的实现以及设备方的配置,并提出相应的优化方案及实现。 目前,本文所描述的完善和优化的:l :作已全部完成,并且所移植的u s b 驱动已经能够在硬件平 台上运行起来。经初步测试,该同步功能运行稳定。未来经过不断地改进和优化,将能够开发出一 个高可靠性的数据同步功能。 关键字:嵌入式l i n u xp x a 2 5 5e t h e m e to v e ru s b同步 敝 a b s t r a c t t h e r e f o r e ,d a t as y n c h r o n i z a t i o n a b i l i t yi sv e r yi m p o r t a n ti ne m b e d d e ds y s t e m w i t ht h ew i d e a p p l i c a t i o n so fu s b ,u s bh a sb e e ns u p p o r t e dm o r ea n dm o r ei ne m b e d d e dl i n u x w i t ht h ep o p u l a r i z a t i o n , u s bi n t e r f a c ec a nb es i m u l a t e dae t h e m e ti n t e r f a c et or e a l i z en e t w o r kc o n n e c t i o na n ds v n c h r o n i z a t i o ni n a p p l i c a t i o nl a y e r a n dt h ei n v o l v e dt h e o r yi se t h e m e to v e ru s b i nt h ee a r l yo f2 ( ) 0 2 ,i n t e la n n o u n c e dt h en e wc p u sb a s e do nx s c a l e t mt e c h n o l o g y t h ei n t e l x s c a l e c o r ei sa na r mv 5 t ec o m p l i a n tm i c m p m c e s s o r i th a sb e e nd e s i g n e df o rh i 曲p e r f o r m a n c ea n d l o w p o w e r i t i n c o 印o r a t e s a ne x t e n s i v el i s to fa r c h i t e c t u r ef e a t u r e st h a ta l l o w si tt oa c h i e v eh i 2 h p e 晌丌n a n c e t h i sr i c hf e a t u r es e ta l l o w sp r o g r a m m e r st os e l e c tt h ea p p r o p r i a t ef e a t u r e st h a to b t a i nt h eb e s t p e 响r m a n c ef o rt h e i ra p p l i c a t i o n t h e r ei su s bd e v i c ec o n t r o l i np x a 2 5 5t h r o u g hw h i c hw ec a nc o n n e t t h eh p ca n dp cw i t hu s bd a t ai i n et os v n c h r o n i z ed a t a t h ea i mo ft h er e s e a r c hi st or e a l i z et h ed a t as v n c h m n i z a t i o nb a s e do ne t h e m e to v e ru s bw h i c h b a s e do nt h ei n t e lx s c a l ep x a 2 5 5h a r d w a r ep l a t f o ma n dl i n u xk e m e l2 4 18o p e r a t i o ns v s t e m b e c a u s e i na p p l i c a t i o nl a y e rt h es y n c h r o n i z a t i o nt o o lu s ef t pp r o t o c o lt ot r a n s m i td a t a ,a n dt h et c p p r o t o c 0 1h a s b e e ns u p p o r t e dw e l li nl i n u xk e m e li nt h i sr e s e a r c hw h a tw eh a v et od oi st or e a l i z et h eb o t t o m 1 a y e r s t h ep h y s i c a ll a y e ra n dt h ed a t a1 i n k1 a y e r t h ep a p e rd e t a i l e d l ya n a l y z e st h eu s b1 1p m t o c o l ,e t h e m e tp r o t o c o l ,h a r d w a r ec i r c u i t ,t r a n s m i s s i o n o fd a t a ,r e s o l u t i o nf o rh o t p l u ga n dt h ec o n f i g u r a t i o no v e rh o s tf c ,a n db r i n g sf o r w a r dt h ep r o b l e m so ft h e c u r r e n td e s i g na n dt h e ng i v e se a c ho n ear e s o l v e n t a ut h ew o r kd e s c r i b e di nt h ep a p e rh a v eb e e nf i n i s h e dn o w 7 i h m u g hs i m p l et e s t ,t h eu s bd r i v e rh a s s u c c e e d e di nm n n i n gs t a b l yo nt h ed e v e l o p m e n tp l a t f o 丌n t | h es y s t e ms h o u l db ea h i g h r e l i a b l ed a t a s y n c h r o n i z a t i o nb yk e e p i n go p t i m i z i n g k e y w o r d s :e m b e d d e dl i n u x p x a 2 5 5e t h e m e to v e ru s b s y n c h r o n i z a t i o n u 学位论文独创性声明 本人声明:所呈交的学位论文是我个人在导师指导下进行的研究: 作及取得的研究成果。尽我 所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写过的研究 成果,也不包含为获得东南大学或其他教育机构的学位或证书而使用过的材料。与我一同:i :作 的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示了谢意。 签名:竭蛆日期:趁:i :埤 关于学位论文使用授权的说明 东南大学、中国科学技术信息研究所、国家图书馆有权保留本人所送交的学位论文 的复印件和电子文档,可以采用影印、缩印或其他复制手段保存论文。本人电子文 档的内容和纸质论文的内容相一致。除在保密期内的保密论文外,允许论文被查询 和借阅,可以公布( 包括刊登) 论文的全部或部分内容。论文的公布( 包括刊登) 授权东南大学研究生院办理。 鞭撇 1 课题研究背景 绪言 在日常工作和生活中,人们需要多个计算设备或信息终端来处理自己:i :作和生活中的事 务,并记录和更新各种信息。为了保持:i :作和生活的连续性,需要在这些设备上存储相同的 信息,并把某个设备上信息的改动及时的反映到其他设备,以便在不同的终端上都可以继续 先前的工作。此时,如何将这些改动及时地反映到: 作用p c 机以及其它终端设备上的操作 就叫做“同步操作”。特别是在手持终端设备中,同步功能显得更加重要。在手持设备中进行 同步一般可以通过各种串口,网卡,红外以及u s b 接口等。 其中,u s b 以快速、同步、动态连接且价格低廉,越来越受到欢迎。通用串行总线( u s b ) 是一种快速而灵活地连接配件与计算机j 作站的接口,随着大量支持u s b 的个人电脑的普 及,u s b 逐步成为p c 机的标准接口已经是火势所趋。在主机( h o s t ) 端,最新推出的p c 机j l 乎1 0 0 支持u s b ;而在外设( d e v i c e ) 端,使用u s b 接口的设备也与日俱增,例如数码相机、 扫描仪、游戏杆、磁带和软驱、图像设备、打印机、键盘、鼠标等等。 究其原因,u s b 主要优点是1 1 : 速度快。速度快是u s b 最突出的特点之一,现在u s b l 1 接口最高的传输速率可以 达到1 2 m b ,s ,可以说在外部设备接口之中已经是屈指可数的。 可以热插拔。使用u s b 接口可以非常方便地带电插拨各种硬件,而不用担心硬件 是否有损坏。u s b 设备也不会有i r q 冲突的问题,因为它会单独使用自己的保留 中断,所以不会使用电脑有限的资源,有了u s b 这样的真正的”即插即用”不用再 为i r q 冲突烦心了。 自供电。u s b 设备不再需要用单独的供电系统,而使用串口等其它的设备都需要独 立电源。u s b 接口内置了电源,可以向低压设备提供5 v 的电。 标准统一。 通过u s b 接口进行同步通信已是当今手持终端产品的主要途径,在嵌入式“n u x 中对 u s b 的支持主要有编写内核模块解析u s b 总线上高层协议、通过串行端口进行通讯以及基 于u s b 模拟以太网进行通讯。只有第三种方法在可行性、传输速率以及扩展应用方面,都 能达到很好的效果。第三种方法涉及的理论就是e t h e m e t0 v e ru s b 。随着网络功能的逐渐 普及、强人,通常的做法是在底层将u s b 接口模拟成一个以太网接口,即在普通的u s b 接 口上传送口数据包,实现基于e t h e m e t 的网络连接。从而在上层进行同步数据,实现文件 传输以及文件备份等,从而有更高的速度以及更好的弹性度。 2 0 0 2 年初,英特尔公司推出了基于英特尔x s c a l 一技术的新型处理器。英特尔x s c a l e 内核是和a r m 架构v 5 t e 结构兼容的微处理器。它集成了多种微结构的特点,从而能够完 成更高的性能要求。这样用户可以根据自己的需求进行配置,实现自己特定的功能。其内部 有u s bd e v i c e ( u s b d ) 的控制器,不仅为实现e t h e m e t0 v e ru s b 提供了条件,而且在 硬件模块的设计上也大大地简化。通过它我们可以将手持产品与p c 通过u s b 连接线进行 敝 同步数据,实现文件传输以及文件备份等。 课题主要研究工作 本课题的研究:l :作主要是基于u s b 上建立e t h e r n e t 从而在应用层使用f t p 传输协议实 现数据同步,在实现过程中的具体i :作如下: 由于嵌入式设备的处理器支持u s b l 1 协议规范,首先要熟悉并了解u s b l 1 的总线 协议、数据流模型、数据的封装以及枚举和配置过程。 基于u s b l 1 协议规范,利用目标板p x a 2 5 5 微处理器白带的u s bc l i e n t 控制器,在 嵌入式a r ml i n u x 操作系统中实现u s b 总线接口的驱动、实现将u s b 模拟为以太网功能 的设备驱动以及实现热插拔的驱动,并提出相应的优化方案及实现。 在q t o p i a 1 7 中实现嵌入式掌上设备和p c 之间的数据同步,包括文件和个人信息的 同步,以及文件的备份等。 对同步程序功能的性能测评。 3 课题主要内容 根据课题所涉及到的主要研究i :作,论文总体可以分为五部分,共六章:第一部分首先 介绍了e t h e m e to v e ru s b 的原理;第二部分介绍了u s b l 1 协议以及e t h e m e t 协议的具体细 节;第三部分介绍本课题的软硬件研究平台以及使用的一些软件编译调试:具;第四部分是 论文的主体部分,详细阐述了e t h e m e to v e ru s b 的总体实现,包括硬件电路设计与实现、 软件驱动设计与实现、优化工作以及应用层软件实现等;第五部分是系统评测与技术展望。 具体篇章安排如下: 第一章,介绍e t h e m e to v e ru s b 的原理。 第二章,本章内容主要涉及有关u s b l 1 协议的理论基础,其中包括u s b l 1 的概述和 详细介绍。 第三章,本章主要涉及以太网( e t h e m e t ) 协议的理论基础知识,主要包括e t h e m e t 的 概述和详细介绍。 第四章,介绍本课题的实现环境,包括硬件环境和软件环境。 第五章,本章内容主要涉及e t h e m e t0 v e ru s b 的设计及实现工作,以掌上设备客户端 为例,主要是应用程序方面最终实现数据的同步。本章涉及的内容主要有硬件电路设计与实 现、软件驱动设计与实现,优化工作以及应用程序层的实现。 第六章,实验结果及性能测评。 e t h e m e to v e ru s b 实现的平台:服务器端为w i n d o w s 2 0 0 0 ;客户端为嵌入式u n u x ( 内 核版本为2 4 1 8 ) ,采用q t e m b e d d e d 和q t o p 队设计界面。本文主要内容是嵌入式l i n u x 环境下e t h e m e to v e ru s b 的原理和实现,最终在上层应用程序实现数据的同步。 2 敝 第一章e t h e r n e to v e ru s b 的原理 一般地,有三种方法给运行“n u x 操作系统的嵌入式系统增加u s b 支持: ( 1 ) 一些设备采用专门编写的内核模块解析标准u s b 总线上通行的错综复杂的高 层协议,相应的u s b 主机定制驱动和应用程序来完成连接 ( 2 )有些基于“n u x 的设备把总线当作一种简单的运行在主机上的点对点串行连接 使刚;而其外在表现则仿佛是在通过一种典型的串行端口进行通信 ( 3 ) 另有一些设备把u s b 接口模拟成以太网络接口,来完成一些在以太网接口上执 行的应用,当然还要使用专门的主机驱动实现。 1 1e t h e r n e to v e ru s b 的原理 第一种方法为了实现通信,除了必要的硬件驱动,还要编写额外的高层协议;第二种方 法,虽然模拟一个串行连接,但是受限的传输速率以及单一的应用,人大限制了其功能:只 有第三种方法,在可行性、传输速率以及扩展应用方面,都能达到很好的效果。 第三种方法涉及的理论,称为e t h e m e t o v e r u s b ,完成将u s b 接口模拟为以太网络接 口,实现基于e t h e m e t 的网络连接,从而在上层应用程序进行数据及文件的同步,同步所遵 循的协议在本课题中使川f t p 协议。 通常,当谈起对等网络,我们会谈到t c m p 采,l _ j 的主要的局域网技术以太网。尽 管有时存在着传输媒质的不同,但是,想要视某种网络为“模拟以太网”,其网络协议一般 具备以下要求:( 1 ) 使用e e8 0 2 2 的数据封装及地址标准( 2 ) 各方属于平等地位,不 存在主从方( 3 ) 各自分散独立的处理模式。通过下面的分析,可以看出这些要求不难符合。 采用e t h e m e to v e ru s b ,网络层以及传输层采川了已经非常成熟的t c p i p 协议,也就 意味着我们无需编写在链路层之上的高层协议;而且许多应用层上的程序,包括f t p ,p i n g 等都可以直接使用。 冈此,本课题中需要关心的是物理层以及数据的链路层。物理层决定数据传输的媒质, 在物理层遵循u s b l 1 协议规范传送比特流;而数据的链路层则用来定义数据帧以及传输媒 质的控制,建立点到点链路,构成帧,封装e t h e m e t 数据包。 本质上通信双方还是通过u s b 总线建立连接以及传输数据,用u s b 作物理媒介,来虚 构一个以太网设备进行仿真,并赋予该设备一个唯一的m a c 地址。一旦创建后,其对应的 网络接口便被指定一个i p 地址,否则作为通常的以太网硬件对待。当被指定一个i p 后,上 面所说的三个要求也就满足了。u s b 主机连上后,模拟模块便能使u s b 设备“看到” i n t e m e t ( 如果存在i n t e m e t 的话) ,p 州g 测其口地址,甚至“谈论”d h c p 等。简言之,任 何在实际的以太网接口上运行的应用将不折不扣地在模拟以太网的接口上得到实现,冈为应 用层不能分辨出其正在使用的不是实在的以太网硬件,通过u s b 媒质接收的数据将传输到 模拟的以太网设备中,最终数据封装成以太网封装格式,使得从整个系统看来,好像是一个 以太网络设备。 3 东南大学硕士论文 1 2e t h e r n e to v e ru s b 的构架 与普通的e t h e m e t 或者串口协议不同的是,这里e t h e m e to v e ru s b 分层结构实现。u s b 本身被看作是实现普通目的的计算机总线,对其支持被分为既包括d e v i c e ( 设备端) 义包括 h o s t ( 桌面p c 端) 的两层。u s b 总是在主机的控制之下启动b u s 总线的数据传输的,因此, 在u s b 主机( 桌面p c ) 与u s b 设备之间也存在分层的互连关系,e t h e m e t0 v e ru s b 的构 架如下图1 1 所示: l o g i c a ln e t w o r kc o n n e c n o n n e t w o r ka p p l i c a t i o n _ _ - - 一l - 。呻 n e t w o f l ( a p p l i c a t i o n 0 sn e t w o r ks t a c ko sn e t w o r ks t a c k l o g i c a lc o n n e c t i o n u s bn e t w o r kf u n c t i o nd r i v e r_ _ - 一一啼u s b 似o r ka a s sd r i v e r o su s bs u p p o r to su s bs u p p o r t p h y s i c a lc o n n e c t i o n u s bb u si n t e r f a c ed r i v e ru s bh o s tc o n t m l l e rd d v e r 图1 1e t h e r n e to v e ru s b 的构架犯1 该图展示了u s b 主机和u s b 设备之间更深层次的视图关系。左端是掌上设备d e v i c e 端的驱动构架,右端为桌面p ch o s t 端驱动构架,由于u s b 协议的不对称,各层的名称也 不相同。 在如图所示的分层结构中,对u s b 的所有访问是由主机来控制的,也就是说,只有在 主机允许访问的时候,u s b 设备才可以获得对总线的访问。对u s b 的驱动就是建立在上述 的分层结构之上的软件实现。 1 2 1u s b 主机驱动结构 对于h o s t 端为微软的w i n d o w s 操作系统时,u s b 是做为即插即用设备支持的,对于多 数简单设备的u s bh o s t 控制器( u h c i 和o h c i ) 的驱动支持已经被构建到操作系统当中, 当u s b 设备被插入时,即插即用组件会查询和加载相应的驱动。在某些情况下,系统会提 示用户插入驱动软盘重新安装相应驱动程序,本课题中桌面p c 端采用的是m c c i 公司评估 版u s bh o s td r i v e r ,能够较好实现p c 端u s bn e t w o r k i n g 的支持。 m c c i 提供的驱动包主要为两部分: m c c ic d ce t h e m e td r i v e r s ( w d m ) m c c iu s bc o m p o s i t ed e v i c e 如图1 2 所示是m c c in e t w o r k i n g 驱动构架 3 】,该驱动实现对u s bn e t w o r k i n g 的支持。 4 东南人学硕上论文 图1 2 u s b h o s t 驱动构架嘲 整体上采用的是分层结构,主要由n d i s ,w d m ,u s be t h e m e t ,u s b d i 组成。n d i s ( n e t w o r kd e v i c ei n t e r f a c es p e c i f i c a t i o n ) 为w i n d o w s 系统下的网络驱动规范,是提供给应用 层的网络驱动接口。w d m ( w i n d o w sd r i v e rm o d e l ) 是w i n d o w s 操作系统提供的驱动程序 模型,可以支持的总线类型有p c i ( p e r i p h e r a lc o m p o n e n ti n t e r c o n n e c t ) 、动态式即插即用串 行i 0 总线( 如u s b 币1 1 ! e e1 3 9 4 ) 、s c s i ( s m a l lc o m p u t e rs y s t e mi n t e r f a c e ) 、n d i s ( n e t w o r k d r i v e ri n t e r f a c es p e c m c a t i o n ) 以及远程式n d i s ( r n d i s ) 。m c c i 通过w d m 技术提供u s b e t h e m e t 驱动程序,并封装u s b d i ( u s bd e v i c ei n t e r f a c e ) 实现与客户端u s b 连接支持。 1 2 2u s b 设备驱动结构 对应的在l i n u x 目标( 设备端) 这一方,也就是本课题需要实现的。就是开发l i n u xu s b 设各端以及其他的一些扩展功能。需要明确的是,实现对一个典型的设备平台的支持需要一卜 面几点2 1 : u s b 总线接口驱动与设备平台兼容,即提供u s b 总线接口驱动; u s b 网络功能驱动能够执行需要的协议,即提供网络功能驱动; 加载w i n d o w s 主机端的驱动,即u s bh o s td r i v e r ; 需要指出的是网络功能驱动是指目标端也就是设备端的驱动。提供u s b 总线接口驱动 实现了u s b 总线的主机和设备端的互连;提供网络功能驱动建立了能够在普通的u s b 接口 上传送i p 数据包,从而实现了基于e t h e m e t 的网络连接。利用目标板微处理器白带的u s b c l i e n t 控制器实现,不需要额外的硬件支持。本课题的研究:i :作主要同绕这两点展开。 由于在本课题中涉及u s b 协议规范以及e t h e m e t 协议,下面两章对u s b 协议以及 e t h e m e t 协议进行详细的介绍。 5 矧二敝 第二章u s b 简介 1 9 9 4 年,一个由四个行业伙伴( c o m p a q 、i n t e l 、m i c r o s o f t 和n e c ) 组成的联盟开始制 定u s b 协议。该协议最初的目的是将p c 与电话相连并提供容易扩展和重新配置的i 0 接 口。1 9 9 6 年1 月,发表了u s b 规范的第一个版本,1 9 9 8 年9 月发表了后续版本( 版本1 1 ) 。 这个规范允许1 2 7 台设备同时连接到一起,总的通信带宽限制为1 2m b p s 。后来,义有三 个成员( h e w l e t t p a c k a r d 、l u c e n t 和p h i l i p s ) 加入了这个联盟。2 0 0 0 年4 月,发表了u s b 规范的2 0 版本,它支持高达4 8 0h f b p s 的传输率。今天,u s b 在高速( 视频、图像、储存) 和全速( 音频、宽带、麦克风) 数据传输应用中起了关键作用。它还使各种低速设备( 键盘、 鼠标、游戏外设、虚拟现实外设) 连接到p c 上【5 j 。 考虑到本文的设计与实现是基于p x a 2 5 5 处理器,p x a 2 5 5 支持u s b l 1 协议规范,所以 本文对u s b 的介绍以u s b l 1 协议规范为主。 2 1u s b 简述 2 1 1u s b 系统的描述 u s b 是u n i v e r s a ls e r i a lb u s 的简写,即通用串行总线。它是一种机外总线,在该总 线上可以连接高达1 2 7 个外同设备,可以支持主机和设备之间的同步或异步的多数据流和多 消息流数据传输。 u s b 系统一般由三部分组成,分别为u s b 设备、u s b 主机和u s b 互连,对它们的简单的 说明如下: 首先,u s b 设备可分为h u b ( 集线器) 和f u n c t i o n ( 功能) 两类。h u b 提供到u s b 的附 加连接点,功能f u n c t l 0 n 为主机系统提供附加的性能,如i s d n 连接,扬声器等。换句话也 可以说:功能f u n c t i o n 是一种可发送和接收u s b 数据、可实现某种用途的u s b 设备,并且 这种u s b 设备具有标准的u s b 接口。 另外,任何一个u s b 系统只有一个主机,到主机系统的u s b 接口控制器称为主控制器, 它负责向上与主总线( 如p c i 总线) 相连,向一卜可提供一个或多个连接点。 最后,u s b 互连指的是u s b 设备与主机的连接和通信方式,它包括总线拓扑结构、内层 关系、数据流模型和u s b 调度表。一个比较常见的结构如下图所示: h u b ,f u n ch u b ,f u n ch u b ,f u n c f u n cf u n cf u n c f u n cf u n c h u b 图2 1 桌面计算机的u s b 互连 6 鞭瞅 具体到嵌入式系统中,可以把互连方式分为一下两种:h p c 与p c 机的互连、 d e v i c e t o d e v i c e 互连,这也是下面要建立的同步:i :具模型最初要考虑的,要这两种之间 选取适合的模型。 图2 2 皿c 与p c 机的互连 在图2 2 中展示了h p c 作为设备与p c 机互连的连接方式,这和我们平时的计算机外设 连接方式是相同的。注意到在这种连接方式中,h p c 是不可以与c a m e r a 、k e y b o a r d 等设备 直接互连的。 i h p c i 王 i c a m e r a i h p c i 工 i 脚b 一 图2 3d e v i c e t o d e v i c e 互连 i a u d 。p a y e r 工 l a u a 州a v e r 在图2 3 中揭示的则是另外一种互连方式。这种方式目前在嵌入式系统中用得尤为,“ 泛,也即0 t g ( 0 n t h e g o ) 方式,它的出现使得h p c 和c a m e r a 、k e y b o a r d 等设备直接互连成 为可能。 2 1 2u s b 电气特性 u s b 传送信号和电源是通过一种四线的电缆,图1 4 中的两根线是用于发送信号。存在 两种数据传输率晦1 : u s b 的高速信号的比特率定为1 2 m b p s ; 低速信号传送的模式定为1 5 m b p s ; 相比于另一种模式,低速模式需要更少的e m i 保护。两种模式可在用同一u s b 总线传输 的情况下自动地动态切换。因为过多的低速模式的使用将降低总线的利用率,所以该模式只 支持有限个低带宽的设备( 如鼠标) 。时钟被调制后与差分数据一同被传送出去,时钟信号被 转换成n r z i 码,并填充了比特以保证转换的连续性,每一数据包中附有同步信号以使得收 方可还原出原时钟信号。 u s b 线缆由四根线组成,其中一根是电源线v b u s ,一根是地线g n d ,其余两根是用 于差动信号传输的数据线( d + ,d ) 。将数据流驱动成为差动信号来传输的方法可以有效提高 信号的抗干扰能力( e m i ) 。在数据线末端具有终端电阻,对丁h u b 来判别所连接的外设是 高速外设或是低速外设,只要检测在外设被初次连接时,d + 或d 上的信号是高或是低即可。 因为对于u s b 协议来讲,要求低速外设在其d 一端并联一个7 5 k q 的接地电阻,而高速外设 则在d + 端接同样的电阻。在加电时,根据低速外设的d 线和高速外设的d + 线所处的状态, 7 敝 h u b 就很容易判别器件的种类,从而为器彳q :配置不同的信息。为提高数据传输的可靠性、 系统的兼容性及标准化程度,u s b 协议对用丁u s b 的线缆提出了较为严格的要求。如用于 高速传输的u s b 线缆,其最大长度不应超过5 米,而用于低速传输的线缆则最人长度为两 米,每根数据线的电阻应为标准的9 0 q n 引。 v b u s d + d g n d 2 1 3u s b 电源 图2 4u s b 的电缆 v b u s d + d g 电源规范也是u s b 总线中很重要的一部分内容,主要包括两方面: 电源分配:即u s b 的设备如何通过u s b 分配得到由主计算机提供的能源; 电源管理:即通过电源管理系统,u s b 的系统软件和设备如何与主机协调:l :作。 2 1 3 1 电源分配 电源分配j h = | 来处理u s b 设备如何使用主机通过u s b 总线提供的电源。u s b 总线的电 缆有四根导线,一对标准尺寸的双绞线和一对标准尺寸的电源线。u s b 设备既可以依赖于 电缆供电,也可以自备电源,因而u s b 设备也可以分为总线供电设备( b u s p o w e r e dd e v i c e ) 和自我供电设备( s e i f _ p o w e r e dd e v i c e ) 。那些完全依靠u s b 线缆来提供电源的器件被称为总 线驱动器件,而白带电源的器件则被称为自驱动外设。需要注意的是,当一个外设初次连接 时,器件的配置和分类并不使j h _ = i 外设自带的电源,而是通过u s b 线缆提供的电源米使外设 处于p o w e r e d 状态。端设备应位于电缆的尾部。在每个端口都可检测终端是否连接或分离, 并区分出高速,或低速设备。 2 1 3 2 电源管理 电源管理用来处理u s b 系统软软件和设备如何适应主机上的电源管理系统。u s b 主机 有一个独立于u s b 的电源管理系统,u s b 系统软伺:与主机电源管理系统之间的交互作h = | 米 共同处理诸于挂起或恢复这样的系统电源事件。 2 1 4u s b 总线协议 u s b 总线属一种轮讯方式的总线,主机控制端口初始化所有的数据传输。每一总线执行 动作最多传送三个数据包陆1 。按照传输前制定好的原则,在每次传送开始时,主机控制器发 送一个描述传输运作的种类、方向,u s b 设备地址和终端号的u s b 数据包,这个数据包通常 称为标志包( t o k e np a c k e t ) 。u s b 设备从解码后的数据包的适当位置取出属丁自己的数据。 数据传输方向不是从主机到设备就是从设备到主机。在传输开始时,由标志包来标志数据的 8 一敝 传输方向,然后发送端开始发送包含信息的数据包或表明没有数据传送。接收端也要相应发 送一个握手的数据包表明是否传送成功。发送端和接收端之间的u s b 数据传输,在主机和设 备的端口之间,可视为一个通道。存在两种类型的通道:流和消息。流的数据不像消息的数 据,它没有u s b 所定义的结构,而且通道与数据带宽、传送服务类型,端口特性( 如方向和 缓冲区人小) 有关。多数通道在u s b 设备设置完成后即存在。u s b 中有一个特殊的通道 缺省控制通道,它属于消息通道,当设备一启动即存在,从而为设备的设置、查询状况和输 入控制信息提供一个入口。 事务预处理允许对一些数据流的通道进行控制,从而在硬件级上防止了对缓冲区的高估 或低估,通过发送不确认握手信号从而阻塞了数据的传输速度。当不确认信号发过后,若总 线有空闲,数据传输将再做一次。这种流控制机制允许灵活的任务安排,可使不同性质的流 通道同时正常工作,这样多种流通常可在不同间隔进行:i :作,传送不同火小的数据包。 2 2u s b 数据流模型 2 2 1 实现者的视图 u s b 提供了在一台主机和若干台附属的u s b 设备之间的通信功能,从终端用户的角度看 到的u s b 系统,可简单地用图2 5 表示: 图2 5u s b 主杌臌备的简单模型 但在实际的实现上,具体的系统要比这复杂,不同层次的实现者对u s b 的有不同要求, 这使得我们必须从不同的层次观察u s b 系统。u s b 系统提出了一些重要的概念和情况米支持 现代个人计算机所提出的可靠性要求,所以u s b 的分层理解是必须的。它能使不同层次的实 现者只关心u s b 相关层次的特性功能细节,而不必掌握从硬件结构到软件系统的所有细:1 ,。 u s b 的这种层次结构如图2 6 所示: 物理设备 i _ _ _ 实际通信流 逻辑通信流 二二二 需实现的区域 图2 6u s b 需实现的区域5 】 9 敝 各层次的具体细节将在以后逐步介绍,特别地,有四个层次的实现是较为集中的: u s b 物理设备( u s bp h y s i c a ld e v i c e ) :u s b 上的一种硬件,可运行一些用户程序。 客户软件( c l i e n ts o f t w a r e ) :为一个特定的u s b 设备而在主机上运行的软件。这种 软件由u s b 设备的提供者提供,或由操作系统提供。 u s b 系统软件( u s bs y s t e ms o f t w a r e ) :此软件用于在特定的操作系统中支持u s b , 它由操作系统提供。与具体的u s b 设备无关,也独立于客户软件。 u s b 主机控制器( u s bh o s tc o n t r 0 1 1 e r ) :总线在主机方面的接口,是软件和硬件的 总和。用于支持u s b 设备通过u s b 连到主机上。 这四个u s b 系统的组成部分在功能上存在相互重叠的部分。为了支持主机与客户之间的 坚同可靠的通信,还需要在后面对这些部分进行细节性描述。 如图2 6 所示,一台主机与一个u s b 设备间的连接是由许多层上的连接组成。u s b 总线 接口层提供了在主机和设备之问的物理连接、发送连接、数据包连接。u s b 设备层对u s b 系 统软件是可见的,系统软件基于它所见的设备层来完成对设备的一般的u s b 操作。应用层可 以通过与之相配合的客户软件向主机提供一些额外的功能。u s b 设备层和应用层的通信是逻 辑上的,对应于这些逻辑通信的实际物理通信由u s b 总线接口层米完成。 为了描述和管理u s b 通信,以下概念很重要: 总线拓朴( b u st o p o l o g y ) :u s b 的基本物理组成、基本逻辑组成,以及各组成部分之 间的相互关系。 通信流模型( c o 衄u n i c a t i o nf l o wm o d e l s ) :描述主机与设备如何通过u s b 通信,以 及通信所州的四种通信类型。 总线访问管理( b u sa c c e s s ) :主机面对大量的u s b 设备的各种通信要求,如何控制、 协调总线的访问。 关于同步传送的考虑:对要求同步传送的设备提供一些特性。 2 2 2 总线拓朴 总线拓朴结构包括四个重要的组成部分。 主机和设备:u s b 系统的基础组成部分。 物理拓朴结构:描述u s b 系统中的各组成部分是如何连接起来的。 逻辑拓朴结构:描述u s b 系统中各种组成部分的地位和作用,以及描述从主机和设备 的角度观察到的u s b 系统。 客户软件层与应用层的关系:描述从客户软件层看到的应用层的情况,以及从应用层 看到的客户软件层的情况。 2 2 2 1u s b 主机 主机的逻辑结构如图2 7 ,包括: u s b 主机控制器( u s bh o s tc o n t r o l l e r ) u s b 系统软件集合:u s b 驱动程序,主机控制器的驱动程序,主机软件 客户软件 1 0 一溉瞰 - _ 实际通信流 逻辑通信流 图2 7 主机的组成 u s b 主机在u s b 系统中是一个起协调作用的实体,它不仅占有特殊的物理位置,而且对 于u s b 以及连到u s b 上的设备来说,还负有特殊责任。主机控制所有的对u s b 的访问。一个 u s b 设备想要访问总线必须由主机给予它使用权。主机还负责监督u s b 的拓朴结构。 2 2 2 2u s b 设备 一个u s b 设备的逻辑结构如图2 8 所示,包括 u s b 总线接口 u s b 逻辑设备 应用层 一- 实际通信流 逻辑通信流 图2 8 物理设备组成 u s b 设备朋于向主机提供一些额外的功能。u s b 设备提供的功能是多种多样的,但面 向主机的接口却是一致的。所以,对于所有这些设备,主机可以用同样的方式米管理它们与 u s b 有关的部分。 为了帮助主机辨认及确定u s b 设备,这些设备本身需要提供用于确认的信息。在某一些 方面的信息,所有设备都是一样的;而另一些方面的信息,由这些设备具体的功能决定。信 敝 息的具体格式是不定的,由设备所处的设备级决定。 2 2 2 3 总线的物理拓朴结构 u s b 系统中的设备与主机的连接方式采用的是星形连接,如图2 9 : 图2 9u s b 物理总线的拓扑 图中的h u b 是一类特殊的u s b 设备,它是一组u s b 的连接点,主机中有一个被嵌入的 h u b 叫根h u b ( r o o th u b ) 。主机通过根h u b 提供若干个连接点。为了防止环状连接,采用星 形连接米体现层次性。这种连接的形状很像一棵树。 用于提供具体功能的设备叫应j l _ j 设备。许多不同功能的设备放在

温馨提示

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

评论

0/150

提交评论