USB性能问题

USB性能问题,usb,data-transfer,qnx,mqx,Usb,Data Transfer,Qnx,Mqx,我正在尝试通过USB传输数据。这些数据包最多64字节,以4KHz的频率发送。这将提供大约2Mb/s的比特率 拾取此数据的软件任务以2.5 KHz的频率运行 理想情况下,我们不希望数据包到达的速度低于2.5 KHz,因此2 KHz不是很好 有人知道USB可以实现的任何通用限制吗 我们在一个主板上运行,该主板有一个运行QNX的1.33 GHz主板和一个运行MQX的TWR K60F120M塔式系统子板 除了系统的细节外,USB是否应该用于这种数据传输,即高频和短数据包大小 非常感谢你的帮助 MGUSB

我正在尝试通过USB传输数据。这些数据包最多64字节,以4KHz的频率发送。这将提供大约2Mb/s的比特率

拾取此数据的软件任务以2.5 KHz的频率运行

理想情况下,我们不希望数据包到达的速度低于2.5 KHz,因此2 KHz不是很好

有人知道USB可以实现的任何通用限制吗

我们在一个主板上运行,该主板有一个运行QNX的1.33 GHz主板和一个运行MQX的TWR K60F120M塔式系统子板

除了系统的细节外,USB是否应该用于这种数据传输,即高频和短数据包大小

非常感谢你的帮助
MG

USB即使是最慢的spec 1.1,只要使用正确的传输模式,也可以以高达12MB/秒的速度传输数据。USB每秒将处理1000帧。帧包含控制和数据信息,并且每个帧的各个部分用于各种目的,因此总信息内容在这些竞争需求之间被复用

低速设备在一帧中只使用几个字节来发送或接收数据。例如调制解调器、鼠标、键盘等。USB 1.1中所谓的全速设备可以通过使用等时模式传输达到12 MB/秒,这意味着它们可以在每个帧中分割出一大块,并且可以在每次帧出现时发送固定大小的数据。例如,这是音频设备用于将相对数据密集型的音乐传输到USB扬声器的模式

如果您能够进行一点本地缓冲,则可以使用等时模式以1 KHz的频率发送64字节的数据,但在USB帧传输中以2.5KHz的频率发送2或3个周期的数据。您可能希望保留64 x 3=192字节的数据,再加上一些额外的字节用于控制信息,例如存在多少块:2或3?。然后,随着USB帧的到来,您将2块或3块数据放到导线上,然后接收端将获得该数据,尽管以一种比仅以精确的2.5KHz速率平滑的方式更为快速。然而,即使使用USB 1.1,这种传输数据的方式也将远远赶不上,并且仍然只使用总可用USB带宽的一小部分

在我看来,问题在于您的系统设计是否能够容忍突发的数据传输速率。。。换句话说,不是以2.5KHz的速率获得64个字节,而是以1kHz的速率获得平均160个字节。你会得到这样的结果:

因此,我认为使用USB,这将是你能做的最好的事情——以每1毫秒的USB帧重复率获得2或3个设备数据包的突发传输

我不是USB方面的专家,但我做了一些工作,包括调试一个使用USB中断的设备到主机隧道协议,因此我在其他系统上看到了这种实现,以解决USB帧速率与设备数据速率匹配的问题