现有的架构是FPGA+CYUSB3014,原理图直接用的淘宝上的开发板,现在单独跑IN是没问题的,单独跑OUT也是没有问题的,单独跑IN或者OUT速度都能到400M/S,这个和开发板一致,但是IN和OUT一起跑就会挂掉,用淘宝上买的开发板就不会,现在烧录的FPGA固件以及USB固件都是一模一样的,差别在于开发板用的是Micro-B扁平的USB口,自己画的用的是方形USB B口,这个会有影响么?
已解决! 转到解答。
Hi,
我用bulksourcesink这个固件测试,同时打开两个streamer是可以同时bulkin和bulkout,但是这个只是随机数据收发,FX3收到就丢弃了。
你可以用bulksourcesink测试一下。
Regards,
Eddie
IN和OUT指的是Bulk IN和Bulk OUT,另外还试出来一个奇怪的现象,有一台笔记本的USB 3.0口可以同时跑IN大概250M/S,OUT大概10M/S,但是大部分的电脑不行,改成USB2.0的速度可以(当然速度太慢了),这里是否是USB端口这里耦合了么?(单独用Streamer烧录官方的固件可以跑到450M/S,IN OUT都长久跑过)
感谢您的回复,试过了,烧录bulksourcesink这个固件,同时开两个Streamer开Bulk in和Bulk out,速度能到300M/S+,这个不会出错,但是数据很简单,都是同一个,我抓包看了,如果我烧录自己的固件,把bulk out的速度再降下来一点,1M/S左右的话,大部分电脑会过十几分钟才挂掉,挂掉的话,我用Streamer来通信都不行了(正常的情况是没有问题的)
您的应用场景是什么需要同时收发数据?之前我已经讲过,GPIF接口是不能同时收发的。所以FX3只是把USB过来的数据存在DMA buffer中等待发送,这样很容易造成溢出导致数据丢失。
我现在的问题是想请教一下,USB3.0 SSRX两根线和SSTX两根线单独跑都正常,如果一起有数据进行,两者会不会出现信号串扰之类的?
另外想问一下,JTAG那几个口不使用,直接悬空有没有影响?
会不会出现信号串扰要看你的PCB设计,画的好的板子是不会的。
JTAG可以悬空
阻抗是严格按照90R来的,无论是TX还是RX单独跑Streamer都能到450M/S,SSRX和SSTX有没有一个间距的要求?
没有,之间需要用GND作隔离
中间的GND是必须的?另外请教一下GND和线之间的线宽有没有要求,必须大于多少mil?
这些在AN70707中都有详细描述:
非常感谢,我改下试试!
hi,你好,改了一下固件,用Streamer去IN和OUT,用bus huond抓包看了一下,同时运行就会出现USTS xact error;这个错误可能的原因在哪里?
问题还没解决就开个新帖吧