Board logo

标题: ARM的指令集体系结构 [打印本页]

作者: yuyang911220    时间: 2016-10-19 21:30     标题: ARM的指令集体系结构

Come From: http://www.arm.com/zh/products/processors/technologies/instruction-set-architectures.php
指令集体系结构
ARM 处理器体系结构为 32 位 ARM 和 16 位 Thumb® 指令集体系结构 (ISA) 以及体系结构扩展提供支持,从而支持 Java 加速 (Jazelle®)、安全技术 (TrustZone®)、SIMDNEON™ 技术。 ARM 体系结构支持各种性能方面的实现。在众多细分市场中,它都是领先的体系结构。ARM 处理器体系结构简单,因而可以进行极小规模的实现,而小规模的实现则意味着设备的功耗可以很低。实现规模、性能和非常低的功耗是 ARM 体系结构的关键特性。
ARM 体系结构是精简指令集计算 (RISC) 体系结构,因为它包含以下典型 RISC 体系结构特征:
此外,ARM 体系结构还提供:
这些对基本 RISC 体系结构的增强使 ARM 处理器可以实现较高性能、较小代码大小、较低功耗和较小硅面积的良好平衡。
ARM 指令集体系结构仍在不断改进,以满足领先应用程序开发人员不断增长的需求,同时保留保护软件开发投资所需的向后兼容性。
ARM 使用通用汇编语言来为所有 ARM 和 Thumb 指令提供标准形式。这样,用户即可编写可对任一指令集进行汇编的汇编代码。






ARM 32 位指令集是 ARMv4T、ARMv5TEJ 和 ARMv6 体系结构中使用的基本 32 位 ISA。在这些体系结构中,该指令集用于需要高性能的应用领域,或用于处理硬件异常,如中断和处理器启动。 对于关键性能应用和旧代码,Cortex 体系结构的 Cortex™-ACortex-R 配置文件也支持 ARM 32 位 ISA。其多数功能都包括在 Thumb-2 指令集中,该指令集也从改进的代码密度中获益。
ARM 指令的长度为 32 位,需要 4 字节边界对齐。
还可对所有 ARM 指令进行“条件化”,使其仅在以前的指令设置了特定条件代码时执行。这意味着,如果应用程序状态寄存器中的 N、Z、C 和 V 标记满足指令中指定的条件,则指令仅对程序员的模型操作、内存和协处理器发挥其正常作用。如果这些标记不满足此条件,则指令会用作 NOP,即执行过程正常进入下一指令(包括将对异常进行任意相关检查),但不发挥任何其他作用。此条件化指令允许对 if 和 while 语句的一小部分进行编码,而无需使用跳转指令。
条件代码包括:

条件代码 含义

N

否定条件代码,如果结果为否定的,则设置为 1

Z

零条件代码,如果指令的结果为 0,则设置为 1

C

进位条件代码,如果指令生成进位条件,则设置为 1

V

溢出条件代码,如果指令生成溢出条件,则设置为 1。




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0