一、基于OHC的USB系统底层接口的实现(论文文献综述)
范文品[1](2011)在《基于嵌入式Linux的USBOTG IP核驱动的设计与实现》文中研究说明USB OTG(On-The-Go)作为USB技术的补充协议,弥补了USB技术特有的不对等性,极大地拓展了USB接口的应用领域,可以应用于包括智能手机、打印机、数码相机、视频采集装置等几乎所有的消费类电子设备。OTG设备同时支持USB主机和从机功能,并可以在它们之间进行自由切换,而无需拔下电缆,使任何具有OTG接口的设备都可以脱离PC机进行相互地数据通信。另外,OTG技术还具有专门节省功耗的SRP功能,使该技术可以更好的应用于各种移动手持设备之间的独立通信。首先,本论文介绍了一种自主开发的USB OTG IP核,然后重点讨论了该IP核在ARM-Linux平台上的驱动设计,并给出了一些驱动优化方法。对应于IP核的主机模块、设备模块和OTG模块,本论文设计的USB OTG驱动也分为了三大部分:主机驱动程序、设备驱动程序及OTG驱动程序。各驱动的架构、数据结构、关键函数及工作流程将会详细介绍。其中,主机驱动遵循改进了的EHCI/OHCI协议规范,并增加了DMA驱动及流水线HTD传输设计等优化方法,使得系统传输速率大有提高。最后,通过搭建的测试系统,对IP核和驱动以及优化后的驱动进行了软硬件联合在线调试,分析了一些调试过程中遇到的问题,测试结果说明了本文设计的驱动程序实现了主机功能、设备功能、主从切换功能等;优化后的驱动在一定范围内提升了USB接口传输速度。对OTG接口的产品研究有一定的参考价值。
龚云[2](2010)在《基于VxWorks的USB驱动研究与实现》文中提出自21世纪来,随着计算机技术的发展,嵌入式作为其一个分支热点,呈现巨大的市场,且逐渐成为计算机产业的主要经济增长点之一。伴随计算机发展的USB(Universal Serial Bus,通用串行总线)技术具有简单灵活、高带宽、强可靠性、易扩展及热插拔等优点,一问世就得到业界的青睐。如今USB已成为主流接口,并且已广泛应用于外设与主机的通信中。但USB在嵌入式操作系统的应用却还在发展阶段,且目前性能较稳定的Vxworks嵌入式操作系统下的USB驱动都是基于PCI主机控制器实现的,由此导致主机控制器选择范围狭窄等问题。因此,本课题主要研究Vxworks嵌入式操作系统下基于非PCI主机控制器的USB驱动。本课题以非PCI主机控制器和USB海量存储设备为研究对象,以USB协议栈为基础,在VxWorks嵌入式环境下设计开发非PCI主机控制器的驱动程序和基于非PCI主机控制器的设备驱动程序。主要完成以下工作:介绍VxWorks和USB系统,分析研究VxWorks系统的实时性以及USB物理结构、逻辑结构、传输方式等,为驱动工作打下基础。分析总结USB1.1框架,提出基于非PCI主机控制器的USB驱动构想。通过基于PCI主机控制器的USB驱动分析其可行性和设计实现方案,在此基础上设计两种方法兼容的USB驱动框架,这也是本文的创新点。阐述主控制器驱动(Host Controller Driver, HCD)程序的移植和USB海量存储设备驱动程序的编写,包括USB设备的初始化和读写控制等。最后介绍驱动程序的调试、调试过程中出现的问题、问题的分析、解决方法及测试结果。
孙尧[3](2010)在《基于ARM的USB OTG IP核主机端驱动的设计与实现》文中提出USB已经成为一种在PC与外围设备之间交换数据的通用总线接口,越来越多便携式外围设备使用USB总线接口与PC通信。但USB通信只能在主机与外围设备之间发生,为了使便携式USB设备之间进行USB通信,定义了USB2.0 OTG规范,允许便携式设备成为受限的USB主机。本课题设计验证符合USB OTG规范的IP核,并开发USB OTG IP核相关驱动,包括OTG驱动、主机端驱动、设备端驱动。其中,OTG驱动用于实现主机端和设备端角色的转换,主机端驱动实现主机功能,设备端驱动实现设备功能。OTG设备接入后,USB OTG IP核根据OTG中断请求类型,转入相应的主机、设备模式;主机模式下,主机端驱动用于实现USB OTG IP核的USB主机功能,完成与外围从设备的数据交换过程。主要内容包括:首先,论文提出了Linux下USB OTG的总体驱动框架,对OTG的原理作了阐述。其次,论文对主机端驱动设计需要参考的USB2.0协议、EHCI协议、OHCI协议做了研究分析。USB主机是USB总线的核心,它负责管理整个USB总线的信息,发起事物传输。再次,Linux操作系统以其开放性、良好的可移植性、不付费等特点成为嵌入式操作系统开发的首选。Linux提供了比较完善的USB驱动体系,大大地缩短开发周期。通过对Linux操作系统中关于USB主机端驱动体系的研究,作者提出高速、全速主机控制器驱动框架,并编写了该主机驱动。最后,论文介绍了USB OTG IP系统的测试开发平台、驱动程序的调试方法、调试过程并对调试过程中遇到的问题进行了分析与解决,给出了测试结果及结论。USB OTG IP核已经在Realview EB开发板上进行充分验证测试。FPGA测试结果表明其硬件和驱动的设计实现了系统的有限主机与设备的功能,有较好的应用价值。
唐祎玲,陈轶[4](2010)在《基于OHCI的USB主机控制器驱动设计》文中研究指明以USB 1.1版本协议和OHCI 1.0版本协议为基础,开发基于S3C2410处理器的USB主机控制器的驱动程序。使具有S3C2410的嵌入式系统拥有USB主机功能,能够连接USB鼠标、键盘、摄像头等USB设备。
熊明[5](2009)在《基于嵌入式Linux的USB2.0 OTG IP驱动程序研究与设计》文中指出USB接口以其可热插拔、高传输速率等特点成为许多便携式外围设备的通用接口,但通常USB接口不支持两个USB外围设备之间的直接通信。OTG的出现解决了这一问题,支持OTG规范的USB OTG双重角色设备既可以实现主机功能,又可以实现标准设备功能,使得支持OTG规范的外围设备能够充当主机与标准设备直接通信,而不需要PC的参与,此外两个支持OTG规范的外围设备也能直接通信。同时,嵌入式Linux操作系统以其源码开放和免费等特点成为一种广泛应用的嵌入式操作系统。实现OTG功能关键在于实现USB OTG接口控制芯片和相应的USB驱动程序。在本课题中,作者设计出基于嵌入式Linux的USB OTG驱动程序,并配合自主设计的USB2.0 OTG IP实现了OTG功能。本文首先介绍了课题自主开发的基于ARM芯片的USB2.0 OTG接口IP核,它主要包括高速主机、全速主机、设备和OTG四个模块;然后详细分析了嵌入式Linux的USB驱动系统,其中包括USB主机和设备驱动系统、相关数据结构和函数、以及OTG驱动的工作原理;接着,根据该IP的设计需求,提出了驱动程序的总体架构。该框架主要分为三个部分:OTG驱动、主机端驱动和设备端驱动;紧接着分别阐述了USB主机端和设备端驱动程序的调度思想;最后在嵌入式Linux基础上开发和设计出该USB2.0 OTG接口IP核的驱动程序。论文最后讨论了整个硬件和软件的测试平台、驱动程序的调试方法、驱动程序的测试流程,并给出了测试结果以及测试结论。通过分析该USB2.0 OTG IP驱动程序的测试结果表明,该驱动程序和USB2.0 OTG IP硬件实现了预期USB主机功能、USB设备功能以及OTG主从切换功能,为OTG功能产品的进一步应用开发奠定了基础。
朱宇[6](2009)在《基于Linux的USB2.0 OTG IP核主机驱动的研究与实现》文中进行了进一步梳理USB是数字有线通信设备应用十分广泛的接口之一,但USB接口两端的设备有主从之分,因此USB接口不支持任意两个USB设备之间的直接通信。OTG的出现解决了这一问题,支持OTG规范的USB OTG双重角色设备既可以实现主机功能,又可以实现标准设备功能,使得该设备可以实现与任意USB主机或设备间的通信,此外两个支持OTG规范的设备也能直接通信。本文介绍一种基于ARM芯片的USB2.0 OTG接口的IP核设计,主要对其在Linux下的主机控制器设备驱动的设计做详细讨论。本论文基于的课题设计的USB2.0 OTG IP核支持USB2.0协议、OTG补充规范、UTMI+协议。该IP核的一侧通过UTMI+的PHY与OTG设备通信;另一侧通过存储器控制器与ARM嵌入式系统相连,使得ARM访问IP核如同访问存储器。该IP硬件包括OTG控制器(OTGC)、高速主机控制器(EHC)、全速主机控制器(OHC)以及设备控制器(DC)。与本论文相关的硬件模块是主机端EHC和OHC模块,本IP设计的特点在于其具有OTG功能,主机端同时具有全速与高速主机控制器,而且本IP独立于MCU,不具有总线控制权的接口模块设计,其与MCU的数据交互均通过中断服务程序完成。USB主机功能由USB主机控制器硬件和USB主机驱动共同实现。USB主机驱动是一个复杂的软件体系,在Linux系统中,USB主机驱动分为USB设备类驱动、USB核心驱动(USBD)、USB主机控制器驱动(HCD)几个层次。本论文详细研究的HCD是USB主机驱动中与硬件结合最紧密的一层,它是上层驱动与下层硬件沟通的桥梁。HCD实现了主机控制器的管理、应用程序数据到USB数据的转化、传输的管理、设备的管理等重要功能。本论文首先仔细研究了Linux系统内核中的USB主机协议栈,在此基础上构建USB驱动的框架。根据上层驱动框架、IP核硬件设计,结合本IP核与ARM嵌入式系统之间的接口分析,实现USB全速和高速主机控制器驱动的功能部分。由于IP硬件设计的特殊性,主机控制器驱动的设计需要考虑到高速与全速控制器的路由切换与缓存区的共享,以及ARM访问作为SLAVE的IP核的方式。最后介绍了该驱动作为Linux内核的一个模块,与IP核结合,在基于Linux的ARM测试平台上运行和测试,并分析了结果。分析大规模存储功能测试的结果,该系统实现了预期USB全速与高速主机功能,并能成功切换。为进一步应用OTG功能开发奠定基础。
余勇志[7](2009)在《嵌入式USB主机控制器的研究与设计》文中指出随着信息技术的飞速发展,通用串行总线(USB)以其高速、支持多种传输类型、即插即用等优点被广泛应用于便携式设备。但传统的USB系统采用主从的方式进行设计,使得USB设备间的数据交换很难脱离PC机在移动领域中得到广泛的应用。所以有必要研究USB主机端在移动领域或嵌入式平台的实现,使得USB系统在移动性、便携性等方面满足新的需求。SOPC片上可编程系统和嵌入式系统是当前电子设计领域中最热门的概念。NiosII是Altera公司开发的一种嵌入式处理器软核,可以将它嵌入到FPGA内部,与用户自定义逻辑组建成一个基于FPGA的片上专用系统。USB主机端也可以通过SOPC技术集成到嵌入式系统中。论文在综合考虑各种应用情况的基础上,以USB技术和嵌入式系统技术为理论基础,对USB主机端的工作原理进行了深入研究,合理的改进了USB主机端在嵌入式环境下所需要的功能,设计一个可集成在移动便携式产品的USB主机控制器。论文主要包括以下几个方面:(1)在研究USB系统的传输原理和通信协议的基础上,针对传统USB主机端主从工作模式、不能脱离PC机独立运行等缺点,设计基于NiosII的嵌入式USB主机控制器的系统。(2)对嵌入式USB主机控制器的功能模块进行了详细的划分,包括:Avalon总线接口模块,解码模块,编码模块,拆包模块,组包模块,控制逻辑模块,CRC校验模块,FIFO模块,对每一个模块的原理和功能进行了分析,并使用Verilog HDL硬件描述语言对各个功能模块进行了设计。(3)对嵌入式USB主机控制器驱动进行了详细的设计,完成了主机控制器驱动对主机控制器的访问和控制,数据传输带宽的分配,传输列表的管理,端点描述符的管理等功能。(4)对嵌入式USB主机控制器进行了功能仿真和FPGA验证,实验结果表明,数据传输正确、可靠。实验结果表明,论文所提出的基于NiosII的嵌入式USB主机控制器方案有效可行,摆脱了传统USB系统不能脱离PC机应用的局面,拥有广阔的发展前景。
廖文兵[8](2008)在《USB2.0 OTG IP核全速主机控制器研究与设计》文中研究指明越来越多便携式外围设备使用USB接口与PC通信,但通常USB接口不支持两个USB外围设备之间的直接通信。OTG的出现解决了这一问题,支持OTG规范的USB OTG双重角色设备既可以实现主机功能,又可以实现标准设备功能,使得支持OTG规范的外围设备能充当主机与标准设备直接通信,而不需要PC的参与,此外两个支持OTG规范的外围设备也能直接通信。本文介绍一种基于ARM芯片的USB2.0 OTG接口IP设计,主要对其中的全速主机控制器模块设计和IP核的验证进行讨论。该USB2.0 OTG IP核支持USB2.0协议、OTG补充规范、UTMI+协议、OHCI以及EHCI协议。该IP核的一侧通过UTMI+的PHY与OTG设备通信;另一侧通过存储器控制器与ARM相连,使得ARM访问IP核如同访问存储器。USB2.0 OTG IP核主要包括OTG控制器(OTGC)、高速主机控制器(EHC)、全速主机控制器(OHC)以及设备控制器(DC)。基于标准OHCI协议设计的全速主机控制器具有总线控制权,是一个MASTER,而本IP核独立于MCU作为不具有总线控制权的接口模块设计,其与MCU的数据交互均通过中断服务程序完成,是一个SLAVE。所以在全速主机控制器模块设计中,对OHCI协议规定的用于表述端点描述符和传输描述符的数据结构以及事务调度过程进行一定的改进,由存储在片外存储器的链表结构改成存储在片内缓冲区的顺序表结构,从而实现了不具有总线控制权的全速主机控制器。本人在项目中完成的工作主要有全速主机控制器的硬件设计与IP核的EDA验证。全速主机控制器包括如下模块:OHCGR、OHCUSC、OHCLPB、OHCBC、OHCSIE和OHCRH。OHCGR完成全局软、硬复位控制;OHCUSC实现USB状态跳转控制;OHCLPB完成USB主机事务调度;OHCBC控制OHCLPB和OHCSIE对片内缓冲区的访问;OHCSIE用于解析USB协议,包括解包组包;OHCRH实现设备连接、断开、复位、挂起与恢复等功能。本IP核的EDA验证采用Synopsys的VIP作为UTMI+接口侧的激励,ARM侧则是按照s3c2410的规格编写的存储器控制器、DMA控制器和中断控制器的行为级代码以模拟ARM的功能,这样做主要是为了减少ARM侧验证的复杂度。本IP核的FPGA测试分两步走,首先测试高速主机控制器、全速主机控制器和设备控制器的功能,以确保IP核能独立作为标准主机和标准设备使用,当这三个模块的功能均实现后,再将这三个模块与OTG控制器一起联调以测试IP核的OTG功能。目前全速主机控制器的功能已全部实现,在FPGA下能实现文件的正常传输。
邓文婷[9](2008)在《基于ARM的嵌入式USB主/从接口设计》文中认为USB总线作为一种新型计算机总线,其即插即用、热插拔、接口体积小巧等优点给计算机外设连接技术带来重大变革。简单说来,USB系统包括:USB主机和USB设备。USB外设的开发和基于PC机的USB主机技术已经相当成熟。相对于PC机上的丰富资源,嵌入式系统中有限的资源给基于嵌入式系统的USB主机系统开发带来了很大难度。嵌入式USB系统的研究和开发将更进一步拓宽USB接口技术的应用领域。如何将USB应用到嵌入式领域,实现USB的点对点通讯,成为目前USB研究领域的热点。本系统中选用了Samsung公司的S3C4480芯片作为主CPU,使用Cypress公司的SL811HS芯片作为USB主机控制器,Philips公司的PDIUSBD12芯片作为USB接口芯片,构建了USB主/从控制系统。论文根据设计要求,首先分析了USB1.1协议,对USB的系统体系、数据通信模型、数据包格式、USB标准描述符进行了深入剖析;其次,在仔细分析SL811HS芯片的基础上,重点研究了USB大容量存储设备类规范和FAT32文件系统,进行了主控制器驱动程序和USB核心驱动程序的设计,并建立了USB主机与Mass Storage类设备之间的逻辑通信模型;论文也对USB接口芯片PDIUSBD12进行了深入分析,在进行固件设计的基础上,还深入研究了WindowsXP环境下基于WDM结构的USB驱动程序设计,完成了驱动程序和应用程序的设计。论文针对嵌入式USB系统进行了分析和研究,最终根据文中所提出的方案,设计了无操作系统的嵌入式USB主机和基于WindowsXP开发的USB从机系统。
于德津[10](2007)在《基于TI 5409 DSP处理器的U盘读写系统设计与实现》文中研究指明随着USB总线的普及和发展,人们对USB的期望越来越高,希望USB不仅能应用在PC领域,还能应用在更广泛的计算机领域,例如:嵌入式系统领域,所以开发基于嵌入式处理器的USB主机系统成为USB技术研究的热点。本文设计并实现了一种基于DSP处理器的U盘读写系统。用TMS320VC5409 DSP芯片、CH375 USB主从接口芯片、LCD12864液晶显示器、Lattice2128 CPLD芯片、HD7279芯片、单片机90C32芯片、74LVC16245芯片和TPS767D318芯片构建了系统硬件平台,并在此硬件平台上实现了3个I/O操作函数、14个USB固件函数、中断服务程序、LCD液晶显示驱动程序、4*4键盘控制程序,在以上底层函数或程序的基础上,实现了U盘存储器级读写软件和文件级读写软件。经测试,本U盘读写系统支持U盘的热插拔,能自动识别并配置U盘,能稳定的以扇区为单位读写U盘中的数据,还能对U盘进行文件操作。文件操作包括:新建文件、删除文件、枚举文件、打开文件、读写文件、关闭文件和定位文件等。此U盘读写系统具有实用价值,能够帮助DSP应用系统实现海量数据存储、数据交换、数据更新、软件升级和驱动USB设备等功能。
二、基于OHC的USB系统底层接口的实现(论文开题报告)
(1)论文研究背景及目的
此处内容要求:
首先简单简介论文所研究问题的基本概念和背景,再而简单明了地指出论文所要研究解决的具体问题,并提出你的论文准备的观点或解决方法。
写法范例:
本文主要提出一款精简64位RISC处理器存储管理单元结构并详细分析其设计过程。在该MMU结构中,TLB采用叁个分离的TLB,TLB采用基于内容查找的相联存储器并行查找,支持粗粒度为64KB和细粒度为4KB两种页面大小,采用多级分层页表结构映射地址空间,并详细论述了四级页表转换过程,TLB结构组织等。该MMU结构将作为该处理器存储系统实现的一个重要组成部分。
(2)本文研究方法
调查法:该方法是有目的、有系统的搜集有关研究对象的具体信息。
观察法:用自己的感官和辅助工具直接观察研究对象从而得到有关信息。
实验法:通过主支变革、控制研究对象来发现与确认事物间的因果关系。
文献研究法:通过调查文献来获得资料,从而全面的、正确的了解掌握研究方法。
实证研究法:依据现有的科学理论和实践的需要提出设计。
定性分析法:对研究对象进行“质”的方面的研究,这个方法需要计算的数据较少。
定量分析法:通过具体的数字,使人们对研究对象的认识进一步精确化。
跨学科研究法:运用多学科的理论、方法和成果从整体上对某一课题进行研究。
功能分析法:这是社会科学用来分析社会现象的一种方法,从某一功能出发研究多个方面的影响。
模拟法:通过创设一个与原型相似的模型来间接研究原型某种特性的一种形容方法。
三、基于OHC的USB系统底层接口的实现(论文提纲范文)
(1)基于嵌入式Linux的USBOTG IP核驱动的设计与实现(论文提纲范文)
摘要 |
ABSTRACT |
第一章 引言 |
1.1 USB 技术的发展现状 |
1.2 课题研究目标 |
1.3 本论文的主要工作 |
第二章 USB 协议族及Linux 驱动架构 |
2.1 USB2.0 传输协议 |
2.1.1 USB 系统拓扑结构 |
2.1.2 USB 总线特性 |
2.1.3 USB 总线通道 |
2.1.4 通信模型 |
2.2 OTG 规范 |
2.2.1 OTG 特性简介 |
2.2.2 SRP |
2.2.3 HNP |
2.3 EHCI/OHCI 规范 |
2.4 Mass Storage 规范 |
2.5 嵌入式linux USB 驱动 |
2.5.1 嵌入式linux 下的设备驱动框架 |
2.5.2 嵌入式Linux USB 驱动架构分析 |
2.6 本章小结 |
第三章 OTG 系统设计 |
3.1 USB OTG 系统结构 |
3.2 USB OTG IP 核结构 |
3.2.1 总线接口单元模块 |
3.2.2 OTG 控制器模块 |
3.2.3 DC 模块 |
3.2.4 HC 模块 |
3.3 本章小结 |
第四章 OTG IP 驱动设计及优化 |
4.1 USB2.0 OTG 系统驱动设计思想 |
4.1.1 系统流程总体思想 |
4.1.2 系统驱动设计思想 |
4.2 主机端驱动设计 |
4.2.1 USB 主机驱动模块 |
4.2.2 USB 主机驱动流程 |
4.3 设备端驱动设计 |
4.3.1 USB 设备驱动模块 |
4.3.2 USB 设备驱动流程 |
4.4 OTG 驱动设计 |
4.5 主机端驱动优化 |
4.5.1 DMA 驱动 |
4.5.2 流水线htd |
4.6 本章小结 |
第五章 OTG IP 驱动调试及结果 |
5.1 测试系统 |
5.1.1 硬件平台 |
5.1.2 软件环境 |
5.2 驱动测试过程遇到的问题分析及解决 |
5.2.1 中断问题 |
5.2.2 linux 资源注册问题 |
5.2.3 跨时钟域问题 |
5.2.4 U 盘格式化问题 |
5.2.5 htd 传输问题 |
5.3 测试结果 |
5.3.1 OTG 功能测试 |
5.3.2 设备功能测试 |
5.3.3 主机功能测试 |
5.3.4 速度测试 |
5.4 本章小结 |
第六章 总结与展望 |
6.1 总结 |
6.2 展望 |
致谢 |
参考文献 |
个人简历、在学期间的研究成果 |
(2)基于VxWorks的USB驱动研究与实现(论文提纲范文)
摘要 |
ABSTRACT |
第1章 引言 |
1.1 课题来源及背景 |
1.1.1 课题来源 |
1.1.2 技术背景 |
1.1.3 应用背景 |
1.2 研究内容 |
1.3 研究难点及创新 |
1.4 论文结构 |
第2章 VxWorks5.5实时操作系统 |
2.1 VxWorks5.5内核 |
2.1.1 任务管理 |
2.1.2 任务通信 |
2.1.3 中断处理与定时机制 |
2.2 VxWorks5.5文件系统 |
2.3 Tornado开发工具 |
2.4 小结 |
第3章 USB系统 |
3.1 USB设备结构 |
3.1.1 USB接口芯片 |
3.1.2 USB设备的软件结构 |
3.2 USB主机结构 |
3.2.1 主机硬件 |
3.2.2 主机软件 |
3.3 数据传输 |
3.3.1 控制传输 |
3.3.2 批量传输 |
3.3.3 中断传输 |
3.3.4 同步传输 |
3.4 小结 |
第4章 基于非PCI主机控制器的驱动方案设计 |
4.1 方案的理论基础 |
4.1.1 USBD详解 |
4.1.2 HCD |
4.1.3 PCI库 |
4.2 基于非PCI主机控制器的驱动方案实现与扩展 |
4.2.1 基于PCI主机控制器的驱动方案分析 |
4.2.2 基于非PCI主机控制器的驱动方案实现 |
4.2.3 方案扩展 |
4.3 小结 |
第5章 基于非PCI主机控制器的USB驱动实现 |
5.1 开发环境 |
5.2 HCD的移植 |
5.2.1 主机控制器的介绍 |
5.2.2 主机控制器的移植方案 |
5.2.3 HCD程序调试 |
5.3 海量存储设备驱动的实现 |
5.3.1 海量存储设备驱动程序的编写 |
5.3.2 海量存储设备驱动的调试 |
5.4 小结 |
第6章 总结及展望 |
6.1 总结 |
6.2 展望 |
致谢 |
参考文献 |
附录A 调试平台 |
附录B 部分程序代码 |
攻读学位期间的研究成果 |
(3)基于ARM的USB OTG IP核主机端驱动的设计与实现(论文提纲范文)
摘要 |
ABSTRACT |
第一章 引言 |
1.1 USB OTG 发展概述 |
1.2 Linux 简介 |
1.3 论文研究的目的和意义 |
1.4 本论文的主要工作 |
第二章 USB OTG 相关协议研究与分析 |
2.1 USB 协议分析 |
2.1.1 USB 系统 |
2.1.2 OTG 补充协议 |
2.2 OHCI 和EHCI 协议分析 |
2.2.1 OHCI 协议规范 |
2.2.2 EHCI 协议规范 |
2.3 本章小结 |
第三章 USB OTG 主机驱动程序的设计与实现 |
3.1 USB OTG IP 核硬件设计分析 |
3.1.1 IP 核系统框图 |
3.1.2 IP 核各个模块简单介绍 |
3.2 Linux USB OTG 整体驱动框架 |
3.3 Linux USB 主机端驱动体系结构 |
3.3.1 USB 设备类驱动 |
3.3.2 USB 核心驱动层实现原理 |
3.3.3 主机控制器驱动层实现原理 |
3.4 USB 主机的工作过程 |
3.5 USB 主机端驱动的调度机制 |
3.6 USB OTG IP 主机控制器驱动程序设计 |
3.6.1 主机控制器驱动软件工作流程 |
3.6.2 主机控制器驱动结构 |
3.6.3 平台驱动、设备注册接口实现 |
3.6.4 与操作系统内核接口实现 |
3.6.5 Root hub 接口函数实现 |
3.6.6 EHCI driver 层分析 |
3.7 本章小结 |
第四章 系统开发测试平台介绍及驱动程序的调试与测试 |
4.1 系统开发平台介绍及搭建 |
4.1.1 开发板简介 |
4.1.2 Realview EB 硬件系统构成 |
4.1.3 USB OTG IP 核与ARM 系统之间的中断信号分析 |
4.1.4 平台搭建 |
4.2 驱动程序的调试与测试 |
4.2.1 主机驱动调试遇到的问题与解决 |
4.2.2 主机驱动测试与分析 |
4.2.3 系统功能测试 |
4.3 本章小结 |
第五章 总结与展望 |
5.1 总结 |
5.2 展望 |
致谢 |
参考文献 |
个人简历、在学期间的研究成果以及发表的学术论文 |
(4)基于OHCI的USB主机控制器驱动设计(论文提纲范文)
0 引 言 |
1 OHCI标准简介 |
1.1 HCI接口标准 |
1.2 OHCI的数据结构 |
1.3 OHC和OHCD的功能描述 |
2 基于S3C 2410的USB主机控制器驱动程序设计 |
2.1 主机控制器的初始化和管理 |
2.2 为USBD层提供相应的接口函数 |
2.3 链表处理及资源调度 |
2.4 虚拟根集线器 |
3 结束语 |
(5)基于嵌入式Linux的USB2.0 OTG IP驱动程序研究与设计(论文提纲范文)
摘要 |
ABSTRACT |
第一章 引言 |
1.1 USB OTG 技术的研究发展状况 |
1.2 嵌入式Linux 操作系统概论 |
1.3 课题研究目标 |
1.4 本人工作任务 |
1.5 本论文的安排 |
第二章 传输协议 |
2.1 USB2.0 总线协议 |
2.2 USB 拓扑结构 |
2.2.1 USB 总线传输协议 |
2.2.2 USB 系统的工作原理 |
2.3 OTG 补充协议 |
2.4 海量存储类规范与SCSI 命令 |
2.5 OHCI 与EHCI 传输协议 |
第三章 USB2.0 OTG IP 核总体结构设计 |
3.1 USB2.0 OTG IP 核硬件框架 |
3.2 OTG 控制器设计 |
3.3 主机控制器设计 |
3.3.1 高速主机控制器 |
3.3.2 全速主机控制器 |
3.4 设备控制器设计 |
3.5 USB2.0 OTG IP 核工作流程 |
第四章 嵌入式Linux 的USB 驱动系统的研究与分析 |
4.1 嵌入式Linux 的USB 驱动系统的设计思想 |
4.2 嵌入式Linux 的USB 驱动系统结构 |
4.2.1 USB 主机端驱动系统 |
4.2.2 USB 设备端驱动系统 |
4.3 嵌入式Linux 下的OTG 功能分析 |
第五章 USB2.0 OTG 驱动程序的设计 |
5.1 USB2.0 OTG 系统软件结构 |
5.2 USB2.0 OTG 驱动调度思想 |
5.2.1 主机端驱动调度思想 |
5.2.2 设备端驱动调度思想 |
5.2.3 OTG 驱动调度思想 |
5.3 USB2.0 OTG 驱动设计 |
5.3.1 主机控制器驱动设计 |
5.3.2 设备控制器驱动设计 |
5.3.3 OTG 驱动程序设计 |
第六章 USB2.0 OTG 驱动程序的调试与测试 |
6.1 测试平台 |
6.2 开发调试环境 |
6.3 驱动程序调试 |
6.4 驱动程序测试流程与结果 |
6.4.1 OTG 功能测试 |
6.4.2 主机功能测试 |
6.4.3 设备功能测试 |
6.5 测试结果分析 |
第七章 总结与展望 |
7.1 总结 |
7.2 展望 |
致谢 |
参考文献 |
个人简历、在学期间的研究成果及发表的学术论文 |
(6)基于Linux的USB2.0 OTG IP核主机驱动的研究与实现(论文提纲范文)
摘要 |
ABSTRACT |
第一章 引言 |
1.1 USB 发展概述及课题背景 |
1.2 论文课题设计目标 |
1.3 本人的主要工作 |
1.4 论文结构的安排 |
第二章 嵌入式系统与 Linux 设备驱动开发 |
2.1 嵌入式 Linux 开发概述 |
2.1.1 嵌入式系统的定义和特点 |
2.1.2 嵌入式技术的发展历史 |
2.1.3 嵌入式Linux 的优势 |
2.1.4 嵌入式Linux 内核功能划分 |
2.2 设备驱动概述 |
2.2.1 设备驱动在操作系统中的作用 |
2.2.2 Linux 驱动程序分类 |
2.3 嵌入式 Linux 驱动开发的流程 |
2.4 本章总结 |
第三章 基于ARM 的嵌入式系统硬件分析与接口设计 |
3.1 S3C2410 嵌入式系统介绍 |
3.2 系统硬件设计 |
3.3 USB 2.0 OTG IP 核硬件分析 |
3.3.1 IP 核系统框架 |
3.3.2 IP 核系统路由切换机制 |
3.4 IP 核与ARM 系统接口设计 |
3.4.1 片选信号接口的设计 |
3.4.2 地址接口的设计 |
3.4.3 中断接口的设计 |
3.5 本章总结 |
第四章 USB 接口协议及 Linux USB 协议栈分析 |
4.1 USB 2.0 OTG 接口协议的研究 |
4.1.1 USB 系统结构 |
4.1.2 USB 传输类型 |
4.1.3 OTG 补充规范 |
4.1.4 USB 主机体系 |
4.1.5 OHCI 协议规范 |
4.1.6 EHCI 协议规范 |
4.2 Linux2.6 中 USB 主机协议栈分析 |
4.2.1 Mass Storage 驱动层分析 |
4.2.2 USBD 驱动层分析 |
4.2.3 HCD 驱动层分析 |
4.2.4 Linux USB 驱动协议栈工作机制 |
4.3 本章总结 |
第五章 OTG USB2.0 IP 核主机控制器驱动的设计实现 |
5.1 基于USB 2.0 OTG IP 核主机控制驱动设计思路 |
5.2 全速主机控制器驱动数据结构设计 |
5.2.1 数据结构otgip_ohc 实现 |
5.2.2 数据结构otgip_ohc_ep 实现 |
5.3 全速主机注册平台设备驱动(platform_driver)实现 |
5.3.1 全速主机平台设备注册和资源申请 |
5.3.2 全速主机平台设备资源获取与销毁 |
5.4 全速主机中断服务函数(otgip_ohc_irq)实现 |
5.5 Root Hub driver 实现 |
5.5.1 otgip_ohc_hub_status_data 函数实现 |
5.5.2 otgip_ohc_hub_control 函数实现 |
5.5.3 Root driver 运行流程 |
5.6 全速主机控制器管理驱动实现 |
5.6.1 otgip_ohc_start 函数实现 |
5.6.2 otgip_ohc_stop 函数实现 |
5.6.3 otgip_ohc_reset 函数实现 |
5.7 全速 OHCI driver 实现 |
5.7.1 OHCI driver 数据转移分析 |
5.7.2 OHCI driver 各函数调用关系 |
5.7.3 otgip_ohc_urb_enqueue 函数实现 |
5.7.4 otgip_ohc_urb_dequeue 函数实现 |
5.7.5 otgip_ohc_start_atl_transfers 函数实现 |
5.7.6 otgip_ohc_finish_atl_transfers 函数实现 |
5.7.7 otgip_ohc_finish_request 函数实现 |
5.8 高速主机驱动设计 |
5.8.1 高速Root Hub driver 设计考虑 |
5.8.2 EHCI driver 设计考虑 |
5.9 本章总结 |
第六章 主机控制器驱动的调试 |
6.1 Root Hub driver 的调试 |
6.2 OHCI driver 的调试 |
6.3 字符设备驱动嵌入调试法 |
6.4 本章总结 |
第七章 基于FPGA 的USB 2.0 OTG IP 核主机驱动的测试 |
7.1 系统硬件测试平台的搭建 |
7.2 系统软件测试平台的搭建 |
7.3 主机驱动测试演示 |
7.4 系统测试结果分析 |
7.4.1 全速主机控制器与驱动测试结果分析 |
7.4.2 高速主机控制器与驱动测试结果分析 |
7.5 本章总结 |
第八章 总结与展望 |
8.1 总结 |
8.2 展望 |
致谢 |
参考文献 |
个人简历、在学期间的研究成果以及发表的学术论文 |
(7)嵌入式USB主机控制器的研究与设计(论文提纲范文)
摘要 |
ABSTRACT |
1 引言 |
1.1 USB 出现及现状 |
1.2 USB 的特点 |
1.3 国内外研究现状 |
1.4 嵌入式USB 主机的前景 |
1.5 论文的工作 |
2 USB 系统介绍 |
2.1 USB 体系结构 |
2.1.1 USB 系统的组成 |
2.1.2 USB 系统的层次结构 |
2.2 USB 的物理接口特性 |
2.2.1 电气特性 |
2.2.2 机械特性 |
2.3 USB 数据通信结构 |
2.3.1 USB 总线上的数据传输形式 |
2.3.2 USB 总线上的二进制序列——域 |
2.3.3 USB 总线上的基本数据单元——包 |
2.3.4 USB 总线上的传输类型 |
2.4 USB 主机控制规范 |
2.4.1 开放主机控制器层次结构 |
2.4.2 主机控制器接口 |
2.4.3 主机控制器驱动传输调度 |
2.4.4 主机控制器驱动的功能 |
2.4.5 主机控制器的功能 |
2.5 小结 |
3 USB 主机控制器的设计 |
3.1 USB 主机控制器的架构 |
3.1.1 Avalon 总线接口设计 |
3.1.2 SIE 设计 |
3.2 USB 主机控制器的工作流程 |
3.2.1 设备请求和设备描述符 |
3.2.2 USB 主机控制器的工作流程 |
3.3 小结 |
4 USB 主机控制器驱动的设计 |
4.1 驱动的层次结构 |
4.2 主机控制器驱动 |
4.2.1 主机控制器初始化 |
4.2.2 HCD 基本数据结构 |
4.2.3 ED 链表管理 |
4.2.4 TD 队列管理 |
4.2.5 完成队列管理 |
4.2.6 带宽管理 |
4.3 USB 驱动 |
4.4 小结 |
5 仿真与调试 |
5.1 USB 主机控制器的功能仿真 |
5.1.1 仿真平台的搭建 |
5.1.2 仿真与测试结果 |
5.2 FPGA 验证 |
5.2.1 主机控制器的综合 |
5.2.2 基于NiosⅡ主机控制器SOPC 系统的定制 |
5.2.3 FPGA 验证系统平台 |
5.2.4 SignalTabII |
5.2.5 验证流程 |
5.3 小结 |
6 总结与展望 |
致谢 |
参考文献 |
附录 |
A. 研究生期间发表或录用的论文 |
(8)USB2.0 OTG IP核全速主机控制器研究与设计(论文提纲范文)
摘要 |
ABSTRACT |
第一章 引言 |
1.1 USB OTG 协议及国外研究发展状况 |
1.2 USB 国内研究发展状况 |
1.3 课题设计目标 |
1.4 本人工作任务 |
1.5 本论文的安排 |
第二章 USB2.0 OTG 总线协议 |
2.1 USB2.0 协议总揽 |
2.2 USB 系统的结构 |
2.2.1 USB 主机 |
2.2.2 USB 设备 |
2.3 传输类型 |
2.3.1 控制传输 |
2.3.2 同步传输 |
2.3.3 中断传输 |
2.3.4 批量传输 |
2.4 OTG 补充规范 |
2.5 OTG 电气规范 |
2.6 UTMI+接口规范 |
第三章 OHCI 协议规范 |
3.1 USB 主机体系 |
3.2 OHCI 数据结构 |
3.2.1 列表结构 |
3.2.2 端点描述符 |
3.2.3 传输描述符 |
3.3 主机控制器驱动程序 |
3.3.1 主机控制器管理 |
3.3.2 带宽分配 |
3.3.3 列表管理 |
3.4 主机控制器 |
3.4.1 USB 状态控制 |
3.4.2 帧管理 |
3.4.3 列表处理 |
3.5 OHCI 操作寄存器 |
第四章 USB2.0 OTG IP 核全速主机控制器设计 |
4.1 USB2.0 OTG IP 核系统结构 |
4.2 模块功能简介 |
4.3 数据传输方式 |
4.3.1 PIO 方式 |
4.3.2 DMA 方式 |
4.4 全速主机控制器详细设计方案 |
4.4.1 GR 模块设计 |
4.4.2 USC 模块设计 |
4.4.3 LPB 模块设计 |
4.4.4 BC 模块设计 |
4.4.5 SIE 模块设计 |
4.4.6 RH 模块设计 |
第五章 全速USB 事务调度技巧 |
5.1 标准OHCI 协议的USB 事务调度 |
5.1.1 OHCI 协议的USB 主机软硬件交互通道 |
5.1.2 OHCI 协议中USB 事务调度 |
5.2 本设计中USB 事务调度 |
5.2.1 数据结构 |
5.2.2 全速USB 事务调度过程 |
5.3 避免多时钟域处理 |
第六章 USB2.0 OTG IP 核的EDA 验证及FPGA 测试 |
6.1 验证的意义 |
6.2 USB2.0 OTG IP 核验证平台搭建 |
6.2.1 USB2.0 OTG BFM |
6.2.2 ARM 控制 |
6.2.3 SRAM |
6.3 USB2.0 OTG IP 核仿真验证 |
6.3.1 全速主机控制器功能仿真 |
6.3.2 IP 核的EDA 验证 |
6.4 USB2.0 OTG IP 核的FPGA 测试 |
6.4.1 FPGA 测试平台硬件介绍 |
6.4.2 FPGA 测试平台软件介绍 |
6.4.3 FPGA 测试结果 |
第七章 总结与展望 |
7.1 总结 |
7.2 展望 |
致谢 |
参考文献 |
个人简历、在学期间的研究成果及发表的学术论文 |
(9)基于ARM的嵌入式USB主/从接口设计(论文提纲范文)
摘要 |
Abstract |
第1章 绪论 |
1.1 课题研究的背景 |
1.1.1 嵌入式系统简介 |
1.1.2 USB的起源与发展 |
1.1.3 USB的特点 |
1.2 论文的内容安排 |
第2章 USB通信协议简介 |
2.1 USB体系结构 |
2.1.1 USB系统描述 |
2.1.2 USB系统的软硬件组成及其分析 |
2.2 USB基本规范的发展过程 |
2.3 USB的机械和电气特性 |
2.4 USB数据通信协议 |
2.4.1 二进制数的序列——域 |
2.4.2 最基本数据单元——包 |
2.4.3 数据传输类型 |
2.4.4 数据流模型 |
2.4.5 USB设备枚举 |
第3章 USB主机开发 |
3.1 USB主机协议 |
3.1.1 USB主机控制器功能及结构 |
3.1.2 主控制器驱动程序 |
3.1.3 USB核心驱动程序 |
3.2 USB主机通信协议分析 |
3.2.1 标准的USB描述符 |
3.2.2 标准的USB设备请求命令 |
3.3 USB海量存储协议与文件系统 |
3.3.1 USB Mass Storage协议 |
3.3.2 Bulk-Only传输协议 |
3.3.3 Mass Storage的子类命令 |
3.3.4 FAT文件系统结构 |
3.4 SL811HS芯片及硬件设计 |
3.4.1 SL811HS芯片的特点 |
3.4.2 SL811HS的内部硬件资源 |
3.4.3 SL811HS的相关寄存器 |
3.4.4 SL811HS的引脚分布 |
3.4.5 S3C44BO芯片及引脚说明 |
3.4.6 SL811HS的硬件电路设计 |
3.5 USB主机的软件设计 |
3.5.1 ARM集成开发环境ADS简介 |
3.5.2 USB主机协议软件设计 |
3.5.3 Mass Storage类协议软件实现 |
3.5.4 文件系统实现 |
3.5.5 系统软件流程 |
第4章 USB从机开发 |
4.1 PDIUSBD12芯片及硬件设计 |
4.1.1 PDIUSBD12芯片介绍 |
4.1.2 PDIUSBD12的引脚分布 |
4.1.3 PDIUSBD12的主要命令 |
4.1.4 PDIUSBD12的使用 |
4.1.5 PDIUSBD12的硬件电路设计 |
4.2 PDIUSBD12的固件设计 |
4.3 USB设备驱动程序及应用程序设计 |
4.3.1 WDM设备驱动程序功能 |
4.3.2 WDM设备驱动程序模型 |
4.3.3 设备驱动程序的开发工具 |
4.3.4 USB应用程序设计 |
第5章 总结与展望 |
5.1 论文工作总结 |
5.2 工作展望 |
致谢 |
参考文献 |
附录A(系统硬件原理图) |
附录B(研究生期间发表的论文与参加的项目) |
(10)基于TI 5409 DSP处理器的U盘读写系统设计与实现(论文提纲范文)
提要 |
第一章 绪论 |
1.1 引言 |
1.2 研究背景与意义 |
1.2.1 研究背景 |
1.2.2 研究意义 |
1.3 主要研究工作 |
1.4 论文的结构 |
第二章 DSP 应用系统开发和USB 总线协议研究 |
2.1 嵌入式DSP 应用系统开发研究 |
2.1.1 嵌入式DSP 处理器简介 |
2.1.2 DSP 应用系统开发研究 |
2.2 USB 总线协议研究 |
2.2.1 USB 技术的发展 |
2.2.2 USB 的特点 |
2.2.3 USB 系统简介 |
2.2.4 USB 系统的逻辑分层 |
2.2.5 USB 数据通信协议 |
2.2.6 USB 设备类 |
2.2.7 USB 主机 |
第三章 U 盘读写系统总体方案设计 |
3.1 U 盘读写系统的设计方案 |
3.1.1 U 盘读写系统的硬件结构 |
3.1.2 DSP 读写U 盘需要完成的任务 |
3.2 U 盘的相关知识 |
3.2.1 U 盘的构成及工作原理 |
3.2.2 U 盘相关标准描述符 |
3.2.3 基于BULK-ONLY 传输协议的数据流模型 |
3.2.4 UFI 命令集 |
3.2.5 主机和U 盘间的数据传输 |
3.2.6 FAT 文件系统 |
3.3 本章小结 |
第四章 系统的硬件电路设计与实现 |
4.1 系统电源模块 |
4.1.1 TPS767D318 芯片 |
4.1.2 系统电源模块硬件电路设计 |
4.2 系统DSP 处理器模块 |
4.2.1 TMS320VC5409 芯片 |
4.2.2 系统DSP 处理器模块硬件电路设计 |
4.2.3 TI DSP 处理器电路设计中应注意的问题 |
4.3 系统CPLD 逻辑控制模块 |
4.3.1 CPLD 简介 |
4.3.2 CPLD 模块的硬件电路设计 |
4.3.3 CPLD 的开发流程 |
4.4 系统总线驱动模块 |
4.4.1 74LVC16245 芯片 |
4.4.2 总线驱动模块硬件电路设计 |
4.5 系统USB 主控模块 |
4.5.1 CH375 芯片 |
4.5.2 USB 主控模块硬件电路设计 |
4.6 系统键盘控制模块 |
4.6.1 HD7279 芯片 |
4.6.2 键盘控制模块硬件电路设计 |
4.7 系统液晶显示模块 |
4.7.1 MGLS-12864 液晶显示器 |
4.7.2 系统液晶显示模块硬件电路设计 |
4.8 本章小结 |
第五章 系统的软件设计与实现 |
5.1 CH375 的主控能力分析 |
5.1.1 芯片内部机制 |
5.1.2 CH375 的主控特点 |
5.1.3 CH375 提供的命令类型 |
5.1.4 系统中CH375 芯片的I/O 地址分配 |
5.2 U 盘读写系统软件架构 |
5.2.1 软件架构 |
5.2.2 系统的I/O 操作函数 |
5.2.3 系统的固件函数 |
5.2.4 中断服务程序 |
5.3 U 盘存储器级读写软件的实现 |
5.4 U 盘文件级读写软件的实现 |
5.4.1 CH375 文件系统库 |
5.4.2 U 盘文件级操作应用软件的流程 |
5.5 本章小结 |
第六章 总结与展望 |
6.1 全文总结 |
6.1.1 论文工作与成果 |
6.1.2 本U 盘读写系统的特点 |
6.1.3 心得体会 |
6.2 未来展望 |
参考文献 |
摘要 |
Abstract |
致谢 |
导师及作者简介 |
四、基于OHC的USB系统底层接口的实现(论文参考文献)
- [1]基于嵌入式Linux的USBOTG IP核驱动的设计与实现[D]. 范文品. 电子科技大学, 2011(12)
- [2]基于VxWorks的USB驱动研究与实现[D]. 龚云. 南昌大学, 2010(03)
- [3]基于ARM的USB OTG IP核主机端驱动的设计与实现[D]. 孙尧. 电子科技大学, 2010(03)
- [4]基于OHCI的USB主机控制器驱动设计[J]. 唐祎玲,陈轶. 计算机与现代化, 2010(02)
- [5]基于嵌入式Linux的USB2.0 OTG IP驱动程序研究与设计[D]. 熊明. 电子科技大学, 2009(11)
- [6]基于Linux的USB2.0 OTG IP核主机驱动的研究与实现[D]. 朱宇. 电子科技大学, 2009(11)
- [7]嵌入式USB主机控制器的研究与设计[D]. 余勇志. 重庆大学, 2009(12)
- [8]USB2.0 OTG IP核全速主机控制器研究与设计[D]. 廖文兵. 电子科技大学, 2008(04)
- [9]基于ARM的嵌入式USB主/从接口设计[D]. 邓文婷. 昆明理工大学, 2008(09)
- [10]基于TI 5409 DSP处理器的U盘读写系统设计与实现[D]. 于德津. 吉林大学, 2007(03)
标签:otg论文; 嵌入式linux论文; 通信接口论文; 功能测试论文; 程序调试论文;