打印

U盘老是回复NAK

[复制链接]
2157|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
xiasolar|  楼主 | 2013-4-18 18:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
各位朋友:
        我的需求是:PC(HOST) <----> FPGA <-----> U盘(Device);

        PC与U盘之间通过FPGA进行数据转接;

        现在可以实现U盘1.1的读,不能进行写。

        情况是:
        FPGA接收到PC的写数据后,就想U盘写数据,但U盘反馈 NAK,然后FPGA就多次重复写该数据,经过很多次重复后,U盘终于会回复ACK。

        但此时,由于PC在一段时间内等不到数据,则早已退出了向U盘的写操作。


        为什么U盘会这样,
        我及时换成2.0的U盘,  也会出现这样的情况。

相关帖子

沙发
scutwyz| | 2013-4-18 22:07 | 只看该作者
关注

使用特权

评论回复
板凳
xiasolar|  楼主 | 2013-4-18 22:42 | 只看该作者
谢谢关注!

(1)我不清楚为什么U盘 反应会这么慢,要重复几十次后才能给出ACK应答,是不是我在那个环节没有控制好,导致U盘反应慢。
(2)如果U盘反应只能这么慢,那时候可以控制HOST端,延长HOST端(PC)的等待时间。

使用特权

评论回复
地板
xiasolar|  楼主 | 2013-4-18 22:46 | 只看该作者
其实在FPGA重发数据的同时,HOST端也在重发询问。
但情况是,假如FPGA和host重发的间隔时间一样,比如:
(1)FPGA在重发了50次才接受到ACK返回;
(2)而HOST在重发了30次,没有接受到ACK后,就启动reset命令了。

我怎么才能将U盘回复ACK的速度提高、
怎么才能将HOST的重发次数再加大,或延长重发之间的间隔

使用特权

评论回复
5
xuxikfg| | 2013-4-18 23:14 | 只看该作者
关注进展

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

8

帖子

0

粉丝