FPGA开源项目 – USB3.0回环传输测试-FPGA开源项目社区-FPGA CPLD-ChipDebug

FPGA开源项目 – USB3.0回环传输测试

该帖子部分内容已隐藏
付费阅读
已售 2
30积分
此内容为付费阅读,请付费后查看
转载,换点积分哈

本文开源一个FPGA项目:USB3.0 LoopBack基于FPGAUSB3.0通信方案有很多,其中非常好用的一款USB3.0芯片是FT600/601Q

下面介绍一下这款FT600/601Q芯片的技术参数,控制信号、数据读写时序等,并利用官方提供的上位机软件进行数据回环测试。

文章末尾有该项目Verilog源码获取方式,有需要的小伙伴可自取。

FT600/601Q芯片
芯片技术参数
  • FT600&601Q芯片是FT最新推出的USB3.0 to FIFO interface IC,实现USB3.016/32bit并行IO接口之间的数据传输;

  • USB通信协议全部由芯片驱动自行完成,开发者无须考虑USB底层固件的编程;

  • 支持USB3.05Gbps),向下兼容USB2.0480Mbps and 12Mbps)传输;

  • 支持2FIFO传输协议,最大传输可达400MB/s

  • 高达8个可配置Endpoint

  • 芯片内部有16K字节的缓冲区,可以进行数据的大吞吐量操作;

  • 支持远程唤醒功能;

  • 芯片支持多种IO电压:1.8V2.5V3.3V

  • 通过16bit32bit并行数据线和读写状态、控制线RXFTXERDWR,加上时钟CLK,使能OE信号线就可实现与CPUFPGA的数据传输;

  • 工业级芯片,工作温度范围-40~85℃。

芯片内部架构

图片[1]-FPGA开源项目 – USB3.0回环传输测试-FPGA开源项目社区-FPGA CPLD-ChipDebug

极简外围电路设计

图片[2]-FPGA开源项目 – USB3.0回环传输测试-FPGA开源项目社区-FPGA CPLD-ChipDebug

读写模式&时序

FT600/601Q常用读写模式为245 Synchronous FIFO模式和Multi Channel FIFO模式,本工程以芯片默认的245 Synchronous FIFO模式为例。
FT600/601Q读写模式是通过GPIO0GPIO1进行配置,具体配置方法如下图所示:
图片[3]-FPGA开源项目 – USB3.0回环传输测试-FPGA开源项目社区-FPGA CPLD-ChipDebug
245 Synchronous FIFO模式读写时序也非常简单,当RXF_N信号拉低时, 通知FPGA开始读任务,当TXE_N信号拉低时,通知FPGA开始写任务:
  • 245 Synchronous FIFO模式读时序
图片[4]-FPGA开源项目 – USB3.0回环传输测试-FPGA开源项目社区-FPGA CPLD-ChipDebug
  • 245 Synchronous FIFO模式写时序

图片[5]-FPGA开源项目 – USB3.0回环传输测试-FPGA开源项目社区-FPGA CPLD-ChipDebug

回环传输测试
采用官方提供的FT600 Data Loopback Demo App上位机软件进行数据回环测试,每次读写4096字节数据,结果如下图所示:
图片[6]-FPGA开源项目 – USB3.0回环传输测试-FPGA开源项目社区-FPGA CPLD-ChipDebug
Vivado工程中通过添加在线逻辑分析仪模块查看相关信号:
图片[7]-FPGA开源项目 – USB3.0回环传输测试-FPGA开源项目社区-FPGA CPLD-ChipDebug
另外,还可以采用官方提供的FT600 Data Streamer Demo App上位机软件进行Stream数据流传输测试,速度可以达到360MB/S左右:

图片[8]-FPGA开源项目 – USB3.0回环传输测试-FPGA开源项目社区-FPGA CPLD-ChipDebug

源码获取方式

 

请登录后发表评论