论文部分内容阅读
从1983年美国Xilinx公司首家推出FPGA后,FPGA迅速发展,现已广泛应用于通信、计算机、图象处理等领域,甚至在航天、军事等领域也可见其踪影。USB目前已成为PC机的标准接口,做为一种成熟的通讯协议,USB能够满足高速的数据传输,同时又能保证传输的准确度。本实验室为了辅助芯片的设计和验证工作,设计了一系列FPGA开发板。用USB作为PC与FPGA开发板的通讯通道,能够满足视频、数据采集等芯片设计时所需要的高速传输速率。 论文首先研究了USB协议的基本结构和特点,从电气特性、错误检测、设备端点和传送类型四个方面对USB协议进行论述,着重分析了根据USB协议论文需要实现的内容。然后研究了Xilinx公司的Spartan3系列FPGA的特性和逻辑结构,对Spartan3的五个可编程功能模块进行了较为细致的描述。另外,本文还研究了在利用FPGA进行开发设计时所要遵循的几个必要步骤。 在明确了工作内容和最终目的后,本文从软件和硬件两部分介绍了工作内容。在软件部分,本文首先阐明了USB驱动程序所要遵循的WDM驱动程序模型的概念和结构,给出了驱动程序设计的步骤,驱动程序所要实现的成员函数及功能,还对在驱动程序完成后生成的文件进行了介绍。然后本文介绍了应用软件的设计,包括同驱动程序的通信过程和所需实现的函数,还有应用程序实现的界面。在硬件部分,本文首先设计了FPGA开发板上的USB接口电路,对PDIUSBD12的连接方式给出了详细的方案。随后介绍了利用verilogHDL在FPGA内部设计了控制PDIUSBD12进行USB通讯的电路,电路分三部分:面向USB协议进行控制的协议模块,面向PDIUSBD12操作步骤及时序的通信模块,以及面向使用端的数据转换模块。 本文设计了一个完整的USB1.1FPGA控制器和主机通讯软件。通讯软件灵活易用能够完成控制传输、中断传输和块传输操作。FPGA控制器最高工作速度100M,占用资源较少,约折合2K离散逻辑单元。