qinlei_sz
驱动小牛
驱动小牛
  • 注册日期2007-03-24
  • 最后登录2012-12-18
  • 粉丝0
  • 关注0
  • 积分1090分
  • 威望510点
  • 贡献值0点
  • 好评度145点
  • 原创分0分
  • 专家分0分
阅读:1491回复:5

TCPMP是怎样测试出平台处理器主频的

楼主#
更多 发布于:2007-11-15 16:33
想动态改变处理器的FCLK。改变后在驱动里把跟FCLK相关的REG打印出来计算得结果是改变了,但实际运行的效果好象没改变,且用TCPMP中的一个功能查看到的FCLK也还是没变,想知道TCPMP是怎样计算主频的?还请问各位:为什么改了跟FCLK相关的REG后,实际的主频跟用REG算出来的不一样?(不播放时TCPMP测出的FCLK还是很准的。)
qinlei_sz
驱动小牛
驱动小牛
  • 注册日期2007-03-24
  • 最后登录2012-12-18
  • 粉丝0
  • 关注0
  • 积分1090分
  • 威望510点
  • 贡献值0点
  • 好评度145点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2007-11-15 16:35
不好意思,忘了告诉大家那是2440芯片。
zhengshijie
驱动小牛
驱动小牛
  • 注册日期2003-07-11
  • 最后登录2009-03-18
  • 粉丝1
  • 关注0
  • 积分8分
  • 威望217点
  • 贡献值0点
  • 好评度199点
  • 原创分3分
  • 专家分0分
板凳#
发布于:2007-11-15 18:54
主频调整后,你的系统定时器重新设定没有?是否还是1MS的分辨率,因为TCPMP是基于系统定时器GetTickCount()来作为时间基准,如果这个时间基准不对了,那么算出来主频自然也就不对了。计算主频的算法,把自己优先级提高,获取当前时间值,运行已知个指令,获取时间值,用运行的指令数除以时间间隔得出主频。所以你的主频调整了,GetTickCount()定的时间不准,算出来的主频也就不准了。
qinlei_sz
驱动小牛
驱动小牛
  • 注册日期2007-03-24
  • 最后登录2012-12-18
  • 粉丝0
  • 关注0
  • 积分1090分
  • 威望510点
  • 贡献值0点
  • 好评度145点
  • 原创分0分
  • 专家分0分
地板#
发布于:2007-11-16 10:18
顺便问一下,系统定时器重新设有什么样的规则?要是我现在399MHZ是1MS的分辨率,那266MHZ我该怎么确定他的新分辨率?
zhengshijie
驱动小牛
驱动小牛
  • 注册日期2003-07-11
  • 最后登录2009-03-18
  • 粉丝1
  • 关注0
  • 积分8分
  • 威望217点
  • 贡献值0点
  • 好评度199点
  • 原创分3分
  • 专家分0分
地下室#
发布于:2007-11-16 13:18
看你的OALTimerInit(..)是怎么实现的,它在OEMInit()中是怎么调用的,根据新的主频调整OALTimerInit(...)的输入参数,看一下CPU有关定时器的配置就知道了。
qinlei_sz
驱动小牛
驱动小牛
  • 注册日期2007-03-24
  • 最后登录2012-12-18
  • 粉丝0
  • 关注0
  • 积分1090分
  • 威望510点
  • 贡献值0点
  • 好评度145点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2007-11-16 23:14
谢谢zhengshijie,我基本看明白了,另外我发现了我的PWM驱动会让TCPMP在我的CLKDIVN和MPLLCON设置为399MHZ时会检查为296MHZ,不加载PWM驱动时就测出是399MHZ.还得看看先.
游客

返回顶部