【ARM】ARMv8-R (Cortex-R52)architecture System register位域定义

	最近在研究ARMv8-R的架构时,需要用到System Register,
	发现ARMv8-R的架构文档虽然有System register的summary,
	但未对System register的位域进行定义,下面提供一点思路,希望对大家如何找资料,提供点参考。

下面以ARM generic Timer(AGT)为例进行说明,简单介绍一下如何查找寄存器的详细定义。例如需要知道CNTV_CTL寄存器每1Bit的含义。

  1. 首先查阅芯片的内核Technical Reference文档
    当前使用的Cortex-R52, 属于ARMv8-R架构。
    ARM 网站链接:
    https://developer.arm.com/documentation/100026/0103/?lang=en
    【ARM】ARMv8-R (Cortex-R52)architecture System register位域定义_第1张图片
    【ARM】ARMv8-R (Cortex-R52)architecture System register位域定义_第2张图片
  2. 内核文档列出了所有的System Register中AGT的寄存器表
    不过下表并没有对每一个寄存器进行详细描述。
    【ARM】ARMv8-R (Cortex-R52)architecture System register位域定义_第3张图片
  3. 查阅ARMv8-R Architecture 文档
    ARM官网链接:
    https://developer.arm.com/documentation/ddi0568/a-c/?lang=en
    【ARM】ARMv8-R (Cortex-R52)architecture System register位域定义_第4张图片
    发现这里列举了ARMv8-R和ARMv8-A的System register对比
    【ARM】ARMv8-R (Cortex-R52)architecture System register位域定义_第5张图片
  4. 由于在ARMv8-R相关文档中未列出详细描述,
    上面又指明ARMv8-R与ARMv8-A的差异,现在直接去ARMv8-A的文档找寻答案。
    ARM官网链接:
    https://developer.arm.com/documentation/ddi0601/2022-12/?lang=en
    【ARM】ARMv8-R (Cortex-R52)architecture System register位域定义_第6张图片
  5. 可以找到CNTV_CTL寄存器的描述
    【ARM】ARMv8-R (Cortex-R52)architecture System register位域定义_第7张图片
  6. 小结
    ARM中的三大系列产品,Cortex-A, Cortex-R, Cortex-M 很多架构是一致的,相关寄存器之间的描述也是相互关联的。所以在未找到相应型号内核的描述时,建议看看是不是有地方描述两种不同架构的差异,是Unchanged还是redefined。一般情况不是两种架构确实存在差异,都会是Unchanged,这样我们在学习A系列的知识时,完全可以沿用到R系列。
    【ARM】ARMv8-R (Cortex-R52)architecture System register位域定义_第8张图片

你可能感兴趣的:(ARM,汽车电子,嵌入式生态系统,arm,单片机,mcu)