嵌入式LINUX下USB2.0设备驱动设计与实现

来源 :电子科技大学 | 被引量 : 0次 | 上传用户:shenjing1566
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
USB2.0接口和基于LINUX的驱动程序的应用已经非常广泛,特别在电子消费类领域。基于LINUX下的USB2.0设备则更是市场的需求。本文介绍一种基于嵌入式LINUX的USB2.0设备驱动的设计,主要对一种USB海量存储设备驱动的设计及其测试驱动的设计进行讨论。该驱动是基于学校自主研发的AHB_USB2.0 IP核而设计的。该IP核支持USB 2.0协议,并兼容USB 1.1协议;支持AMBA 2.0协议和UTMI 1.05协议。该IP核一侧通过UTMI接口或ULPI接口的PHY与USB2.0主机端进行通信;另一侧则通过AHB总线与ARM相连。USB2.0设备驱动的设计分为三个大模块:系统初始化和端点0解析、块数据传输和UFI协议分析。系统初始化和端点0解析模块主要解析USB协议,实现了USB设备的总线列举;块数据传输模块主要解析USB海量传输协议BULKONLY协议,实现了数据的块传输;UFI协议分析模块则通过解析USB媒质接口协议UFI命令集,实现了内存虚拟FLASH的读写。该驱动设计遵循USB协议、Bulk Only协议和UFI协议,由外挂ARM实现USB设备命令和UFI命令的解析,并执行相应的操作,实现常规数据读写访问、内部DMA或外部DMA等多种方式的切换。该IP及驱动验证测试可分为寄存器测试、通道测试和业务测试三层。寄存器测试主要用于测试寄存器读写是否正确;通道测试用于测试各个端点的各种传输模式是否工作正常;业务测试则是通过完成一个完整的U盘驱动并测试其是否能够完整完成一个U盘功能。本项目最终已经通过EDA验证和FPGA测试,并且已经在内嵌ARM核的FPGA系统上实现了多个U盘。这个FPGA系统的正确工作,证明了整个项目是成功的,也证明了USB2.0驱动以及测试程序是成功的。
其他文献
目前,我国森林火灾的常用监测方法是视频监控,而森林火灾危害的严重性使得森林火点的准确定位和火灾图像的高效传输对于尽快扑灭森林火灾,将火灾危害降至最低具有关键作用。
近年来,对于小型无线移动设备的定位得到了越来越多的关注。对WSN(Wireless Sensor Networks,无线传感器网络)的定位是其中一个分支。在WSN中,通常都存在一些为位置已知的节
随着智能手机与3G技术相结合,手机业者们已经注意到,智能手机也已成为各大厂商进入3G终端领域战役的预演,能够在智能手机产品方面有所突破将成为手机研发商们在未来的3G之战
随着无线通信技术的飞速发展,高速多媒体无线通信的需求在迅速增长,如何利用有限的通信资源来实现更高的传输速率和频谱利用率将成为下一代移动通信系统需要解决的首要问题。
为迎接无线通信系统中不断增长的高数据率需求的挑战,一个重要的努力是使用多天线通信系统。即在衰落环境中,通过在发射端和接收端都使用多个天线(MIMO),来提高无线链路的可
认知无线电(Cognitive Radio,CR)也称为感知无线电,是近几年兴起的无线通信新概念新技术,它能够实时感知通信环境中所有的频谱使用机会,通过重组无线网络系统框架,使得认知无
人脸是人类视觉中最常见的图像,对人脸的识别是人类视觉研究的一个重要方面。长期以来,如何利用计算机对人脸图像进行自动识别,一直是图像处理与模式识别领域的研究热点与难
无线通信作为一种快速发展的高科技技术,近些年在国内外的各类高新技术产业中一直都保持着不可动摇的核心地位,但与此同时也存在着如频谱资源有限等问题。在目前被广泛应用的