节点文献

嵌入式Linux操作系统下EZ-USB设备驱动程序的设计与实现

The Design and Implementation of EZ-USB Device Driver on Linux System

【作者】 刘科

【导师】 雷跃明;

【作者基本信息】 重庆大学 , 计算机软件与理论, 2007, 硕士

【摘要】 Linux系统是一款优秀的开放源码的操作系统,正是因为其开放性和可移植性使它在当前的嵌入式产品开发中有着非常重要地位。通用串行总线(USB)作为一种新型总线,日益广泛地应用到IT产品中。Cypress Semiconductor公司的EZ-USB FX2是世界上第一款集成USB2.0的微控制器,它集成了USB2.0收发器、SIE(串行接口引擎)、增强的8051微控制器和可编程的外围接口。在FX2中,智能SIE可以硬件处理许多USB1.1和USB2.0协议,从而减少了开发时间和确保了USB的兼容性。由于Cypress公司没有提供Linux系统下面EZ-USB FX2设备驱动程序,所以本课题的目标就是设计和实现EZ-USB FX2在Linux操作系统下面的设备驱动程序,并且要为已建立在Windows系统下的医学影像采集处理系统提供Linux系统下面的与Windows系统一致的固件下载接口。本文首先对EZ-USB FX2设备的体系结构和Linux 2.6内核的驱动模型进行了分析,然后提出了EZ-USB FX2设备驱动的设计方案以及对起固件下载接口的封装方案,最后是对方案的实现。课题的设计、实现涉及到Linux驱动程序、固件下载、接口封装三个方面的内容。在Linux驱动程序实现中,采用了Linux-2.6.20版本内核作为驱动开发的源码树支持,2.6.20内核不仅是一款非常稳定的内核版本而且还为开发人员提供了一些新的特性使开发更加便利,提高了开发的效率。本课题的固件下载是在已建立好的EZ-USB FX2驱动程序的基础上在用户空间中对驱动程序进行调用以完成固件下载任务,这样不仅提高了对内核资源的有效利用而且还降低了调试的难度。在封装固件下载接口的时候,针对Windows系统下已经建立的医学影像采集处理系统中所采用的下载函数以及函数内部所调用的Windows系统中用于设备通讯的DeviceIoControl接口进行了统一封装,为医学影像采集处理系统的跨系统移植奠定了基础。本文在Linux驱动程序和固件下载程序的设计与实现中,以软件工程的思想为指导,采用统一建模语言UML工具,对所研究的内容进行了设计、分析和实现。最后,还对所做工作的难点与不足进行了阐述和总结,对Linux设备驱动模型和USB2.0技术的前景进行展望、最新发展动态进行了跟踪。

【Abstract】 Linux system is an outstanding open-source operating system, and it takes up a high positon in contemporary development of embedded products because of the open-source and transportation.As a new-type computer bus, Universal Serial Bus (USB) has already become a part of peripheral equipment of PC. Cypress’s EZ-USB FX2 is the world’s first USB 2.0 integrated microcontroller. By integrating the USB 2.0 transceiver, SIE, enhanced 8051 microcontroller, and a programmable peripheral interface in a single chip, Cypress has created a very costeffective solution that provides superior time-to-market advantages. The Cypress Smart SIE handles most of the USB1.1 and USB2.0 protocols in hardware, thus it decreases development time and ensures USB’s compatibility.Because Cypress corporation don’t provide the EZ-USB FX2 device driver on linux system, so our subject is that we need to design and implement the EZ-USB FX2 device driver on linux system, and provide a identical firmware download interface for a application named Medical Image Conllecting System which had been built on windows system. Firstly, this thesis analyse the architecture of EZ-USB FX2 device and the driver program model of linux 2.6 kernel, then give a blue print of EZ-USB FX2 device driver and identical interface, and take it into implementation.These design and implementation of my subject involve three aspects included Linux device driver, firmware download and indentical interface. In implementation of Linux device driver, I take the linux kernel source which’s version is 2.6.20 to surpport the development of device driver as source tree. 2.6.20 version kernel is not only a stable version but also provide some new traits for developers to upgrade efficiency. The firmware download utility which invokes the device driver to finish the firmware download task is built in user space, this design not only minimize the cost of kernel resource but also the difficulty of debugging. The interface of firmware download is identical to the interface of Medical Image Conllecting System built on windowns, moreover, the function named DeviceIoControl which is in charge of communication between host and device, and these works is a base of transportation of whole application.In the design of Linux device driver and interface, i have used Unified Modeling Language (UML), obeying basic software engineering rules. Finally, some difficulties and insufficiency are considered, and prospect the Linux devicer driver program model and USB On-The-Go (OTG).

【关键词】 LinuxEZ-USB FX2设备驱动接口封装
【Key words】 LinuxEZ-USB FX2Device DriverIndentical Interface
  • 【网络出版投稿人】 重庆大学
  • 【网络出版年期】2008年 05期
  • 【分类号】TP311.11
  • 【被引频次】3
  • 【下载频次】526
节点文献中: 

本文链接的文献网络图示:

本文的引文网络