首页 文章

USB控制传输是否可以保证交付?

提问于
浏览
4

USB 2.0 specifies 4种类型的转移(见第5.4节转移类型):

  • 控制转移

  • 同步转移

  • 中断转移

  • 批量转移

第5.8节说大宗转移提供:

在带宽可用的基础上访问USB重新传输,在由于总线错误而偶尔发送故障的情况下保证数据传输但不保证带宽或延迟

(强调我的 . )

我没有看到类似的控制转移声明 . 他们还保证交货吗?如果没有,用户如何处理失败?

请提供引文以支持您的答案 .

1 回答

  • 3

    USB规范为控制传输提供强大的错误检测和恢复 . 控制传输将完成或USB主机将知道它失败,我认为这是“保证交付”应该是什么意思 . 这很重要,因为控制传输用于在将设备插入计算机时设置设备,并且它们也被各种USB设备类用于许多重要目的(例如,它们用于设置串行端口的波特率) USB CDC ACM设备) .

    从USB 2.0规范的5.5.5节:

    USB为控制传输期间发生的错误提供强大的错误检测和恢复/重传功能 . 发送器和接收器可以在控制传输中保持同步,并以最小的努力恢复 . 接收器可以通过分组中的数据重试指示符来检测数据和状态分组的重传 . 发送器可以通过对分组的握手中返回的信息可靠地确定其对应的接收器已成功接收所发送的分组 . 该协议允许区分重传的分组与其原始分组,除了控制设置分组 . 由于传输错误,可能会重新发送设置数据包;但是,Setup数据包不能指示数据包是原始数据包还是重试数据包 .

    唯一没有保证交付的转移类型是等时的 . 此外,帧起始(SOF)数据包没有保证传送 .

相关问题