- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于ohci的嵌入式usb主机控制器接口实现
基于OHCI的嵌入式USB主机控制器接口实现
The Interface Implementation of Embedded USB Host Controller Based on OHCI
(安徽大学)刘锋 韩超 汪磊峰 叶爱玲
LIU Feng HAN Chao WANG Lei-feng YE Ai-ling
摘要: 本文介绍了基于OHCI的USB主机系统的硬件核心主机控制器接口规范,分析USB协议栈的硬件层实现。结合了可重用的嵌入式USB主机系统研究课题,阐述主机控制器驱动程序开发方法,并列举了驱动程序内建的数据结构及接口函数的实现。完成了独立于操作系统的HCD 开发,最后在S3C2410平台下进行了实验验证。
关键词: USB; HC; HCD; OHCI
中图分类号:TP311 文献标识码:A
Abstract:The paper presents the interface specification of USB host controller based on OHCI,analyzes the implementation of hardware layer in USB stack.A method of developing host controller driver is described based on reusable embedded USB host system research.The key data structures and interface function which are used in the driver are also explained.A successful experiment is done on the S3C2410 platform after HCD is finished .
Keywords: USB, HC, HCD, OHCI
1引言
当前有关USB的开发,大多是针对USB外设或是USB高层驱动程序开发,少数基于单片的无OS(operating system)的USB主机开发大都是由个人完成,其软件的耦合度高、接口不够清晰、可重用性低。而LINUX中的USB主机驱动程序由于其复杂性和对系统的依赖性,对其在无OS平台上的移植带来了一定的困难。论文以Compaq、Microsoft等公开的USB主机控制器接口规范为基础,遵循USB主机的协议规范,开发了独立于操作系统的USB主机底层驱动程序,并在S3C2410平台上得到了验证。下面详细论述主机控制器接口规范及驱动程序实现。
2 USB体系结构
USB体系包括一系列的硬件层和软件层,如图1所示。
为了实现其可重用性和适合嵌入式系统特性,图1借鉴了PC机上的USB主机系统结构,同时对一些在嵌入式系统中不必要的功能进行了取舍。用户程序和USB设备类驱动通过I/O请求包(IRP)将设备操作请求发送给USBD(USB Driver)。设备驱动程序(USB Driver)加工和分解IRP,构建相应的URB(Universal Request Block)并通过HCD(Host ControllerDriver)提供的接口传递给主控制器驱动程序HCD。HCD处理URB并建立相应的端点ED和传输数据TD,其基本信息包括:USB设备地址和端点号、数据传输类型、最大包长度、传输方向、传输速度和内存缓冲区地址等,细节在下文介绍。然后启动HC(Host Controller)进行数据传输。HCD还负责主机控制器HC的管理,通过一组硬件寄存器来控制HC。HC通过USB总线与设备相连,在HCD的控制下处理数据的输入输出。HC还提供协议引擎、差错处理、远程唤醒、帧产生等功能。
HC是USB主机系统的硬件核心,它位于USB协议栈中最低层,HC向上提供一个接口规范HCI(Host Controller Interface),HCD是此接口的具体实现。目前USB的HC芯片组有三种,而随之对应的HCI也有三种:EHCI(Enhanced Host ControllerInterface);OHCI(Open Host Controller Interface);UHCI(Universal Host Controller Interface)。论文将以嵌入式系统中应用较多的OHCI为例,介绍接口规范和驱动程序实现细节。
3 HCD的实现
USB主机控制器驱动程序(HCD)是USB软件协议栈最底层一部分。HCD向上仅对USBD提供
您可能关注的文档
- 风能转换器的系统管理.doc
- 风湿病诊断标准.doc
- 蜂胶对糖尿病作用的机理.doc
- 蜂窝煤自动成型机的设计毕业课程设计(下).doc
- 非线性薛定谔方程数值解的matlab仿真.docx
- 腐蚀的基本原理.doc
- 负载均衡策略.doc
- 甘薯的基本性状与遗传育种方法的改良.doc
- 复旦大学-数字集成电路设计时序分析和验证教程.doc
- 干旱胁迫对番茄幼苗sod和pod酶活性的影响.doc
- 2025江浙沪居民睡眠健康小调研报告.pdf
- 毕业论文的开题报告范文.docx
- 团委活动方案(拓展).docx
- 汽车智能驾驶行业深度报告:端到端与AI共振,智驾平权开启新时代.pdf
- 小核酸行业深度:技术平台和适应症不断验证,迎来销售和临床密集兑现期-华福证券-2025.3.31-65页.docx
- 医药生物行业医疗AI专题报告二多组学篇AI技术驱动精准诊断实现重要突破-25031440页.docx
- CXO行业系列报告三寒冬已过行业需求逐步回暖-25031430页.docx
- 全国租赁市场报告2025年3月_可搜索.pdf
- 玩具行业“情绪经济”专题:创新玩法+IP赋能,重新定义玩具-华鑫证券-2025.docx
- 医疗保健行业PCAB抑制剂药物深度报告抑酸药物市场空间广阔PCAB抑制剂大有可为-25.pdf
文档评论(0)