基于USB3.0多通道信号采集解决方案

USB3.0多通道信号采集解决方案

` 对于中高速的信号采集来说,使用USB接口进行数据传输比以往的网口和串口传输方便且效率更高。 该系列主要介绍FTDXX系列芯片在多通道数据采集项目中的应用。

前言

FT601系列具有超高速、高容量的数据传输。在数据密集型图像传输和数据采集应用中得到了广泛的应用。该芯片支持多达8个端点,以及2个额外的通信端点,允许创建多达4个数据输入和4个数据输出通道,输入和输出的双缓冲长度分别为4KB和4KB。传输速度达到480MB/S。

1、 FT6xx芯片

该芯片由FTDI公司推出的一款基于FIFO Bridge 接口芯片。可实现USB3.0与16/32bit并行IO接口之间的数据传输。集成整个USB通信协议,从而减轻了开发者对USB通讯协议层的理解和开发。具体参数如下图。
FT601芯片参数

2、应用

FT601支持245模式和600模式,该项目中需要支持多通道的数据采集故实际应用中采用600模式。如果在实际项目需求只需要单通道的数据采集,建议采用245模式进行开发,该模式使用简单,245模式同样也支持FIFO模式和Stream 模式,使用FIFO模式不容易出错也便于FPGA控制和管理。Stream模式更适用于图像传输和数据流传输的数据采集环境。
1)上位机应用开发
上位机基于MFC/QT开发,对APP应用层进行了封装方便开发者调用。
在这里插入图片描述
多通道模式下,项目中集成了自定义协议开发、参数配置和数据采集功能。函数库提供打开、关闭、读操作、写操作等一系列函数,可以通过Multi_Channel_Write函数单独对某个通道进行配置参数的下发。数据采集可以通过Multi_Channel_Read函数单独某个通道的数据。同时也可以读取某个通道的状态信息,状态信息可以通过Status_Channel_Read函数单独对某个通道的状态进行轮询观察。项目集成了简单的数据波形显示,测量等功能,支持两通道的数据采集或者四通道的数据采集功能。如需采集更多通道,可以采用多板卡设计方案,在信号传输带宽和上位机实时处理中平衡设计。在此给需要实现USB多通道数据采集和数据分析功能的朋友提供简单的参考。
在这里插入图片描述

  1. FPGA应用开发
    FPGA端控制主要实现到端口FIFO-MASTER的时序控制。读逻辑当wr_n和rxf_n同时有效时,表示数据有效。wr_n是当前总线的数据处理请求信号,处于低状态时有效。时序参考多通道读时序。
    在这里插入图片描述
    写逻辑当wr_n和rxf_n同时有效时,表示数据有效。wr_n是当前总线的数据处理请求信号,处于低状态时有效。时序参考多通道写时序。
    在这里插入图片描述

总结

USB3.0的应用中也碰到一些问题,通过实战应用中都得到了解决,在此也简单的记录下。当然开发不易珍惜每一分原创和劳动成果,同时注意平时开发过程中的经验积累总结。该工程已经在现有的工程项目中得到了应用和验证,如有需要了解详细的设计可以联系 QQ:309967512

  • 13
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值