![(电路与系统专业论文)面向虚拟仪器的USB接口设备的访问[电路与系统专业优秀论文].pdf_第1页](http://file.renrendoc.com/FileRoot1/2019-12/14/a2313eb1-c8a4-433f-a94f-47d3998d3dec/a2313eb1-c8a4-433f-a94f-47d3998d3dec1.gif)
![(电路与系统专业论文)面向虚拟仪器的USB接口设备的访问[电路与系统专业优秀论文].pdf_第2页](http://file.renrendoc.com/FileRoot1/2019-12/14/a2313eb1-c8a4-433f-a94f-47d3998d3dec/a2313eb1-c8a4-433f-a94f-47d3998d3dec2.gif)
![(电路与系统专业论文)面向虚拟仪器的USB接口设备的访问[电路与系统专业优秀论文].pdf_第3页](http://file.renrendoc.com/FileRoot1/2019-12/14/a2313eb1-c8a4-433f-a94f-47d3998d3dec/a2313eb1-c8a4-433f-a94f-47d3998d3dec3.gif)
![(电路与系统专业论文)面向虚拟仪器的USB接口设备的访问[电路与系统专业优秀论文].pdf_第4页](http://file.renrendoc.com/FileRoot1/2019-12/14/a2313eb1-c8a4-433f-a94f-47d3998d3dec/a2313eb1-c8a4-433f-a94f-47d3998d3dec4.gif)
![(电路与系统专业论文)面向虚拟仪器的USB接口设备的访问[电路与系统专业优秀论文].pdf_第5页](http://file.renrendoc.com/FileRoot1/2019-12/14/a2313eb1-c8a4-433f-a94f-47d3998d3dec/a2313eb1-c8a4-433f-a94f-47d3998d3dec5.gif)
已阅读5页,还剩60页未读, 继续免费阅读
(电路与系统专业论文)面向虚拟仪器的USB接口设备的访问[电路与系统专业优秀论文].pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
西北大学硕士学位论文 摘要 随着u s b 技术的发展,越来越多的测试测量仪器仪表开始采用u s b 接口与外部通信。但是目前已有的u s b 设备所配备的访阀与控制软件和设 备驱动都是应用级的,用户无法做二次开发使用。而一些常用的开发平台 对于u s b 设备还缺乏比较完善的类似于访问串行r s 2 3 2 设备、并行g p i b 设备及以太网网络设备的通用通信程序模块。 为了能方便地管理和控制u s b 设备,降低应用软件开发难度、减轻工 作量、提高通用性,有必要研究开发出可供用户程序调用的u s b 通用通信 程序模块。因此研究基于虚拟仪器的u s b 设备的访问在实际开发应用中很 有实际意义。 在w i n d o w s 操作系统的v c 十+ 开发平台下,以u s b 摄像头为实验对象, 根据u s b 系统规范,采用w i n d o w s 操作系统i o 设备驱动原理与动态链 接库技术相结合的方法,调用w i n 3 2a p i 函数,开发出了具有u s b 通用通 信程序模块接口的d l l 。然后在虚拟仪器开发平台l a b v i e w 下采用其外 部代码接口机制调用该d l l ,开发出了具有设备查询、打开、关闭、读写 操作功能的u s b 通用通信程序模块组。在此基础上采用同样的方法在 l a b v i e w 环境下开发出了通用的u s b 摄像头通信程序模块组,实现了对 u s b 摄像头的查询、打开、关闭、图像显示、视频帧和图像参数显示及设 置等操作功能。 采用动态链接库技术与l a b v i e w 的外部代码接口机制相结合的方法, 可将l a b v i e w 中暂时无法实现或不易实现的底层硬件访问任务通过外部 代码来实现,从而达到了扩展虚拟仪器能力的目的。从理论上讲,通过此 方法可以控制任何u s b 乃至其它接口的外部设备。本文所做的工作是对 l a b v i e w 在u s b 技术应用方面的尝试,对于开发访问其它u s b 测量设备 的虚拟仪器具有很好的参考价值。 关键词:u s b ;操作系统:设备驱动;动态链接库;虚拟仪器; 珏北大学硕士学位论文 a b s t r a c t a l o n gw i t hu s bt e c h n i q u ed e v e l o p m e n t ,m o r ea n dm o r em e a s u r i n gi n s t r u m e n t sa n d m e t e rh a v ea d o p t e dt h eu s bi n t e r f a c e b u tt h ea c c e s sa n dc e n t r e is o f t w a r eo ft h eu s b e q u i p m e n tw e r eo n l yu s e di na p p l i c a t i o nl e v e l ,a n dt h ec o n s u m e rc a n td ot h es e c o n d d e v e l o p m e n t m a n yd e v e l o p m e n tp l a t f o r m ss t i l ll a c kt h eu n i v e r s a lc o m m u n i c a t i o n p r o c e d u r em o d u l et ot h eu s be q u i p m e n ts i m i l a rt oa c c e s ss e r i a le q u i p m e n t so fr s 一2 3 2o r t h ep a r a l l e lg p i be q u i p m e n ta n dt h ee t h e r n e tn e t w o r ke q u i p m e n t i no r d e rt oc o n v e n i e n t l ym a n a g ea n dc o n t r o lu s bd e v i c e s ,r e d u c ed i f f i c u l t y ,a b a t e w o r k l o a d ,s h o r t e nt od e v e l o pc y c l ea n dr a i s eu n i v e r s a li nt h ed e v e l o p m e n tp r o c e s so ft h e u s be q u i p m e n tc l i e n ta p p l i c a t i o ns o f t w a r e ,i ti sn e c e s s a r yt od e v e l o pa nu s bu n i v e r s a l c o m m u n i c a t i o np r o c e d u r em o d u l et h a tc a nb ep r o v i d e da st h ec a l lo fc o n s u m e rp r o c e d u r e i nt h ev c + + d e v e l o p m e n te n v i o r o n m e n ti nt h ew i n d o w so p e r a t i n g s y s t e m t h e d l lo fu s bu n i v e r s a lc o m m u n i c a t i o nm o d u l e sw e r e d e v e l o p e d ,t a k i n gt h eu s b w e b c a ma st h ee x p e r i m e n t a lo b j e c t ,a c c o r d i n gt ot h eu s bs p e c i f i c a t i o n ,u s i n gt h e m e t h o do ft h ep r i n c i p l eo fw i n d o w so p e r a t i n g s y s t e m i o e q u i p m e n td r i v ea n dt h e d y n a m i cl i n ks t o r e h o u s et e c h n o l o g y ,c a l l i n gw i n 3 2a p if u n c t i o n t h e ni nt h el a b v i e w d e v e l o p m e n tp l a t f o r mo ft h e v i r t u a l i n s t r u m e n t ,a c c o r d i n gt ot h ep r i n c i p l ew h i c h l a b v i e wl i n k sw i t ho u t e rc o d ea n dc a l l i n gt h ed l l ,t h eu s bu n i v e r s a lc o m m u n i c a t i o n p r o c e d u r em o d u l eg r o u pw e r ed e v e l o p e dw i t ht h eo p e r a t i n gf u n c t i o n s :e q u i p m e n ts e a r c h , o p e na n dc l o s e ,r e a da n dw r i t a n dt h e ni nt h es a m ew a y ,t h eu n i v e r s a lc o m m u n i c a t i o n p r o c e d u r em o d u l eg r o u po ft h eu s bc a m e r aw e r ed e v e l o p e di nl a b v i e ww i t ht h e f u n c t i o no fe q u i p m e n ts e a r c h ,o p e na n dc l o s e ,r e a da n dw r i t ,i m a g ed i s p l a y ,v i d e ol a m e a n di m a g ep a r a m e t e rd e m o n s t r a t i o na n ds e tu p u s i n gt h ec o m b i n e dm e t h o do f t h ed y n a m i cl i n kl i b r a r yt e c h n o l o g ya n dt h e p r i n c i p l ew h i c hl a b v i e wl i n k sw i t ho u t e rc o d e ,t h et a s ko fa c c e s s i n gt h eb o t t o m h a r d w a r ec a nb er e a l i z e dw h i c hc a n tb ee a s yo ru n a b l et or e a l i z e dn o w ,s ot h a tt h e c a p a b i l i t yo ft h e v i r t u a li n s t r u m e n ti s e x p a n d e d s p e a k i n gf r o mt h et h e o r i e s ,a n y e x t e r i o re q u i p m e n tw i t ht h ei n t e r f a c eo fu s ba n do t h e rc a nb ec o n t r o l l e db yt h em e t h o d i tw a sa na t t e m p to ft h eu s bt e c h n o l o g y a p p l i c a t i o ni nl a b v i e w ,a n dh a sh i g h e r r e f e r e n c ev a l u et ot h ed e v e l o p m e n to fa c c e s s i n go t h e rv i r t u a li n s t r u m e n to ft h eu s b m e a s u r ed e v j c e k e yw o r d s :u s b ;o p e r a t i n gs y s t e m ;d e v i c ed r i v e r ;d y n a m i cl i n kl i b r a r y ;v i r t u a i n s t r u m e n t 西北大学硕士学位论文 y8 9 3 7 2 5 西北大学学位论文知识产权声明书 本人完全了解学校有关保护知识产权的规定,即:研究生在 校攻读学位期间论文工作的知识产权单位属于西北大学。学校有 权保留并向国家有关部门或机构送交论文的复印件和电子版。本 人允许论文被查阅和借阅。学校可以将本学位论文的全部或部分 内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复 制手段保存和汇编本学位论文。同时,本人保证,毕业后结合学 位论文研究课题再撰写的文章一律注明作者单位为西北大学。 保密论文待解密后适用本声明。 学位论文作者签名:笙盗缝指导教师签名:i 兰叠 纱诨易月“日加一i 年占月,占日 西北大学学位论文独创性声明 本人声明:所呈交的学位论文是本人在导师指导下进行 的研究工作及取得的研究成果。据我所知,除了文中特别加 以标注和致谢的地方外,本论文不包含其他人已经发表或撰 写过的研究成果,也不包含为获得西北大学或其它教育机构 的学位或证书而使用过的材料。与我一同工作的同志对本研 究所做的任何贡献均已在论文中作了明确的说明并表示谢 意。 学位论文作者签名:毕编铮 ? 一年月f 6 日 西北大学硕士学位论文 第一章绪论 1 1 研究背景 测试测量是人们获取客观世界信息,认识自然、改造自然的必要手段, 仪器仪表是测试测量的必备工具。但是随着社会的发展和科技的进步,功 能单一的专用仪器仪表已经不能满足各行各业各种各样的测试测量需求。 性价比高的通用计算机技术的发展为仪器仪表测试测量技术的改进提供了 新的技术手段。一方面出现了由数台专用仪器仪表组成,用通用计算机控 制操作的综合测试测量系统,另一方面形成了采用通用计算机及其软件来 实现仪器仪表面板操作和数据显示处理等基本功能,而仪器只负责采集测 量输入、激励输出和信号调理等核心功能的虚拟仪器技术【1 1 。 虚拟仪器技术的发展随着计算机技术的发展以及采用的总线方式的不 同,形成了两个方向,一个是g p i b v x i p x i 总线方式,适合于大型高精 度的集成系统,成本相对较高;另一个是p c 插卡式并口式一u s b 串口方 式,适用于普及型的廉价系统,具有广阔的应用前景【2 】。对于大多数用户 来说,寻求一种最大限度利用计算机资源且不受计算机更新换代影响,可 以热插拔和即插即用,性价比高的通用计算机与仪器的通信方式是一种必 然的需求。因此当代计算机上普遍配置的通用串行总线u s b 就成了一种比 较理想的选择。 1 1 1u s b 技术概述 u s b 是英文u n i v e r s a ls e r i a lb u s 的缩写,中文含义是“通用串行总线”, 是一种应用在p c 领域的新型接口技术【3 】。u s b 规范的前身是a c c e s s b u s 规范,由p h i l i p s 与数字设备公司( d i g i t a le q u i p m e n tc o r p o r a t i o n ) 所制定并 公开的标准i 引。a c c e s s b u s 则是由1 2 cs y n c h r o n i c ss e r i a lb u s 发展而来的。 为了解决目益增加的p c 外设与有限的系统硬件和中断资源之间的矛 盾,1 9 9 4 年i n t e l 、c o m p a q 、d i g i t a l 、i b m 、m i c r o s o f t 、n e c 、n o r t h e r n t e l e c o m 等世界上著名的7 家计算机公司和通信公司成立了u s b 论坛1 3 ,并于1 9 9 4 年1 1 月1 1 日,在u s b 总线规范草案的基础上几经修订,提出了u s bo 7 西北大学硕士学位论文 正式版通用串行总线规范,标志着u s b 标准的诞生。 1 9 9 5 年4 月,u s b 组织全面修改0 8 版发表了u s b0 9 版。1 9 9 6 年1 月该组织公布了u s b1 0 版。1 9 9 7 年开始有真正符合u s b 技术标准的外设 出现。1 9 9 8 年9 月2 3 日,u s b 组织全面修订1 0 版推出了目前计算机与 外设上普遍采用的u s b1 1 版标准。在u s b1 1 版中定义了两种速度的传 输工作模式,低速( l o ws p e e d ) 模式的数据传输速度为1 5 m b s ;全速( f u l l s p e e d ) 模式使得传输速度峰值达到了t 2 m b s 。这一版本得到了计算机业界 的广泛响应,到1 9 9 9 年,u s b 已经被广泛应用。2 0 0 0 年4 月2 7 日,u s b 组织发布了最新的高速模式版本u s b2 0 版规范。u s b2 0 向下兼容u s b 1 1 ,数据的传输速率最高可达到4 8 0m b s ,支持宽带数字摄像设备及下一 代扫描仪、打印机及存储设备。2 0 0 5 年5 月底,u s b 组织完成了无线u s b 标准1 0 修订版规范。w u s b1 0 数据传输有效距离1 0 米,在3 米内可达 到4 8 0 m b s ,十年内将达到1 g b s 。无线u s b 标准的制定完成,将会极大 的推动无线u s b 技术在计算机工业、消费电子、移动通信、工业自动化控 制等众多领域的快速应用与发展【5 1 。 与传统接口相比,u s b 具有速度快、独立供电、可热插拔、支持即插 即用和成本低等特点,因此在p c 机外设方面应用u s b 接口的产品非常多, 键盘、鼠标、摄像头、扫描仪、打印机、调制解调器、u s bh u b 、游戏杆、 电视盒、软驱、c d - - r o m 、c d r w 、硬盘,甚至声卡、音箱、手机充电器、 手写电子板、网卡等等都已经出现。 1 1 21 l i s b 在测试测量仪器仪表领域的应用 u s b 的特点为测试测量仪器仪表与p c 机之间的连接提供了一个高速 的费用低廉且简单易用的方案。随着测试测量仪器仪表技术的发展,u s b 在以p c 机为核心的测试测量仪器仪表方面的应用发展十分迅速。 u s b 接口进入测试测量仪器仪表领域是从1 9 9 8 年开始的,当时i o t e c h 和n i 两家公司首先在他们的数据采集仪器中使用了u s b 接口,随后许多 著名仪器公司都采用了u s b 接口。2 0 0 0 年,横河电机开始在数字示波器 上安装u s b 接口,之后安捷伦、力科、泰克也在数字示波器上配备u s b 西北大学硕士学位论文 接口【6 】。2 0 0 3 年,台湾固纬公司推出了内嵌u s b 接口的数字存储示波器 g d s - 8 15 c 。2 0 0 4 年,国内唯一以自有知识产权生产数字存储示波器的企 业。北京普源精电科技有限公司( r i g o l ) 发布了国内首款具有u s b 接口的 d s 5 0 0 0 系列数字存储示波器,在国内处于领先地位。 实际应用证明u s b 接口在测试测量仪器仪表领域中确实是简单方便 和低成本的互连技术。特别是在u s b 2 0 发布后,u s b 测试测量仪器仪表 从数据采集向数字多用表、数字示波器、逻辑分析仪、任意波形发生器、 数字化仪、协议分析仪等发展,形成多种多样的体积小型、移动轻便、价 格实惠、性能适中的一类测量仪器实体。经过实践考验,u s b 仪器仪表在 中低档测试测量仪器仪表中最受用户欢迎,已经进入测试测量仪器仪表主 流【6 1 。 1 2 选题定位及其意义 从上可以看出u s b 在仪器仪表领域有着广阔的应用前景,越来越多的 测试测量仪器仪表开始采用u s b 接口与外部通信。要想把p c 机和各个仪 器仪表的优势更好的结合起来,以p c 机为核心由多种测试测量仪器仪表 组成用u s b 通信的综合测试测量系统必将成为一个发展方向。所以研究计 算机如何通过u s b 总线接口与各类仪器仪表进行通信具有很重要的应用 实践意义。 u s b 使用方便,物理连线简单,但是其设备种类定义繁多,通信协议 规范复杂,软件设计过程繁琐,应用开发难度较高。对于u s b 设备最终用 户的二次应用开发来说,要降低难度,减轻工作量,缩短研发周期,提高 通用性,最好就是采用可供用户程序调用的通用的u s b 通信程序模块,就 像在l a b v i e w 环境中使用的g p i b 通信程序模块一样。 因此本文将在此方面进行研究试验,尝试开发可供用户二次开发调用 的通用u s b 通信程序模块,并结合具体的设备实例进行基于虚拟仪器的多 u s b 设备访问研究试验,建立一个多u s b 设备的应用软件系统。本文的 研究对u s b 设备的实际应用开发很有借鉴意义。 1 3 技术研究现状 西北大学硕士学位论文 目前已有的u s b 设备所提供的访问与控制软件大都没有提供通信程 序模块接口,厂商不会向用户提供全面开放的软件平台,也不会向用户提 交关键技术,用户很难根据需要在现有基础上作二次开发,不利于实验更 新。例如台湾固纬公司的g d s 8 1 5 c 示波器所配的u s b 通信软件就只能供 用户使用,没有提供用户二次开发可调用的通信程序模块接口。 一些常用的软件开发平台针对u s b 设备的应用软件开发,还缺乏比较 完善的类似于访问串行的r s 2 3 2 设备、并行的g p i b 设备及以太网网络设 备的通用通信程序模块。以n i 公司的虚拟仪器软件开发平台l a b v i e w 为 例,对于采用r s 一2 3 2 、g p i b 和以太网接口通信的设备,用户只要有设备 制造商提供的通信指令和数据格式资料,就可利用平台内已设计好的 r s 一2 3 2 、g p i b 、以太网通信函数模块按照v i s a 和t c p i p 协议进行二次 开发设计应用。但是对于u s b 设备,其二次开发设计过程相对就要复杂的 多。因为l a b v i e w 内还没有u s b 通信函数模块集,所以用户需要在熟练 掌握u s b 技术原理的基础上首先开发出l a b v i e w 开发平台下的u s b 设备 的基本通信模块,在此基础上才可能做进一步的二次开发应用。所以u s b 设备还不能像g p i b 设备一样方便的进行的二次开发设计应用。 1 4 研究实验条件、方法及主要工作 1 研究实验对象和环境的选择 本文选用4 个u s b 摄像头作为实验对象。u s b 摄像头是一种比较常 见的、可以用作视频图像采集的u s b 设备,因此本文把对它的应用实验开 发作为一个对其它u s b 测试测量设备进行虚拟仪器应用开发的例子。 多数用户程序的运行环境都使用的是装有w i n d o w s 操作系统的p c 机, 因此本文选择一台装有w i n d o w sx p 的p c 机作为实验程序的运行环境。 2 研究软件开发平台的选择 在w i n d o w s 操作系统下,v i s u a lc + + 是最能充分利用w i n d o w s 系统服 务功能资源的开发软件平台,因此本文用其作为实验核心程序的开发环境。 l a b v i e w 是美国n a t i o n a li n s t r u m e n t s ( n i ) 公司开发的一种以数据流 驱动的图形化编程语言代替文本编程语言创建应用程序的开发工具,主要 4 西北大学硕士学位论文 用于测量、过程控制和数据分析的应用程序开发7 1 。l a b v l e w 是 l a b o r a t o r yv i r t u a li n s t r u m e n te n g i n e e r i n gw o r k b e n c h 的缩写,其意为实验 室虚拟仪器工程集成环境。在工程界、学术界和大学实验室中,l a b v i e w 被广泛用于仪器控制、数据采集与分析,其应用遍及电子、通信、生物医 学、机械等众多学科领域。所以本文选用l a b v i e w 作为实验验证程序的 开发环境。 3 研究实验方法 本文采用软件编程的方法进行程序模块的设计和软件系统的开发,然 后用实验对象进行软件模块功能的验证。 4 研究实验工作内容 1 ) 检索、阅读有关方面的文献资料,学习掌握u s b 接口的通信原理, 操作系统与外设的通信机制,w i n 3 2 应用程序编程接口的使用,动态链接 库文件的编程,以及l a b v i e w 中有关动态链接库调用、函数封装和多任 务运行的编程技术; 2 ) 开发出l a b v i e w 平台下具有设备查询、打开、关闭、读写功能的 u s b 通用通信程序模块组,并将各部分封装形成个在l a b v i e w 中访问 u s b 设备的内建函数集; 3 ) 完成一个4 个摄像头的图像采集软件系统。 4 ) 为其它u s b 测量仪器的二次开发应用提供经验借鉴。 1 s 论文结构 第二章主要讲述u s b 技术的基本规范和操作系统i o 设备驱动机制, 以及据此产生的研究实验方案。第三章主要讲述w i n 3 2 a p i 和动态链按库 的基本概念和u s b 通信d l l 的开发设计。第四章主要讲述l a b v i e w 中的 外部代码调用机制和依此进行的u s b 通信函数的开发,以及使用这些函数 进行u s b 通用通信模块的设计开发:然后讲述视频图像采集规范和据此进 行的u s b 摄像头通信函数的开发,以及在此基础上采用实现的4 个摄像头 的图像采集软件系统。第五章为论文的研究工作总结与展望。 西北大学硕士学位论文 第二章研究实验的理论基础与方案设计 本章主要讲述u s b 的基本技术规范和操作系统i o 设备驱动原理,以 及据此形成的研究实验的方案设计。 2 1i j s b 体系结构 u s b 是一种电缆总线,支持在主计算机和各式各样的即插即用的外设 之间进行数据传输( g l 。连接在主机上的设备通过由主机调度的基于令牌的 协议分享u s b 带宽。当主机和外设正在运行时,总线允许添加、设置、使 用和断开其他外部设备。 u s b 的连线是一根四线的电缆,其中d + 、d 一两根线是差分驱动的 串行数据信号线,采用n r z i ( 反向不归零) 编码方式传输数据 9 1 。另两根 线v b u s 、g n d 是电源线和地线,可为u s b 设备提供电压+ 5 v 、最大电流 5 0 0 m a 的电源。由于电器特性原因,每根电缆长度不超过5 m 。通过选择 合适的导线长度可以匹配指定的信号传输时的延迟和衰减等特性。所有的 设备都有上行的接口,上行和下行的接头是不能互换的,这保证了不会有 非法的连接出现。 u s b 的优点有以下几条: 1 u s b 为所有的u s b 外设提供了单一的、易于使用的标准的连接类型, 简化了u s b 外设的设计,方便了用户,实现了单一的数据通用接口。 2 整个u s b 系统只有一个端口和一个中断,节省了系统资源。 3 u s b 支持热插拔( h o tp l u g ) 并1 即插即用( p l u g a n d p l a y ) 【1 叭,也就是说 在不关闭p c 的情况下可以安全的插上和断开u s b 设备,计算机系统动态 地检测外设的插拔,并且动态地加载驱动程序。其他普通的外围连接标准, 如s c s i 设备等必须在关掉主机的情况下才能插拔外围设备。 4 u s b 在设备供电方面提供了灵活性。连接到u s bh o s t 或h u b 的设 备可以通过u s b 电缆供电,也可以通过电池或者其它的电力设备来供电, 或使用两种供电方式的组合,并且支持节约能源的挂机和唤醒模式。 5 u s b 提供全速1 2 m b p s 的速率和低速1 5 m b p s 的速率来适应各种不 6 西北大学硕士学位论文 同类型的外设,u s b2 0 还支持4 8 0 m b p s 的高速传输速率。 6 为了适应各种不同类型外围设备的要求,u s b 提供了四种不同的数 据传输类型:控制传输、批量数据传输、中断数据传输和同步数据传输。 7 u s b 的端口具有很灵活的扩展性,根据u s b 的协议定义一个u s b 端口通过u s bh u b 扩展最多可连接1 2 7 个u s b 设备。 2 1 1i j s b 体系结构层次分析 u s b 提供了在一台主机和若干台附属的u s b 设备之间的通信功能。 从终端用户的角度看到的u s b 系统,可简单地用图2 1 表示: 图2 - 1u s b 主机设备的简单模型 但在实际的开发上,具体的系统要比这复杂,不同层次的开发者对 u s b 的有不同要求,这使得我们必须从不同的层次观察u s b 系统。u s b 系统提出了一些重要的概念和 方法来支持现代个人计算机所 提出的可靠性要求,所以u s b 的分层理解是必须的。它能使 不同层次的开发者只关心u s b 相关层次的特性功能细节,而 不必掌握从硬件结构到软件系 统的所有细节。u s b 的这种层 次结构如图2 2 所示。 主机互连物理设备 医鬲磊订 带翠 蜘 o 一 玉 。 玉 l 岱b k 、i u s b 。i j 毛线软件 i 1 逻辑设备l 呸b : h 。l _ j 王 广l 噶b : 砺b 1 1i。_j i 主机控制器广 _ i ,_ j 实l 通值流 图2 - 2u s b 体系层次结构和数据流 其中有四个层次的实现是非常关键的: 1 u s b 物理设备( u s bp h y s i c a ld e v i c e ) :执行终端用户功能的硬件。 2 客户软件( c l i e n ts o f t w a r e ) :为一个特定的u s b 设备而在主机上运行 的软件,也可称为设备驱动。这种软件由u s b 设备的提供者提供,或由操 作系统提供。 3 u s b 系统软件( u s bs y s t e ms o f t w a r e ) :用于在特定的操作系统中支持 u s b ,它由操作系统提供。与具体的u s b 设备无关,并独立于客户软件。 西北大学硕士学位论文 4 u s b 主机控制器( u s bh o s tc o n t r o l l e r ) :总线在主机方面的接口,是软 件和硬件的总和,用于支持u s b 设备通过u s b 连到主机上。 如图2 2 所示,一台主机与一个u s b 设备间的连接是由许多层上的连 接组成。u s b 总线接口层提供了在主机和设备之间的物理连接、发送连接、 数据包连接。u s b 设备层是u s b 系统软件中用于对一个u s b 设备执行通 常的u s b 操作的部分。而功能层可通过一个适当匹配的客户软件层向主机 提供一些附加的功能。u s b 设备层和功能层的通信是逻辑上的,对应于这 些逻辑通信的实际物理通信由u s b 总线接口层来完成。 2 1 2u s b 总线拓扑 u s b 总线拓扑( b u st o p o l o g y ) 是指u s b 的基本物理组成、基本逻辑组 成,以及各组成部分之间的相互关系i 1 。总线拓扑结构包括四个重要的组 成部分: 1 主机和设备:u s b 系统中的主要构件。 2 物理拓扑结构:描述u s b 系统中的各组成部分是如何连接起来的。 3 逻辑拓扑结构:描述u s b 系统中各种组成部分的地位和作用,以及 描述从主机和设备的角度观察到的u s b 系统。 4 客户软件层与功能层的关系:描述从客户软件层看到的功能层的情 况,以及从功能层看到的客户软件层的情况。 2 1 2 1u s b 主机 u s b 主机的逻辑结构组成包括:u s b 主机控制器( u s bh o s t c o n t r o l l e r ) ;u s b 系统软件集合:u s b 驱动程序,主机控制器的驱动程序, 主机软件:客户软件。 u s b 主机在u s b 系统中是一个起协调作用的实体,它不仅占有特殊 的物理位置,而且对于u s b 以及连到u s b 上的设备来说,还负有特殊责 任。主机负责监督u s b 的拓扑结构,并且主机控制所有的对u s b 的访问。 一个u s b 设各想要访问总线必须由主机给予它使用权 u s b 主机的作用是系统管理,功能包括发送配置请求、对u s b 设备 进行配嚣操作、包括传输管理、对总线上的错误进行管理和恢复。u s b 总 西北大学硕士学位论文 线系统被定义为主从逻辑总线,因此只有一个主机。u s b 和主机系统的接 口称为主机控制器。主机控制器管理和实现u s b 物理层的差模信号以及提 供连接端口,它和u s b 系统软件( 包含u s b 驱动程序、主机控制器的驱 动程序和相关固件、主机软件、客户软件) 共同完成主机的u s b 控制功能。 主机控制所有的对u s b 主机的访问,即一个u s b 设备想要访问总线必须 由主机授权。主机还负责监督设备状况的变化。u s b 主机工作依赖于p c 的操作系统所能够提供的各种驱动程序和应用程序支持,主要包括3 部分: u s b 主控制器驱动程序,其负责c p u 与u s b 主机接口芯片的通讯,处理 底层u s b 包的发送与接收;u s b 核心驱动程序,这部完成操作系统对u s b 主机控制器的管理,负责解释操作系统对u s b 主机的各种操作命令;u s b 用户程序通过操作系统提供给用户的a p i 来完成对u s b 设备的各种操作。 2 1 2 2u s b 设备 一个u s b 设备的逻辑结构组成包括:u s b 总线接口;u s b 逻辑设备: 功能部件。 u s b 设备用于向主机提供一些额外的功能。u s b 设备提供的功能是多 种多样的,但面向主机的接口却是一致的。所以,对于所有这些设备,主 机可以用同样的方式来管理它们与u s b 有关的部分。为了帮助主机辨认及 确定u s b 设备,这些设备本身需要提供用于确认的信息。在某一些方面的 信息,所有设备都是一样的;而另一些方面的信息,由这些设备具体的功 能决定。信息的具体格式是不定的,由设备所处的设备级决定。 u s b 设备作用是接收总线上的所有数据包,丢弃地址不符的数据包, 对地址相符的数据包响应。u s b 设备分成h u b ( 即集线器) 设备和功能设 备两种。集线器用于向u s b 提供了更多的连接点。功能设备能在总线上发 送和接收数据和控制信息。u s b 功能设备由硬件和固件两部分来组成的。 u s b 功能设备在硬件上要由u s b 设备接口芯片来实现,由它来完成管理 和实现u s b 物理层的差模信号和提供连接端口,提供各种数据和端点寄存 器。其中控制寄存器用于设置端点的工作模式、启用端点的功能等;状态 寄存器用于查询端点的当前状态:中断寄存器则用于设置端点的中断触发 9 西北大学硕士学位论文 和响应功能;数据寄存嚣则是设备与主机交换数据用的缓冲区。u s b 主机 只给每个u s b 外设分配一个逻辑地址。u s b 外设具有一些能由u s b 设备 驱动程序直接操作的寄存器端口,称为u s b 设备的端点。设备上的各个端 点有不同的端点号,通过端点号和设备地址,主机软件就可以和每个端点 通信。u s b 芯片的每个端点都支持特定的总线传输方式。端点0 用于控制 传输,其他的端点则可以支持等时传输、批量传输或中断传输中的任意 种或某一种。 u s b 设备是通过具有一定格式的数据结构来说明它的属性和特点的, 称为描述符。u s b 设备描述符分为设备描述符、设置描述符、接口描述符 和端点描述符等几类,用以提供的u s b 设备的端点地址、传输类型、数据 包的大小和带宽请求等信息。u s b 功能设备固件作用是控制硬件资源、实 现u s b 的传输功能。固件中包括u s b 设备系统配置模块和传输设置模块、 u s b 协议栈模块、u s b 协议栈设置模块、各类寄存器管理模块等几部分。 2 1 2 3u s b 物理拓扑结构 u s b 总线上的设备以 星形的拓扑结构实现与主 机的物理连接【1 2 1 ( 如图2 3 所示) ,u s b 的接入点由集i 线器来提供。这种由集线器i 提供的额外的接入点称为: 1 0 西北大学硕士学位论文 合) 设备。对主机而言,一个复合设备与个连有多个功能设备的分离的集 线器之间没有什么区别。图2 - 3 中也标出了一个复合设备。 2 1 2 4u s b 逻辑拓扑结构 在物理结构上,设备通过h u b 连到主机上。但在逻辑上,主机是直接 与各个逻辑设备通信的,就好像它们是直接被连到主机上一样。这个逻辑 关系如图2 - 4 所示。与 之对应的物理结构就 是图2 3 中的结构。 h u b 也是逻辑设备。但 在图2 - 4 中,为了简化 起见,未被画出,虽然 图2 - 4u s b 逻辑拓扑结 u s b 系统中的工作都是从逻辑角度来看待的,但主机必须对物理结构有个 了解。例如,在处理h u b 被移去的情况时,当一个h u b 被移出,通过它与 主机相连的设备也应一起被移去,这是由其物理结构决定的。 2 1 2 5 客户软件与功能部件的关系 u s b 系统的物理上、逻辑上的拓扑结构反映了总线的共享性。操纵 u s b 功能设备的客户软件只关心设备上与它相关的接口,客户软件必须通 过u s b 软件编程接口来操 纵功能设备。这与另一些总 线如p c l ,e l s a ,p c m u a 等不同,这些总线是直接访 问内存或i o 的。在运行 中,客户软件必须独立于 u s b 上的其它设备。这样, 图2 - 5 客户软件与功能部件 设备和客户软件的设计者就可以只关心该设备与主机硬件的相互作用和主 机软件的相互作用的细节问题。图2 5 说明了在图2 - 4 的逻辑结构下,一 个设备设计者看到的客户软件与相应功能部件的关系的视图。 西北大学硕士学位论文 2 1 3u s b 通信流 u s b 为主机软件和u s b 功能设备间的通信提供服务3 1 。对客户软件与 功能部件间不同类型的交互,u s b 设备对数据流有不同的要求。u s b 为此 提供了更好的全面的总线使用,它允许各种不同的数据流相互独立地进入 一个u s b 设备。每种通信流都采取了某种总线访问方法来完成主机上的软 件与设备之间的通信。每个通信都在设备上的某个端点结束。不同设备的 不同端点用于区分不同的通信流。 通信流模型( c o m m u n i c a t i o nf l o wm o d e l s ) 如图2 - 6 所示,它描述了主机 与设备如何通过u s b 通信,对图2 2 进行了更详尽地阐述,完整的解释了 图2 - 2 中逻辑设备层和功能层间的实际的通信流。 图2 - 6u s b 体系层次结构和数据流的细节图 实际的通信流要经过几个接口边界,通过u s b 设备的编程接口,可从 主机侧对u s b 设备进行控制,主机侧有两个通信接口; 西北大学硕士学位论文 1 主机控制器的驱动程序( h c d ) :它位于u s b 主机控制器与u s b 系统 软件之间。主机控制器可以有一系列不同的实现,而系统软件独立于任何 一个具体实现。一个驱动程序可以支持不同的控制器,而不必特别了解这 个具体的控制器【9 1 。一个u s b 控制器的开发者必须提供 个支持它自己的控制器的主 机控制器驱动器( h c d ) 实 现。 2 u s b驱动程序 f u s b d ) :u s b 系统软件与客 户软件之间的接口,提供给 图2 - 7u s b 设备的逻辑分层 客户软件一些方便的使用u s b 设备的功能。 一个u s b 逻辑设备对u s b 系统来说就是一个端点集合。端点可以根 据它们实现的接口来分类。u s b 设备在逻辑上分成了几个层次,分别是设 备层、配置层、接口层和端点层,其关系如图2 7 所示。 u s b 系统软件通过一个缺省的控制通道来管理设备。而客户软件用通 道束管理接口。通道束的一端为端点,一端为缓冲区。客户软件要求通信 数据在主机上的一个缓冲区和u s b 设备上的一个端点之间进行。主机控制 器或u s b 设备( 取决于数据传 送方向) 将数据打包后在u s b 上传。由主机控制器( h c ) 协调 何时使用总线访问在u s b 上传 递数据。 图2 8 说明了数据如何在 主机中的内存缓冲和设备中的 端点间传送。 主机上的软件通过一系列 图2 8u s b 通信 的通信流与逻辑设备进行通信。这一系列的通信流是由u s b 设备的软件和 硬件设计者选择的,使设备能传输由u s b 提供的字符。 西北大学硕士学位论文 2 1 4u s b 通信协议 u s b 总线是一种轮询方式的总线,主机控制端口初始化所有的数据传 输,u s b 设备不能主动发起传输【8 1 。每一总线执行动作最多传输三个数据 包。按照传输前制定好的原则,在每次传输开始时,主机控制器发送一个 描述传输运作的种类、方向,u s b 设备地址和终端号的u s b 数据包,这 个数据包通常称为标志包( t o k e np a c k e t ) 。u s b 设备从解码后的数据包的适 当位置取出属于自己的数据。数据传输方向不是从主机到设备就是从设备 到主机。在传输开始时,由标志包来标志数据的传输方向,然后发送端开 始发送包含信息的数据包或表明没有数据传输。接收端也要相应发送一个 握手的数据包表明是否传输成功。在u s b 上的每次数据传输一般都是由标 志包、数据包、握手包组成的,这些包组合起来就完成了一个事务处理。 u s b 的数据传输是在主机软件和一个u s b 设备的指定端口之间,这 种主机软件和u s b 设备的端口间的联系称作通道。通道类型有流通道和消 息通道两种。 1 流通道:流的数据不像消息的数据,它没有u s b 所定义的结构,而且 通道与数据带宽、传输服务类型、端点特性( 如方向和缓冲区大小) 有关。 多数通道在u s b 设备设置完成后即存在。流通道中的通信流总是单方向 的。对于在流通道中传输的数据,u s b 认为它来自同一个客户。u s b 系统 软件不能够提供使用同一流通道的多个客户的同步控制。在流通道中传输 的数据遵循先进先出原则流通道支持同步传输、中断传输和批量传输。 2 消息通道:消息通道与端点的关系同流通道与端点的关系是不同的。 首先,主机向u s b 设备发出一个请求:接着,就是数据的传输:最后,是一 个状态阶段为了能够容纳请求数据状态的变化,消息通道要求数据有一 个格式,此格式保证了命令能够被可靠地传输和确认。消息通道允许双方 向的信息流,虽然大多数的通信流是单方向的。u s b 系统软件不会让多个 请求同时要求同一个消息通道。一个设备的每个消息通道在一个时间段内。 只能为一个消息请求服务,多个客户软件可以通过缺省控制通道发出它们 的请求但这些请求到达设备的次序是按先进先出的原则的。u s b 中有一个 特殊的通道;缺省控制通道,它属于消息通道。当设备一启动即存在,从 西北大学硕士学位论
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 公共投资项目造价控制与咨询服务合同
- 混凝土泵送服务与施工合同
- 社会保障专业试题及答案
- 机械专业精彩面试题及答案
- 小字教学课件图片高清无水印
- 2025至2030中国氯氯化铜杀菌剂行业项目调研及市场前景预测评估报告
- 蛋糕裱花教学课件图片
- 2025至2030氧化铝翻板行业项目调研及市场前景预测评估报告
- 2025至2030中国遗传性血管性水肿药物行业项目调研及市场前景预测评估报告
- 临床化验单解读
- YY/T 1437-2023医疗器械GB/T 42062应用指南
- (完整版)PE管焊接工艺
- 处置废旧物资投标方案
- 电动起子使用教程
- 10000中国普通人名大全
- 历史虚无主义课件
- 微生物实验室风险评估报告
- 毕业论文范文3000字(精选十六篇)
- 2022年阜阳市工会系统招聘考试题库及答案解析
- 陶艺制作过程介绍教学课件(共48张)
- 发动机构造第7章 发动机总体结构
评论
0/150
提交评论