基于CYUSB3014USB30总线开发技术.docx

基于CYUSB3014USB30总线开发技术.docx

ID:59211965

大小:236.09 KB

页数:7页

时间:2020-09-10

基于CYUSB3014USB30总线开发技术.docx_第1页
基于CYUSB3014USB30总线开发技术.docx_第2页
基于CYUSB3014USB30总线开发技术.docx_第3页
基于CYUSB3014USB30总线开发技术.docx_第4页
基于CYUSB3014USB30总线开发技术.docx_第5页
资源描述:

《基于CYUSB3014USB30总线开发技术.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、基于CYUSB3014USB3.0总线开发技术[导读] 本文介绍了以FPGA为控制核心,以cypress的FX3系列CYUSB3014芯片为总线接口芯片,实现了对USB3.0总线技术的开发应用,实际测试的传输速度能够达到1.43Gbps。1.引言  USB(UniversalSerialBus,通用串行总线)以其无需配置、即插即用等特性获得了广泛的应用。2004年提出的USB2.0标准,传输速度最大能够达到480Mbps。但在USB3.0标准中,它的最大传输速度几乎是传统USB2.0传输速度的10倍,达到了5.0Gbps,被定义

2、为“超高速USB接口”。本文基于CYPRESS的FX3系列USB3.0芯片,对USB3.0总线进行研究开发。2.USB3.0接口芯片概述  赛普拉斯的EZ-USBFX3是新一代的USB3.0外设控制器,具有高度集成的灵活特性,允许系统设计者将USB3.0添加至任何系统。本文采用的是FX3系列USB3.0芯片CYUSB3014    FX3是完全兼容USB3.0V1.0和USB2.0规范的,集成的USB2.0OTG控制器允许芯片作为主从设备使用。另外,它还支持一些常用的外设接口,如SPI,I2C,UART和I2S可以与外部设备进行

3、通信。  FX3具有一个可进行完全配置的并行通用可编程接口GPIFII,它可以与任何处理器、ASIC或是FPGA连接。它可以轻松无缝地连接至多种常用接口,比如异步SRAM、异步和同步地址数据复用式接口、并行ATA等等。EZ-USBFX3集成了USB3.0和USB2.0物理层(PHY)以及32位ARM926EJ-S微处理器,具有强大的数据处理能力,并可用于构建定制应用。3.系统整体设计  本系统设计主要由软件部分和硬件部分组成。软件部分主要包括三大部分:PC机应用程序、FX3固件程序FPGA程序。硬件部分主要由FPGA、USB3.

4、0芯片和DDR2组成,硬件的系统框图如图2所示。本文主要完成了硬件、PC机应用程序和FPGA程序的设计。  FX3固件程序使用的是Cypress的SDK开发包的固件程序。    3.1DDR模块设计  与FPGA相比,USB3.0接口是一个高速的接收单元。在不同工作速度的系统之间,数据缓存是不可或缺的部分,一般来说,使用FIFO基本可以使各系统工作在自己的时钟频率下,而不需要反复的互相握手信号就能进行数据的交流。本文设计的数据是保存在计算机上,由于各计算机的硬件配置可能会不一样,我们设计了DDR2虚拟FIFO模块来进行数据缓存,

5、为批量传输时能够提供足够的缓存,不用担心为缓存不够电脑来不及存取数据造成数据丢失。  本系统选用两片MT47H64M16HR,两片DDR并联控制总线和地址总线,总存储容量达到2Gbit,读写宽度都为16bit,它具有丰富的资源,足够满足本系统的需要。  3.2USB3.0接口设计  与USB2.0不同的是,USB3.0在与计算机通讯时,它有自己专用的数据通路,专用的数据发送线路和独立的数据接收线路,即图3中四线差分信号SSRX+/-和SSTX+/-,从而可以真正的实现全双工。同时,USB3.0还兼容了USB2.0的D+/-信号接

6、口,从而可以与USB2.0无缝连接。使用从器件FIFO接口与FPGA链接,传输速度能达到可达到320MBps。图3为USB芯片与FPGA和PC机的电路连接。    3.3FPGA逻辑设计  FPGA是整个系统的核心,它需要产生测试数据并将数据存储到DDR2中,以及将DDR2中读出的数据转移到CYUSB3014大的内部FIFO中,因此它主要由如图2内部所示模块构成。    3.3.1USB接口模块  USB接口模块主要处理读写命令。读写命令需要计算机通过USB控制传输,传递到CYUSB3014中,再由CYUSB3014将具体的命令

7、转化为电平信号送到FPGA的IO口。USB接口模块根据UART_RX上的电平信号,判断出是读命令还是写命令,最终产生CYUSB3014的片选CS、使能OE、读/写控制等有效信号。  当为写命令时,CYUSB3014需要将从DDR2中读取的数据发送出去;当为读命令,读取CYUSB3014传递过来的数据,流程图如图4所示。图5、图6分别为同步写入和读出数据的时序图。由于读写最大包为1024字节,所以实际每一包传输需要256个周期。图中的输入/出DQ数据为测试数据模块和PC机产生的测试数据,RX即UART_RX信号。    3.3.2

8、测试数据模块  当计算机向FPGA发出读命令时,FPGA产生测试数据。32位数据,高16位为0,低16位循环计数,发送一个周期后,自动清零。  批量(bulk)传输时的最大包大小为1024字节,因此测试数据在0~255之间循环变化。  产生测试数据后,数据传输流

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。