6748的USB,每包数据量为FIFO满包和半包速率相差极大的问题 - TMS320C6748 - 嵌入式开发者社区 - 51ele.net
设为首页收藏本站

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 4504|回复: 4
打印 上一主题 下一主题

6748的USB,每包数据量为FIFO满包和半包速率相差极大的问题

[复制链接]

2

主题

6

帖子

34

积分

新手上路

Rank: 1

积分
34
跳转到指定楼层
楼主
发表于 2015-8-22 10:23:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
DSP的USB PHY中,将FIFO大小设置为 512Byte,每次发送数据时,向FIFO写入512Byte字节数据,然后使能TXRDY,使用创龙开发板,能够稳定传输数据,数据速率为7~8MB/s,使用我的板子一般只能发送几包数据,然后就出现上面的错误,不能继续发送。
PERI_TXCSR 寄存器值为 0x0003,指示DSP程序写入数据到USB PHY的FIFO,并且启动了发送,但是没有发送完成。
使用 bushound 抓数据包,DSP能够发送几包数据,然后就抓到一个 USTS 错误状态,错误码为 0xC0000011,这个错误码的意思是 The device returned a transaction error。


将FIFO大小设置为512Byte,每次发送数据时,向FIFO写入256Byte字节数据,然后使能TXRDY,使用创龙开发板,能够稳定传输数据,数据速率却降低到1.7MB/s左右,使用我的板子也能稳定传输数据,速率也只有1.7MB/s左右。


各位大侠分析一下我的板子每次传512Byte为啥不行?


每次传输256Byte为啥速率降低的如此多,这种情况下有没有提速的办法?

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖
回复

使用道具 举报

15

主题

1357

帖子

4579

积分

创龙

Rank: 8Rank: 8

积分
4579
沙发
发表于 2015-8-24 10:09:04 | 只看该作者
USB 内部有 CPPI DMA
DMA 一般情况下在大块数据搬移时候效率才会比较高

至于你的板子建议可以检查下外部时钟输出是否精确
回复 支持 反对

使用道具 举报

2

主题

6

帖子

34

积分

新手上路

Rank: 1

积分
34
板凳
 楼主| 发表于 2015-8-25 16:28:47 | 只看该作者
希望缄默 发表于 2015-8-24 10:09
USB 内部有 CPPI DMA
DMA 一般情况下在大块数据搬移时候效率才会比较高

首先谢谢你的回答。
你怀疑是我的时钟精度不够?
情况1、如果我设置FIFO为512Byte,每次向FIFO写入512Byte,然后启动发送,这种情况下只能发送几包数据。
情况2、如果我设置FIFO为512Byte,每次向FIFO写入256Byte,然后启动发送,这种情况下能够稳定的传输数据。
情况3、如果我设置FIFO为64Byte,每次向FIFO写入64Byte,然后启动发送,这种情况下也只能发送几包数据。

如果是每包数据量过大,由于时钟精度不够,在传输过程中产生积累错误,这个能够解释情况1和2,但是情况3也不能解释呢。
我还试过将FIFO设置更小,写满FIFO后再启动发送,也只能发送几包数据。
所以我有点迷茫了,找不到问题的方向了

点评

呃 这个~ 我觉得应该先从硬件方向排查 确认硬件完全没有问题再找软件的原因 不然两边都是变量 不便于找原因  详情 回复 发表于 2015-8-26 09:04
回复 支持 反对

使用道具 举报

15

主题

1357

帖子

4579

积分

创龙

Rank: 8Rank: 8

积分
4579
地板
发表于 2015-8-26 09:04:19 | 只看该作者
silent 发表于 2015-8-25 16:28
首先谢谢你的回答。
你怀疑是我的时钟精度不够?
情况1、如果我设置FIFO为512Byte,每次向FIFO写入512By ...

呃 这个~ 我觉得应该先从硬件方向排查 确认硬件完全没有问题再找软件的原因
不然两边都是变量 不便于找原因
回复 支持 反对

使用道具 举报

2

主题

6

帖子

34

积分

新手上路

Rank: 1

积分
34
5#
 楼主| 发表于 2015-8-26 09:47:13 | 只看该作者
希望缄默 发表于 2015-8-26 09:04
呃 这个~ 我觉得应该先从硬件方向排查 确认硬件完全没有问题再找软件的原因
不然两边都是变量 不便于找原 ...

好的,谢谢,我再查查硬件,主要是硬件连接太简单了,不知道从何下手
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|嵌入式开发者社区 ( 粤ICP备15055271号

GMT+8, 2024-5-2 02:30 , Processed in 0.037918 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

快速回复 返回顶部 返回列表