qiezi
驱动小牛
驱动小牛
  • 注册日期2002-10-17
  • 最后登录2005-04-20
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1409回复:5

USB1.1协议里百思不得其解的一段,哪位大侠给解释一下!

楼主#
更多 发布于:2002-12-10 16:49
在数据切换同步和重试中关于对损坏的ACK包的处理有这样的做法:
  1、先说发送器可通过重试而达到与接受器同步的目的,可是紧接着又有下面的一段:

  2、“数据发送器必须保证任何被重试的数据包都和先前的事务发送的包相同(相同长度和内容)。由于类似缓冲欠载(Underrun)条件等问题,数据发送器不能传送和在先前的数据包中数据完全一样的数据中,它必须通过产生一位填充违反(Bit Stuffing Violation);来中止事务。这将引起一个接收器的可检测的错误,从而保证接收器不会将部分的包解释为好包。发送器不应该通过发送已知的坏的CRC在接收器产生一个错误。带有“坏”CRC的坏包会被接收器解释成好包。”

上面这段的意思好象是说传输不能继续进行下去,要终止事务,是不是说这次传输失败要从新开始呢,还有这上下文是不是矛盾呀?
joyup
驱动牛犊
驱动牛犊
  • 注册日期2002-03-07
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分7分
  • 威望4点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2002-12-12 10:08
那大侠们认为当ACK本身发生错误时是怎么处理的呢? :P


重发上一个数据包,toggle不用切换
qiezi
驱动小牛
驱动小牛
  • 注册日期2002-10-17
  • 最后登录2005-04-20
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2002-12-12 08:40
那大侠们认为当ACK本身发生错误时是怎么处理的呢? :P
rayyang2000
管理员
管理员
  • 注册日期2001-03-23
  • 最后登录2012-09-13
  • 粉丝3
  • 关注0
  • 积分1036分
  • 威望925点
  • 贡献值3点
  • 好评度823点
  • 原创分0分
  • 专家分0分
地板#
发布于:2002-12-11 23:01
简直是天书嘛! :D
天天coding-debugging中----超稀饭memory dump file ======================================================== [b]Windows Device Driver Development and Consulting Service[/b] [color=blue][url]http://www.ybwork.com[/url][/color] ========================================================
joyup
驱动牛犊
驱动牛犊
  • 注册日期2002-03-07
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分7分
  • 威望4点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2002-12-11 15:12
兄弟建议你还是不要翻译成中文了,看不懂的说
qiezi
驱动小牛
驱动小牛
  • 注册日期2002-10-17
  • 最后登录2005-04-20
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2002-12-11 14:23
是不是我说的不够清楚呀?就是关于DATA0和DATA1的切换。
游客

返回顶部