阅读:2048回复:4
望高手指点如何在USB2.0的高速传输中逼近480Mb/s,以及限制速度的因素
大家都知道,在高速传输中达到十几MB/s以下是很容易实现的,无论从硬件设计上还是从软件上要求都不太严格。低速下就连驱动都完全可以采用开发包自带的。
但是要去逼近2.0的极限速度(如40MB/s或更高)时,在设计上就不太容易了。在此,本人对硬件上的改善还行,但作为驱动及上位机软件的初学者来说,由于对操作系统的陌生,在这方面就反应“迟钝“了。 我想了解驱动及Win32应用程序(如同步、异步传输)编写的不同在高速实时数据采集中的影响及对速度有哪些制约因素。望高手指点一二呀? 据网上说,Cpress开发包自带的驱动对速度有很大的限制,这又是为什么呢? 望高手指点小弟一二,或推荐些这方面的书籍,我自己研究一下,算是给小弟领个路!!! |
|
|
沙发#
发布于:2010-09-22 01:16
480Mb/s是极限带宽,这个是由硬件特性决定的,而BULK传输来讲,它的总线利用率是一定的,所以软件上改善空间很小。
|
|
板凳#
发布于:2010-09-23 09:00
断点描述符里面有一个最大包长度,可以用来调节端点的最大带宽。我印象中,总线对Bulk端点所分配的带宽,最大不超过总带宽的15%(数字可能不准确);等时方式可超过80%。
如果要尽量利用带宽的话,就是用等时方式。但等时方式,对于要求正确性保证的数据,没有保证。 对于USB,这是一个困惑。 |
|
|
地板#
发布于:2010-09-23 09:02
>>我想了解驱动及Win32应用程序(如同步、异步传输)编写的不同在高速实时数据采集中的影响及对速度有哪些制约因素。
没有影响,对于硬件,采用什么编程方式都一样。 |
|
|
地下室#
发布于:2010-10-10 18:35
谢谢各位指点,小弟得从头再慢慢研究研究。。。呵呵
|
|
|