阅读:1877回复:9
PCI卡的数据传输速度怎么测啊!
用9054开发的pci卡,怎么测速度啊
自己编写测试速度的程序,问题是什么时间函数精度足够小啊 例如小于1ms 我是用windriver做的驱动,windriver中有专门得时间函数吗 |
|
沙发#
发布于:2003-05-22 13:47
传一些大数据量,然后取平均值
|
|
|
板凳#
发布于:2003-05-22 15:00
WINDRIVER里面没有专门测时间的函数,你只能调用WIN32的底层函数了,我前些时间也是开发了WINDRIVER的PCI卡驱动,结果测速度时出现奇怪事情,速度超过了PCI最高速度133M/S,我用了如:GetLocalTime() ,GetThreadTimes(),GetTickCount()等,就出现了上面问题,我是循环执行DMA那段程序许多次,然后拿时间差除以数据量而计算的速度,你可以试一下看速度是否正确!
若成功,希望可探讨一下我的程序问题! |
|
地板#
发布于:2003-05-22 18:01
用户被禁言,该主题自动屏蔽! |
|
地下室#
发布于:2003-05-22 19:20
关于GetLocalTime() ,GetThreadTimes(),GetTickCount()等这些函数哪里有讲道的阿 WINDRIVER里面没有专门测时间的函数,你只能调用WIN32的底层函数了,我前些时间也是开发了WINDRIVER的PCI卡驱动,结果测速度时出现奇怪事情,速度超过了PCI最高速度133M/S,我用了如:GetLocalTime() ,GetThreadTimes(),GetTickCount()等,就出现了上面问题,我是循环执行DMA那段程序许多次,然后拿时间差除以数据量而计算的速度,你可以试一下看速度是否正确! |
|
5楼#
发布于:2003-05-22 19:29
在MSDN里面就有啊!
|
|
6楼#
发布于:2003-05-22 22:43
《windows高级编程》里有,就是《windows核心编程》前身的那本 :)
|
|
|
7楼#
发布于:2003-05-23 11:54
为了省时间,我是用windriver做的驱动,也就是使用windriver给的9054_diag程序,那么我是不是可以直接使用GetLocalTime() ,GetThreadTimes(),GetTickCount()这些windows下的函数编写DMA和测试传输速度的子程序就可以了。
再windriver中应该可以直接调用这些函数把?? |
|
8楼#
发布于:2003-05-25 12:42
要在你的工程里包含进去WINDOWS底层的头文件就可以用了!
|
|
9楼#
发布于:2003-06-02 18:09
怎么这样复杂啊。编个循环程序,借助示波器不就行了?
|
|