zhangyanping
驱动小牛
驱动小牛
  • 注册日期2003-02-23
  • 最后登录2004-07-23
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1112回复:6

如何测试DMA的速度?(20分相送!)

楼主#
更多 发布于:2003-04-23 15:15
我现在想要用WINDRIVER的诊断函数测试一下可以工作的DMA速度,我知道可以直接用WINDOWS里面的定时器测试,可是不知道具体是那个API函数,请高手指点一下,多谢了!!!
zhaoruolei
驱动牛犊
驱动牛犊
  • 注册日期2003-04-22
  • 最后登录2003-10-14
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-04-23 18:02
   DMA是什么啊?(无知的问题,请不吝赐教)
汗!!! 我好。。。。菜!
zhangyanping
驱动小牛
驱动小牛
  • 注册日期2003-02-23
  • 最后登录2004-07-23
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-04-24 11:19
DMA=direct memory access
arthurtu
驱动巨牛
驱动巨牛
  • 注册日期2001-11-08
  • 最后登录2020-12-19
  • 粉丝0
  • 关注0
  • 积分26分
  • 威望161点
  • 贡献值0点
  • 好评度35点
  • 原创分0分
  • 专家分0分
  • 社区居民
地板#
发布于:2003-04-24 12:17
GetThreadTimes,不过9x不支持。
要求不高,用GetTickCount看看,不要干别的活。
zhangyanping
驱动小牛
驱动小牛
  • 注册日期2003-02-23
  • 最后登录2004-07-23
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2003-04-24 16:02
感谢authurtu的回答了,我是在WIN2000下面用WINDRIVER开发的9054采集卡,上午,我使用SYSTEMTIME结构和GetLocalTime(),获得DAM之前和之后的时间差,除以数据量,竟然得到大约800兆每秒的传输率,所以,肯定是不正确的,但是,我很奇怪,为什么用系统时钟会得到这样的结果呢?

我现在就试一下你说的函数,希望可以成功!
zhangyanping
驱动小牛
驱动小牛
  • 注册日期2003-02-23
  • 最后登录2004-07-23
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2003-05-01 22:18
authurtu,使用的结果仍然是几乎一样的阿,这是怎么回事阿?

真的太奇怪了,我真的觉得自己没有错误阿,难道我计时的地方不对?
FENGGUOJIN
驱动牛犊
驱动牛犊
  • 注册日期2003-04-22
  • 最后登录2003-05-23
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2003-05-05 13:36
系统可以得到的最高精度的函数为
QueryPerformanceCounter和
QueryPerformanceFrequency 可以达到US级的精度。
测试速度一般用这个很好的,运行和硬件有关与软件的关系不大,系统应该不会影响的,但是注意一点,这个函数运行需要很长的时间,好象是10-100微秒把,你自己在测一下就可以了。推荐用这个。

gettickcout 只有毫秒级的精度。


游客

返回顶部