概述
快速链接:
???????????? 个人博客笔记导读目录(全部) ????????????
- ARMv8/ARMv9架构精选系列–目录 ????????????
- ARMV8/ARMV9/Trustzone/TEE安全课程????????????
前言:
文章目录
- 1、architecture
- 2、processor中有哪些timer?
- 3、寄存器介绍
- (1)、Count and frequency
- (2)、Timer registers
- (3)、Accessing the timers
- 4、Configuring a timer
- 4、中断
- 5、Timer virtualization
1、architecture
generic Timer由System Counter和per-core timer组成.
2、processor中有哪些timer?
3、寄存器介绍
(1)、Count and frequency
CNTPCT_EL0:reports the current system count value
(2)、Timer registers
主要有三个寄存器:
(3)、Accessing the timers
• EL1 Physical and Virtual Timers
CNTKCTL_EL1.
• EL2 Physical and Virtual Timers
CNTKCTL_EL2:. These timers were added as part of the support for the Armv8.1-A Virtualization Host Extension, which is beyond the scope of this
• EL3 physical timer
SCR_EL3.ST.
4、Configuring a timer
使用timer有两种方式:
- 使用CVAL, CVAL是64位的寄存器;
- 使用TVAL, TVAL是32位的寄存器, TVAL随着system conter值的增加而减小.
4、中断
timer产生的中断,只可以routing到当前core
timer中断的控制,在CTL寄存器中
The interrupt ID (INTID)由SBSA文档定义推荐的值, 注:Server Base System Architecture (SBSA)
中断产生之后,会持续输出中断,直到如下条件发生:
所以在产生一个timer中断后,软件需要在该中断变为deactivating之前,清除该中断。
5、Timer virtualization
Virtual Count = Physical Count -
最后
以上就是复杂火为你收集整理的[architecture]-Generic Timer的全部内容,希望文章能够帮你解决[architecture]-Generic Timer所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复