龙芯开源社区

 找回密码
 注册新用户(newuser)
查看: 1260|回复: 5

请教一下3A上的定时器资源,除了count/compare寄存器之外,是否还有其他定时器?

[复制链接]
发表于 2016-7-21 17:25:33 | 显示全部楼层 |阅读模式
我把从官网上下载的3A2000的手册翻了一遍,MIPS上人人共知的协处理器count/compare寄存器组成定时器,供操作系统使用。想知道除此之外,还有没有其他的定时器资源? 我想在软件上,再加一个辅助时钟的定时器功能。
多谢高手指点!
发表于 2016-7-22 18:30:11 | 显示全部楼层
HPET
 楼主| 发表于 2016-7-22 18:39:30 | 显示全部楼层
是AMD SB700南桥上的资源吗? 我查了寄存器手册没看到HPET的描述
 楼主| 发表于 2016-7-22 18:43:22 | 显示全部楼层
搜到了
HPETIrqEn 10 0b High Precision Event Timer (also called Multimedia Timer)
interrupt enable
只看了几个寄存器描述,还没有看到硬件原理描述
发表于 2016-7-23 09:44:28 | 显示全部楼层
自己去参考Linux内核。
发表于 2016-7-26 17:47:32 | 显示全部楼层
3A2000手册上有perf counter,用户态可以不使用perf功能,将其变成一个高精度定时器,
内核中使能这个功能,可在trap.c-->per_cpu_trap_init()中禁止perf counter中断
     //use the perf counter as counter
        perfctl0 = read_c0_perfctrl0();
        perfctl0 &= 0xffffffef;
        perfctl0 |= 0xf;
        write_c0_perfctrl0(perfctl0);

用户态

参考HWREna reg 说明,
可以使用
  rdhwr $30方式读取counter值


不知是否可以满足你的要求,供参考

本版积分规则

小黑屋|手机版|Archiver|Lemote Inc.  

GMT+8, 2019-1-23 17:37 , Processed in 0.168382 second(s), 19 queries .

快速回复 返回顶部 返回列表