基于Linux的USB OTG IP核设备驱动开发技术
发布时间:2021-07-29 16:42
OTG(On-The-Go)技术,是USB接口规范的重要扩展,主要应用于各种外围设备之间的数据交换。USB技术的发展,使PC和外围设备以简单的方式、较低的成本连接到一起。OTG技术,使外围设备之间进行数据交换而无须PC参与,极大地拓展了USB接口技术的应用范围。本文以USB OTG IP核设计为主线,讲解了作者所参与的OTG驱动、设备驱动和DMA驱动。OTG驱动用于实现主机控制器和设备控制器的切换,OTG驱动设计参考OTG协议(HNP协议和SRP协议)。OTG设备接入后,USB OTG IP核根据OTG请求类型,转入相应的主机/设备模式;设备模式下,设备端驱动和硬件一起实现USB OTG IP核的USB设备功能。设备驱动设计参考USB协议、大容量传输协议、文件管理系统等。USB OTG IP核与PC完成数据交换过程;DMA驱动用于提高IP系统性能,DMA驱动的设计,参考DMA协议、ARM Realview EB的DMA控制器文档和S3C2410的DMA驱动代码,最后完成DMA驱动代码编写。相对于PIO模式,IP核降低了中断次数,减轻了CPU的负担,提高了系统整体性能。Linux操作系统...
【文章来源】:电子科技大学四川省 211工程院校 985工程院校 教育部直属院校
【文章页数】:98 页
【学位级别】:硕士
【文章目录】:
摘要
ABSTRACT
第一章 引言
1.1 USB 技术的发展
1.2 课题背景
1.3 本课题的核心内容
1.4 论文的架构
第二章 USB OTG IP 核硬件结构及相关协议
2.1 USB OTG IP 核设计
2.2 USB 协议
2.2.1 USB 主机系统
2.2.2 USB 设备系统
2.2.3 主机和设备之间通信模型
2.2.4 USB 分组标识
2.2.5 数据包传输模式
2.2.6 USB 描述符
2.3 OTG 协议
2.3.1 HNP(主机交换)协议
2.3.2 SRP(会话请求)协议
2.4 大容量传输协议
2.4.2 Bulk only 传输协议
2.4.3 SCSI 命令
2.5 DMA 传输协议
2.5.1 PIO(Programming Input/Output Model)模式
2.5.2 DMA 模式
第三章 嵌入式系统设计与驱动开发
3.1 Linux 操作系统
3.1.1 Linux 的发展史
3.1.2 分层结构
3.2 Linux 内核移植
3.2.1 内核的裁剪
3.2.2 内核实时性
3.2.3 根文件系统的定制
3.3 USB 驱动架构
3.3.1 USB 主机端驱动
3.3.2 USB 设备端驱动
3.3.3 OTG 驱动
3.3.4 DMA 驱动
3.4 USB 传输流程
3.4.1 USB 主机和USB 设备之间的数据交互
3.4.2 USB 初始化过程
3.4.3 URB 传输过程
第四章 USB OTG IP 设备端驱动调试及结果
4.1 Realview EB 嵌入式系统介绍
4.1.1 ARM Realview Emulation Baseboard 平台
4.1.2 Core Tile
4.1.3 Logic Tile
4.1.4 Tile 连接器
4.2 USB OTG IP 核OTG 功能测试
4.3 设备端调试界面及相关图片截图
4.3.1 ARM Realview EB 启动阶段
4.3.2 驱动加载传输过程
4.3.3 USB OTG IP 核功能演示
4.4 USB OTG IP 核主机测试结果
第五章 总结与展望
5.1 总结
5.2 展望
致谢
参考文献
个人简历及在学期间的研究成果及发表的学术论文
【参考文献】:
期刊论文
[1]嵌入式Linux2.6核硬实时性能研究与优化[J]. 陈祖爵,罗星,张志雄. 小型微型计算机系统. 2009(08)
[2]面向应用的嵌入式Linux裁剪方法研究与实现[J]. 成月良,方寿海. 计算机工程与设计. 2009(11)
[3]一种USB OHCI主机控制器的根集线器设计[J]. 梅张雄,郑为民,张志敏. 计算机工程与设计. 2005(09)
[4]USB2.0中CRC码的并行算法及硬件实现[J]. 陈静瑾,邓雅诺,马文龙,余宁梅. 西安理工大学学报. 2004(03)
硕士论文
[1]USB2.0 OTG IP核设计和FPGA实现[D]. 罗乐.电子科技大学 2009
[2]NAND Flash与USB闪存盘之间的数据交互[D]. 赵挺竹.西安电子科技大学 2009
[3]基于ARM的Linux平台上USB驱动实现[D]. 戈志华.南昌大学 2008
[4]基于ARM核的AHBUSB2.0接口ASIC设计[D]. 刘俊江.电子科技大学 2007
本文编号:3309683
【文章来源】:电子科技大学四川省 211工程院校 985工程院校 教育部直属院校
【文章页数】:98 页
【学位级别】:硕士
【文章目录】:
摘要
ABSTRACT
第一章 引言
1.1 USB 技术的发展
1.2 课题背景
1.3 本课题的核心内容
1.4 论文的架构
第二章 USB OTG IP 核硬件结构及相关协议
2.1 USB OTG IP 核设计
2.2 USB 协议
2.2.1 USB 主机系统
2.2.2 USB 设备系统
2.2.3 主机和设备之间通信模型
2.2.4 USB 分组标识
2.2.5 数据包传输模式
2.2.6 USB 描述符
2.3 OTG 协议
2.3.1 HNP(主机交换)协议
2.3.2 SRP(会话请求)协议
2.4 大容量传输协议
2.4.2 Bulk only 传输协议
2.4.3 SCSI 命令
2.5 DMA 传输协议
2.5.1 PIO(Programming Input/Output Model)模式
2.5.2 DMA 模式
第三章 嵌入式系统设计与驱动开发
3.1 Linux 操作系统
3.1.1 Linux 的发展史
3.1.2 分层结构
3.2 Linux 内核移植
3.2.1 内核的裁剪
3.2.2 内核实时性
3.2.3 根文件系统的定制
3.3 USB 驱动架构
3.3.1 USB 主机端驱动
3.3.2 USB 设备端驱动
3.3.3 OTG 驱动
3.3.4 DMA 驱动
3.4 USB 传输流程
3.4.1 USB 主机和USB 设备之间的数据交互
3.4.2 USB 初始化过程
3.4.3 URB 传输过程
第四章 USB OTG IP 设备端驱动调试及结果
4.1 Realview EB 嵌入式系统介绍
4.1.1 ARM Realview Emulation Baseboard 平台
4.1.2 Core Tile
4.1.3 Logic Tile
4.1.4 Tile 连接器
4.2 USB OTG IP 核OTG 功能测试
4.3 设备端调试界面及相关图片截图
4.3.1 ARM Realview EB 启动阶段
4.3.2 驱动加载传输过程
4.3.3 USB OTG IP 核功能演示
4.4 USB OTG IP 核主机测试结果
第五章 总结与展望
5.1 总结
5.2 展望
致谢
参考文献
个人简历及在学期间的研究成果及发表的学术论文
【参考文献】:
期刊论文
[1]嵌入式Linux2.6核硬实时性能研究与优化[J]. 陈祖爵,罗星,张志雄. 小型微型计算机系统. 2009(08)
[2]面向应用的嵌入式Linux裁剪方法研究与实现[J]. 成月良,方寿海. 计算机工程与设计. 2009(11)
[3]一种USB OHCI主机控制器的根集线器设计[J]. 梅张雄,郑为民,张志敏. 计算机工程与设计. 2005(09)
[4]USB2.0中CRC码的并行算法及硬件实现[J]. 陈静瑾,邓雅诺,马文龙,余宁梅. 西安理工大学学报. 2004(03)
硕士论文
[1]USB2.0 OTG IP核设计和FPGA实现[D]. 罗乐.电子科技大学 2009
[2]NAND Flash与USB闪存盘之间的数据交互[D]. 赵挺竹.西安电子科技大学 2009
[3]基于ARM的Linux平台上USB驱动实现[D]. 戈志华.南昌大学 2008
[4]基于ARM核的AHBUSB2.0接口ASIC设计[D]. 刘俊江.电子科技大学 2007
本文编号:3309683
本文链接:https://www.wllwen.com/kejilunwen/jisuanjikexuelunwen/3309683.html