例说FPGA连载72:FX2 bulkloop实例之功能概述
时间:10-02
整理:3721RD
点击:
例说FPGA连载72:FX2 bulkloop实例之功能概述
特权同学,版权所有
配套例程和更多资料下载链接:
http://pan.baidu.com/s/1c0nf6Qc
FX2(CY7C68013)是一款集成8051单片机的灵活的USB2.0控制器,其带宽可以接近USB2.0标称的480Mbps(通常我们使用FPGA与FX2的SlaveFIFO接口进行数据传输可以达到400Mbps的带宽)。
FX2的内部功能框图如图13.1所示。从图中不难看出,8051实际上并不直接参与USB数据的实际传输,而只是做一些基本的配置。从GPIF(或SlaveFIFO)接口传输的数据,在FX2内部传到了RAM中进行缓存,并且可以直接送到USB2.0的phy中传输给USB设备。
图13.1 FX2内部功能框图
如图13.2所示,我们的系统中,PC机和SF-VIP核心板通过SF-FX2外设子板进行连接,完成FPGA和PC之间的数据通信。FPGA和FX2之间使用一组灵活的SlaveFIFO接口进行数据交互,FPGA掌握着数据传输的主动权,只需要配置好FX2的传输模式即可。
图13.2 系统连接示意图
本例程是FX2外设子板的第一个实验。我们先不动用FPGA,而是直接使用Cypress官方给出的bulkloop例程,PC端发送一组数据给FX2,FX2内部自动将其返回给PC,整个过程FX2自动完成,无需FPGA参与。传输数据流的示意如图13.3所示。
图13.3 USB传输数据流