无线USB网卡电路设计与驱动研究毕业论文.doc
《无线USB网卡电路设计与驱动研究毕业论文.doc》由会员分享,可在线阅读,更多相关《无线USB网卡电路设计与驱动研究毕业论文.doc(45页珍藏版)》请在三一办公上搜索。
1、毕业设计报告(论文)报告(论文)题目:无线USB网卡电路设计与 驱动研究 作者所在系部: 电子工程系 作者所在专业: 应用电子技术 作者所在班级: 09211 作 者 姓 名: 指导教师姓名: 完 成 时 间: 2012年6月10日 北华航天工业学院教务处制北华航天工业学院电子工程系毕业设计(论文)任务书姓 名: 专业:应用电子技术班 级:09211学号: 指导教师: 职称:助教完成时间:2012年6月10日毕业设计(论文)题目:无线USB网卡电路设计与驱动研究设计目标:通过无线USB的理论知识,简单介绍无线USB网卡的功能及其应用 技术要求:1. 了解无线USB理论知识2. 能无线USB网卡
2、功能。3. 无线USB网卡应用所需仪器设备:成果验收形式:论文时间安排15周-6周立题论证39周-13周仿真调试27周-8周方案设计414周-16周成果验收指导教师: 教研室主任: 系主任摘 要USB是英文Universal Serial Bus的缩写,中文含义是“通用串行总线”。它是一种应用在PC领域的新型接口技术,1998年后,USB接口逐步走进了是用阶段,由于USB接口鱼油方便的有点,很多跟PC相连的外部设备都采用了USB接口,这必将要求配套的USB设备驱动程序更加具有通用性,更加的稳定,USB设备驱动的好坏直接影响到USB设备和PC交互的效率,速度,质量。所以设计一个好的驱动程序对于U
3、SB设备在Pc上的效率来说是有着非常重要的意义的,选用Linux作为平台研发USB设备驱动模型,是目前国内外比较流行的开发方式,它具有开发效率高,稳定性强等特点。本文主要是研究如何在Linux系统平台上设计并实现802.11B无线嘲卡USB接口的驱动,并积极的讨论如何提高驱动软件的效率,此驱动软件可以使802.1lb无线网卡很好的和PC交互,以下是本文主要的论述结构。首先,论述驱动程序在操作系统和硬件之间的位置和所起的作用。其次,说明USB系统的硬件系统结构,以及USB系统的软件体系结构。然后,深度剖析Linux系统USB接口软件体系,并且指出如何提高代码质量,如何优化驱动程序和硬件交互算法,
4、如何增强驱动程序和操作系统交互性,这几个方面的创新之处,接着评价工程的丁程量。最后,针对8021l b无线嘲线嘲卡的硬件系统结构,阐述实现此网卡驱动的过程,并对此网卡的驱动结构和相关的代码进行说明。本项目为北京市嵌入式重点实验窜项目,通过设计和开发完成的驱动程序将直接被应用于8021l b无线局域网的整个解决方案中,对任何一张802.l1b无线网卡提供USB接口驱动。关键词 Usb;Fpga;Linux;驱动目 录第1章 绪论11.1设备驱动程序研究的意义11.2USB 接口驱动研究的技术背景11.3USB设备接口的国内外现状21.4论文结构安排3第2章802.11b芯片USB IP core
5、硬件模块的功能和结构42.1USB IP core所在硬件中的位置42.2 USB IP core 功能结构42.3 本章小结5第3章 USB系统体系的结构63.1USB体系结构概述63.2USB系统的描述63.3物理接口73.4电源83.5USB总线协议93.6系统设置103.7数据流种类113.8USB设备123.9功能部件143.10USB主机:硬件和软件153.11体系结构的扩充15第4章 无线USB网卡功能简介及其应用164.1基本概述164.2分类174.3无线上网卡选购三要素204.4发展情况23第5章80211 b无线网卡USB接口驱动的设计与实现2551USB IP core
6、 FPG A验证平台接口驱动的设计与实现2552 80211b无线网卡USB接口驱动的完整实现31结 论38致 谢39参考文献40无线USB网卡电路设计与驱动研究第1章 绪论1.1设备驱动程序研究的意义驱动程序(Device Driver)全称为“设备驱动程序”,是一种可以使计算机和设备通信的特殊程序,可以说相当于硬件的接口,操作系统只能通过这个接口,才能控制硬件设备的工作,假如某设备的驱动程序未能正确安装,便不能正常工作。 正因为这个原因,驱动程序在系统中的所占的地位十分重要,一般当操作系统安装完毕后,首要的便是安装硬件设备的驱动程序。不过,大多数情况下,我们并不需要安装所有硬件设备的驱动程
7、序,例如硬盘、显示器、光驱、键盘、鼠标等就不需要安装驱动程序,而显卡、声卡、扫描仪、摄像头、Modem等就需要安装驱动程序。另外,不同版本的操作系统对硬件设备的支持也是不同的,一般情况下版本越高所支持的硬件设备也越多,例如笔者使用了Windows XP,装好系统后一个驱动程序也不用安装。 设备驱动程序用来将硬件本身的功能告诉操作系统,完成硬件设备电子信号与操作系统及软件的高级编程语言之间的互相翻译。当操作系统需要使用某个硬件时,比如:让声卡播放音乐,它会先发送相应指令到声卡驱动程序,声卡驱动程序接收到后,马上将其翻译成声卡才能听懂的电子信号命令,从而让声卡播放音乐。所以简单的说驱动程序提供了硬
8、件到操作系统的一个接口以及协调二者之间的关系,而因为驱动程序有如此重要的作用,所以人们都称“驱动程序是硬件的灵魂”、“硬件的主宰”,同时驱动程序也被形象的称为“硬件和系统之间的桥梁”。1.2USB 接口驱动研究的技术背景本体采用以Linux位操作系统平台,进行对USB接口驱动的开发。Linux具有内核可剪,效率高,稳定性好,移植性好,源代码开放等优点,还内内涵了完整的TCP/IP网络协议栈,与传统的实时操作喜用(RTOS)相比,采用嵌入式Linux这样开放源码的操作系统的另外一个好处是,Linux开发团体的设备驱动程序要比用于商业操作系统的设备驱动程序多。因此,越来越多的公司和个人正在把Lin
9、ux作为嵌入式操作系统的首选。Linux本来就是建立在Unix上面发展出来的操作系统,因此,Linux具有与Unix系统相似的程序接口操作方式,当然也继承了Unix稳定并且有效率的特点。由于Linux是基于GPL的基础下的产物,因此任何人皆可以自由取得Linux,至于一些“安装套件”的发行者,不同于Unix需要庞大的版权费用。Linux由于支持者日众,有相当多的热心团体,个人参与其中的开发,因此,可以随时获得最新的安全信息,并给予随时的更新,亦即是具有相对的较安全。与Windows系统不同的,Linux主机上可以同时允许许多人上线来工作,并且资源的分配较为公平,可以再一部Linux主机上面规划
10、处不同等级的使用者,而且每个人使用者登入系统是的风作环境都可以不同,此外,还可以允许不同的使用者在同一个时间登入主机,以同时使用主机的资源。由于Linux系统源代码开放,在开发USB接口驱动的参考上比其他系统要多大的多,因为大量的USB接口驱动程序都是开放的源代码,在开发USB给予口驱动的过程中,还可以参考大量成熟的硬件设备的USB接口程序,同时,你也可以跟踪源代码,进入到USB软件系统内核中,还可以个性化的增加自己的调试方法,去研究USB软件系统内核,去明白USB接口系统内核的原型机制,这样对于如何提高USB接口驱动的效率非常有帮助的,使开发的速度大大提高。另外,Linux系统时开放源代码的
11、系统,在开发成本方面是非常低的,在实验室的研究过程中,由于产品的开发进度控制比较紧密,在芯片进行FPGA功能验证的时候,就要求USB驱动程序的介入,而且要较快的满足测试的需要,这对整个芯片前期的功能上的开发和验证无疑启动巨大的推动作用,所以,选用Linux作为系统平台进行USB接口驱动程序的开发和调试时非常明智的选择。1.3USB设备接口的国内外现状现如今,USB由于其优点,被国内外电子设备厂商所青睐,几乎所有能和PC挂接的设备都带有USB接口,例如数码相机,扫描仪,游戏杆,磁带盒软驱,图像设备,打印机,键盘,鼠标等等。随着科技不断的进步,当今USB接口技术在世界电子技术中变得相当普遍,于是,
12、诞生了USN数码的概念,它是集和无线技术,手机驱动,读卡器,数码相机,mp3,mp4,手机,数码相机,数码只是数码技术,数码产品,移动硬盘,数码配件,掌上电脑,PAD,电子辞典,数码学习等众多电子设备通用USB接口概念。国内外对USB接口研究,从硬件到软件,相关的文献都比较完善,比如:如何设计开发USB硬件IP core,USB软件体系的说明和解释,如何在FPGA上验证和开发USB硬件接口,等等。但是此类文件只能作为相关的参考书,在开发相关项目的时候,可以起到参考的作用,但是不能提供实际在工程碰到的问题相关的解决方案,另外,介绍如何编写USB接口设备驱动程序的书页很多,但很少从硬件性能,代码优
13、化的角度去叙述,另外,关于USB中断的描述,由于USB设备的中断比较特别,属于问答机制,先关文没有详细分析中孤单编写应该主题的问题。USB比串行通信接口要快的多,而且标准的目的就是要替代串行通信接口。并行通信接口也是USB要取代的目标,但比当今的并行通信接口要稍慢,不过USB在用户界面友好性方面优势很大。随着计算机性能的不断提高,计算机可以处理越来越大量的数据,同时计算机外围设备的功能与速度也在不断曾强,随之而来的需求便是希望USB可处理更快的数据传输速度,目前最新版本的USB2.0可以支持三个级别数据传输率:480Mb/s,12Mb/s与1.5Mb/s。对于诸如数码相机这样的设备,需要与计算
14、机有高性能的连接方式,高速的USB尤为适用。目前该版本USB控制在国也仍未被广泛适用。对于一些相对低速的设备USB1.1仍有一定的市场。但是,通用性,速度快的USB2.0接口无疑已经慢慢成为市场的主导,对于USB接口来说发展趋势来看,往高速发展肯定是必然的趋势,所以国内外的对USB接口研究的重点主要是在传输速度上的提升,而软件作为USB接口解决方案的一部分研究的重点应该放在如何提高USB硬件设备和主机的交互性能上,这样才能体现USB硬件接口的性能。1.4论文结构安排本课题的来源为实验室802.11b无线局域网解决方案,开发的USB驱动程序是针对每一张带有802.11b芯片无线网卡。基于USB接
15、口的有点以及Linux系统的优势,从实验室研发进度等各方面考虑,我们采用了基于Linux系统USB接口软件系统,开发802.11b无线网卡USB接口的驱动程序。本题为将从以下几个方面去论述,整个开发和研究的过程,展示相关的研究成果,同时,也总结相关的经验和教训,使读者从中得到一些启发。首先,第一章绪论,主要是论述课题的研究意义和技术背景,国内外发展状,第二章,论述802.11b芯片USB IP core硬件模块的功能和结构。第三章主要说明USB系统体系结构,并阐述如何控制USB硬件的过程和方法。第四章,深度剖析Linux USB软件体系的结构以及源代码的构成。第五章,如何完整的设计并实现具有网
16、卡属性的802.11b五项网卡的USB接口驱动程序。第2章802.11b芯片USB IP core硬件模块的功能和结构2.1USB IP core所在硬件中的位置本驱动程序是基于802.11b无线局域网芯片中的一个USB IP core进行开发的,也就是说硬件要具有USB2.0设备的属性,就必须带有此硬件模块,使得该芯片变成USB设备,通过该接口与USB主机完成数据通信。换句话说,驱动程序设备进行交互,实际上是驱动芯片中USB IP core进行交互,为了弄清楚USB IP core的位置,我们先来看整个USB硬件系统的组成,其设计分为两大部分,USB设备控制器部分和AHB接口部分。如图所示:
17、 AHB总线 PHY UTMI PL802.11b芯片IP core主机图2-1USB硬件系统的构成 2.2 USB IP core 功能结构USB IP core 就是USB控制器的核心逻辑PL(Protocol Layer)模块,负责管理所有USB数据I/O和控制通信,主要由协议引擎,分组组装器,分组拆装器,端点控制器等三个部分组成。协议引擎(Protocol Layer)处理所有标准的USB握手信号和控制通信。分组组装器组装分组兵送入输出FIFO先组装分组头,插入适当的PID(分组标示)和校验和,然后加入数据域。分组组装器,USB IP core的数据要跟主机进行通信的话,就必须把自己的
18、数据组装成包的形式发送出去,这要在USB host controller那边才会顺利地器解析这个包,并且得出相应的数据,USB2.0接口中,所有被传送的数据都要严格按照USB协议标准规定的格式。而这一要求正是由分组组装器模块实现的。分组拆装器主要针对包处理的,根据USB2.0标准的规定,包是USB数据通信传输的最基本通信单元。如果USB2.0设备控制器手袋的事令牌包,那么该包将提供本次数据传输事物的类型,端点号和地址的指定等;如果收到的事数据包,那么要进行数据的提取和校验操作;有些情况还要进行握手的处理。所以,如何在USB设备控制器重正确地实现对包分组拆分的功能,将是实现USB协议层面功能首要
19、解决的问题,这也是在USB设备控制器中编写分组拆装器模块的必要性。端点控制器是USB IP core的核心模块,它主要完成USB事物传输控制功能。端点控制器对于协议引擎传递过来的USB包要能进行识别和翻译。如果是数据包,则从中提取出有效数据载荷,交付存储器接口和仲载器模块处理。同时该模块要能判断出当前的传输事务是如何类型,然后根据USB事务传输机制,发送正确的USB包。如果要发送的事数据包,则通过存储器接口读取RAM缓冲中有效的数据载荷,然后组装成数据包,再交付协议引擎进行出路,这个部分是USB驱动程序跟设备主要互换的模块,也就是说,其实驱动控制的设备功能模块就是这个模块。2.3 本章小结本章
20、主要介绍USB IP core 在整个USB硬件体系中的位置,以及它的功能与结构,理解好USB IP core 的硬件体系,将使我们在理解USB软件体系如何控制硬件体系的过程中有很好的帮助,一下本恩将会去描述USB软件体系如何跟硬件进行数据上的交互的。第3章 USB系统体系的结构3.1USB体系结构概述本章主要内容是关于USB的概述和一些关键的概念。USB是一种电缆总线,支持在主机和各式各样的即插即用的外设之间进行数据传输。由主机预定的标准的协议使各种设备分享USB带宽,当其它设备和主机在运行时,总线允许添加、设置、使用以及拆除外设。3.2USB系统的描述 一个USB系统主要被定义为三个部分:
21、 USB的互连; USB的设备; USB的主机。 USB的互连是指USB设备与主机之间进行连接和通信的操作,主要包括以下几方面: 总线的拓扑结构:USB设备与主机之间的各种连接方式; 内部层次关系:根据性能叠置,USB的任务被分配到系统的每一个层次; 数据流模式:描述了数据在系统中通过USB从产生方到使用方的流动方式; USB的调度:USB提供了一个共享的连接。对可以使用的连接进行了调度以支持同步数据传输,并且避免的优先级判别的开销。 USB的设备及主机的细节将讲述于后。3.2.1总线布局技术 USB连接了USB设备和USB主机,USB的物理连接是有层次性的星型结构。每个网络集线器是在星型的中
22、心,每条线段是点点连接。从主机到集线器或其功能部件,或从集线器到集线器或其功能部件,从图3_2_2中可看出USB的拓扑结构。3.2.2 USB的主机 在任何USB系统中,只有一个主机。USB和主机系统的接口称作主机控制器,主机控图3-1 总线的拓扑结构制器可由硬件、固件和软件综合实现。根集线器是由主机系统整合的,用以提供更多的连接点。3.2.3 USB的设备 USB的设备如下所示: 网络集线器,向USB提供了更多的连接点; 功能器件:为系统提供具体功能,如ISDN的连接,数字的游戏杆或扬声器。 USB设备提供的USB标准接口的主要依据: 对USB协议的运用; 对标准USB操作的反馈,如设置和复
23、位; 标准性能的描述性信息;3.3物理接口3.3.1电气特性 USB传送信号和电源是通过一种四线的电缆,图3_3_1中的两根线是用于发送信号。存在两种数据传输率:图3-2USB 的电缆USB的高速信号的比特率定为12Mbps;低速信号传送的模式定为1.5Mbps; 低速模式需要更少的EMI保护。两种模式可在用同一USB总线传输的情况下自动地动态切换。因为过多的低速模式的使用将降低总线的利用率,所以该模式只支持有限个低带宽的设备(如鼠标)。时钟被调制后与差分数据一同被传送出去,时钟信号被转换成NRZI码,并填充了比特以保证转换的连续性,每一数据包中附有同步信号以使得收方可还原出原时钟信号。 电缆
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 无线USB网卡电路设计与驱动研究 毕业论文 无线 USB 网卡 电路设计 驱动 研究

链接地址:https://www.31ppt.com/p-4137804.html