【问题标题】:Backwards compatibility of ARM v7 ISA to ARM v2 ISAARM v7 ISA 到 ARM v2 ISA 的向后兼容性
【发布时间】:2014-07-28 19:46:52
【问题描述】:

我目前正处于一个学校项目的早期阶段,该项目涉及分析不同类型处理器内核的功耗。我正在寻找比较硬核和软核处理器的相对功率和性能测量值;不幸的是,我很难找到后一个例子。我在 opencores.org 上发现了 Amber 项目,但我不确定我是否可以使用它。

原因以及我的问题是:我目前可以使用的开发板是 Zedboard,带有一个 Zynq-7000 SoC,而后者又包括一个 ARM Cortex A9 处理器。 A9 支持 ARM v7 ISA,而 Amber 项目仅支持 ARM v2 ISA。 v7 架构是否有可能向后兼容 v2 架构,如果是这样,有人知道我在哪里可以找到相关资源吗?

谢谢!

【问题讨论】:

    标签: arm instruction-set


    【解决方案1】:

    在 v3 之前,系统架构存在一些显着差异:

    • 只有 26 位地址空间,以及超出此范围的地址异常(在以后的体系结构中,0x14 处的“未使用”向量由此而来)。
    • 只有 4 种处理器模式。
    • 没有 PSR,相应地也没有 MSR/MRS 指令(标志/模式存储在 r15 的未使用位中,并且有特殊指令可以在不干扰 PC 的情况下仅写入这些位)。

    此外,v6 引入了许多显着的内存模型差异(中止处理、未对齐访问、独占等),这些差异也破坏了与早期行为的兼容性。

    虽然“系统”代码需要完全不同才能解决所有这些问题,但理论上您可以在两者之间共享相同的非特权“应用程序”代码,前提是它被仔细写入指令和行为的公共子集.

    与往常一样,规范参考是ARM Architecture Reference Manuals - 请注意,ARMv5 ARM 是最后一个包含 26 位架构文档的版本。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-12-05
      • 1970-01-01
      • 1970-01-01
      • 2014-08-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多