关于CYUSB3014通信一个奇怪的问题

公告

大中华汽车电子生态圈社区并入开发者社区- 更多资讯点击此

Tip / 登入 to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
zhka_4728946
Level 2
Level 2
10 replies posted 5 replies posted 5 sign-ins

现有的架构是FPGA+CYUSB3014,原理图直接用的淘宝上的开发板,现在单独跑IN是没问题的,单独跑OUT也是没有问题的,单独跑IN或者OUT速度都能到400M/S,这个和开发板一致,但是IN和OUT一起跑就会挂掉,用淘宝上买的开发板就不会,现在烧录的FPGA固件以及USB固件都是一模一样的,差别在于开发板用的是Micro-B扁平的USB口,自己画的用的是方形USB B口,这个会有影响么?

0 点赞
1 解答
YiZ_31
Moderator
Moderator
Moderator
1000 replies posted 750 replies posted 500 replies posted

Hi,

 

我用bulksourcesink这个固件测试,同时打开两个streamer是可以同时bulkin和bulkout,但是这个只是随机数据收发,FX3收到就丢弃了。

你可以用bulksourcesink测试一下。

 

Regards,
Eddie

在原帖中查看解决方案

0 点赞
14 回复数
YiZ_31
Moderator
Moderator
Moderator
1000 replies posted 750 replies posted 500 replies posted

Hi,

 

这个USB口的造型是没有影响的。本身slave fifo就是单向的,无法同时输入和输出。不知道你说的In 和 Out一起跑是什么意思。

0 点赞
zhka_4728946
Level 2
Level 2
10 replies posted 5 replies posted 5 sign-ins

IN和OUT指的是Bulk IN和Bulk OUT,另外还试出来一个奇怪的现象,有一台笔记本的USB 3.0口可以同时跑IN大概250M/S,OUT大概10M/S,但是大部分的电脑不行,改成USB2.0的速度可以(当然速度太慢了),这里是否是USB端口这里耦合了么?(单独用Streamer烧录官方的固件可以跑到450M/S,IN  OUT都长久跑过)

0 点赞
YiZ_31
Moderator
Moderator
Moderator
1000 replies posted 750 replies posted 500 replies posted

Hi,

 

我用bulksourcesink这个固件测试,同时打开两个streamer是可以同时bulkin和bulkout,但是这个只是随机数据收发,FX3收到就丢弃了。

你可以用bulksourcesink测试一下。

 

Regards,
Eddie

0 点赞
zhka_4728946
Level 2
Level 2
10 replies posted 5 replies posted 5 sign-ins

感谢您的回复,试过了,烧录bulksourcesink这个固件,同时开两个Streamer开Bulk in和Bulk out,速度能到300M/S+,这个不会出错,但是数据很简单,都是同一个,我抓包看了,如果我烧录自己的固件,把bulk out的速度再降下来一点,1M/S左右的话,大部分电脑会过十几分钟才挂掉,挂掉的话,我用Streamer来通信都不行了(正常的情况是没有问题的)

0 点赞
YiZ_31
Moderator
Moderator
Moderator
1000 replies posted 750 replies posted 500 replies posted

您的应用场景是什么需要同时收发数据?之前我已经讲过,GPIF接口是不能同时收发的。所以FX3只是把USB过来的数据存在DMA buffer中等待发送,这样很容易造成溢出导致数据丢失。

0 点赞
zhka_4728946
Level 2
Level 2
10 replies posted 5 replies posted 5 sign-ins

我现在的问题是想请教一下,USB3.0  SSRX两根线和SSTX两根线单独跑都正常,如果一起有数据进行,两者会不会出现信号串扰之类的?

另外想问一下,JTAG那几个口不使用,直接悬空有没有影响?

0 点赞
YiZ_31
Moderator
Moderator
Moderator
1000 replies posted 750 replies posted 500 replies posted

会不会出现信号串扰要看你的PCB设计,画的好的板子是不会的。

JTAG可以悬空

0 点赞
zhka_4728946
Level 2
Level 2
10 replies posted 5 replies posted 5 sign-ins

阻抗是严格按照90R来的,无论是TX还是RX单独跑Streamer都能到450M/S,SSRX和SSTX有没有一个间距的要求?

0 点赞
YiZ_31
Moderator
Moderator
Moderator
1000 replies posted 750 replies posted 500 replies posted

没有,之间需要用GND作隔离

0 点赞
zhka_4728946
Level 2
Level 2
10 replies posted 5 replies posted 5 sign-ins

中间的GND是必须的?另外请教一下GND和线之间的线宽有没有要求,必须大于多少mil?

0 点赞
YiZ_31
Moderator
Moderator
Moderator
1000 replies posted 750 replies posted 500 replies posted

这些在AN70707中都有详细描述:

YiZ_31_0-1618192708836.png

 

0 点赞
zhka_4728946
Level 2
Level 2
10 replies posted 5 replies posted 5 sign-ins

非常感谢,我改下试试!

0 点赞
zhka_4728946
Level 2
Level 2
10 replies posted 5 replies posted 5 sign-ins

aaa.png

hi,你好,改了一下固件,用Streamer去IN和OUT,用bus huond抓包看了一下,同时运行就会出现USTS xact error;这个错误可能的原因在哪里?

0 点赞
Roy_Liu
Moderator
Moderator
Moderator
5 comments on KBA First comment on KBA 10 questions asked

问题还没解决就开个新帖吧

Roy Liu
0 点赞