USB原理及接口设计
吴 磊
0 引言
通用串行总线USB是Intel、Microsoft等大厂商为解决计算机外设种类的日益增加与有限的主板插槽和端口之间的矛盾而提出制定的。
是一种用于将适用USB的外围设备连接到主机的外部总线结构,主要用在中速和低速的外设。
USB同时又是一种通信协议,主持主机和USB的外围设备之间的数据传输。
1 USB的结构与工作原理
1.1 物理结构
在USB2.0中,高速方式下Hub使全速和低速方式的信令环境独立出来。
通过使用集线器扩展可外接多达127个外设。
USB的电缆的四根线,两根传送的是5V的电源,另外的两根是数据线。
功率不大的外围设备可以直接通过USB总线供电,而不必外接电源。
USB总线最大可以提供5V500m A 电流,并支持节约能源的挂机和唤醒模式。
1.2 USB设备逻辑结构
USB的设备可以分成多个不同类型,同类型的设备可以拥有一些共同的行为特征和工作协议,这样可以使设备驱动程序的编写变得简单一些。
每一个USB设备会有一个或者多个的逻辑连接点在里面每个连接点叫端点。
在USB的规范中用4位地址标识端点地址,每个设备最多有16个端点。
端点0都被用来传送配置和控制信息。
1.3 USB通信分层模型
一台主机到设备的连接需要许多层与实体之间相互作用。
USB总线接口层提供了主机和设备之间的物理/信令/包的连接。
在系统软件看来, USB设备层执行的是一般的USB操作。
功能接口层提供和应用软件层相对应的附加功能,虽然逻辑上USB设备层和功能层各自与主机上相应层通信,但物理上是通过USB总线接口层实现数据传输的。
1.4 四种传输方式
USB提供了四种传输方式,以适应各种设备的需要。
这四种传输方式分别是:
控制传输方式,用在主计算机和USB外设中端点0之间,等时传输方式,中断传输方式,用于定时查询设备是否有中断数据传送;大量传输方式。
1.5 USB通信协议
USB的物理协议规定了在总线上传输的数据格式,一个全速的数据帧有1500字节,而对于低速的帧有187字节。
帧的作用是分配带宽给不同的数据传送方式。
一个最小的USB的数据块叫做包,包通常有同步信号,包标识,地址、传送的数据和CRC。
包的ID 由八位组成,其中后四位是纠错位。
2 WindowsUSB驱动程序接口
USB的驱动程序和以往的直接跟硬件打交道的Win95的VxD驱动程序不同,属于WDM类型, Win98、Win2000等操作系统均支持该类型的驱动程序。
WD M定义了一个基本的核心驱动程序模型,处理所有类型的数据,使驱动程序模型的内核实现更加固定。
WDM驱动程序还是一种分层的程序结构,可看做是WindowsNT驱动程序的改进,WD M驱动程序支持即插即用、电源管理和W MI特性。
3 USB接口10M以太网卡的实现
3.1选择器件
介绍一种使用廉价USB接口芯片USB N9602加高速的51单片机实现10M以太网卡的方案。
设计之前一定要计算好外设所要求的带宽和USB的速度是否匹配。
一个USB以太网卡应该包括USB通信接口、8051单片机以及IEE E802.3的MAC层和物理层。
USBN9602在全速工作方式下可以达到12Mbit/s,采用USBN9602基本可以满足10M以太网的带宽需求。
3.2开发USB网卡驱动程序
开发USB设备驱动程序通常采用Windows DDK来实现,但现在有许多第三方软件厂商提供了各种各样的生成工具,(下转第19页)
用Netterm、Clerver Term之类的专业软件安装后按步骤进行,或用Windo ws自带的Telnet或到网上如下载一个。
E-mail:即电子邮件,是在互联网上传递信息的重要媒介。
可以申请一个免费的邮箱,E-mail 和普通的信件一样能进行互相交流,在计算机上编写然后通过计算机网络传递,速度快,价格便宜,不仅可以传送文本,而且可以传送声音、视频等多种类型的文件。
由于它的诸多特点,可以把要查询的信息集中起来发给相关的人,即可得到查询结果。
5 专业检索
查询网络信息应明确查询的目的、对象。
目的及查询对象不同,选择的检索工具也就不同。
如查询地址、查人,可以用Internet Yellow Pages、Whois、X.500、Netfinder、Whowhere?等;查用户组可以用DejaNe ws、FAQ Archive等;查软件可以到shareware. com等;查FTP资源用Achie;查网上服务器用Wais 等。
而如今使用较多的WW W交互型查询工具W WW检索引擎(search engines)逐渐成为网络信息检索的工具。
熟悉了相应的检索工具后,作为专业检索人员还必须掌握常用的检索系统,如:
国外的DILOG检索系统,该系统无论其数据量还是使用频率均高居世界各检索系统的首位,其检索软件成熟、学科范围广、数据质量可靠权威性高,深得用户信赖。
目前可通过专线国际联机和Inter net两种方式进行检索,较为流行的是后一种。
主页地址是(或http:// www.dialogselect.c om)。
用户选择相应的文档并输入账号和密码后,即可进行检索,可以在主页的十一个分类中选择欲检索的类别,也可以单击!+∀看到所有的检索分类,在分类中可一直选择,直到出现查找检索框。
按英文提示在检索框中输入检索词,可是一个单词也可是多个单词,大小写均可。
检索词结尾可以用通配符,但对短单词慎用,以免检出记录太多。
输入多个单词时,系统会自动匹配。
对多个检索词用布尔逻辑符AND、NOT及()进入组配,输入完检索框,按!Search∀按钮即可进行检索。
若想获取原文,还须利用E-mail或传真等方式与DI ALOG出版商联系。
国内的如#中国期刊网∃,分为题录、摘要、全文三个层次的数据库,提供包括全文检索在内的八项检索功能和组合检索功能,支持文章原文的浏览、下载、打印及摘录功能,每天更新。
收录1994-2000年我国正式出版的自然科学、工程技术、人文社科类核心和专业特色中英文全文期刊5000种和题录期刊1600多种。
主页地址是http://w ww.Chi (或)。
用户打开主页以后填写帐户及密码,免费用户的帐户及密码为!guest∀,填好后点击!登录∀可进入检索系统主界面,用系统给出的导航目录进行检索。
若想获取原文还须申请注册用户,每篇原文的价格要比DI A LOG便宜很多。
Internet于80年代进入我国,但中文工具在我国的开发只是近一、二年的事。
目前国内最大、最流行的Internet中文检索工具!搜狐(sohoo)∀是1998年2月25日启用的,在很短的时间内已达到7万以上日访问数和40万的页读数,发展速度较快。
作 者 简 介
焦芳梅:黑龙江省图书馆。
邮编:150008
[收稿日期:20010314 责任编辑:姚彦茹]
(上接第9页)
象Compuware的Driver Works,Blue Waters的Driver Wizard等软件能够方便地生成高质量的USB的驱动程序。
没有DDK或W DM基础的开发人员可使用KRFTech公司的开发软件WinDriver,它的最新版本4.32已经支持USB驱动程序的开发。
最后的驱动程序调试工作可以使用Compuware的Softice或Mi crosoft的Windows Debugger来进行。
Windows下的网卡驱动程序需符合NDIS规范。
网络驱动程序不直接调用操作系统的例程,而是通过NDIS进行系统调用,NDI S还根据需要调用了驱动程序提供的例程,共同完成网卡的功能。
USB网卡驱动程序可分为NDIS中间介质小端口驱动程序和USB驱动程序两部分,然后将两部分驱动程序动态连接。
如果USB设备未连接和被禁止,使USB驱动不可用,那么,NDI S驱动会返回一个NOT_AVAI LAB LE的状态。
这种实现方法可以保证用户不必重新安装NDIS或重启就可以连接或拔掉USB设备。
作 者 简 介
吴 磊:哈尔滨理工大学电气与电子工程学院。
邮编:150040 [收稿日期:20010312 责任编辑:姚彦茹]。