1、ARM版本Ⅲ : V3版架构 ARM作为独立的公司,在1990年设计的第一个微处理器采用的是版本3的ARM6。它作为IP核、独立的处理器、具有片上高速缓存、MMU和写缓冲的集成CPU。变种版本有3G和3M。版本3G是不与版本2a向前兼容的版本3,版本3M引入了有符号和无符号数乘法和乘加指令,这些指令产生全部64位结果。
2、各ARM体系结构版本 ARM体系结构从最初开发到现在有了很大的改进,并仍在完善和发展。为了清楚地表达每个ARM应用实例所使用的指令集,ARM公司定义了6种主要的ARM指令集体系结构版本,以版本号V1~V6表示 ARM版本Ⅰ: V1版架构 该版架构只在原型机。
3、ARM7体系结构是小型、快速、低能耗、集成式的RISC内核结构。该产品的典型用途是数字蜂窝电话和硬盘驱动器等,目前主流的ARM7内核是ARM7TDMI、ARM7TDMI-S、ARM7EJ-S、ARM720T。
4、ARM微处理器核心与体系结构发展:从ARM7到ARM11,再到Cortex系列,ARM处理器核心与体系结构持续进化,性能、能效、安全性不断提升。ARM7处理器:采用ARMV4T体系结构,具有三级流水、统一指令与数据Cache,低功耗、小型、快速、集成式RISC内核,适用于数字蜂窝电话、硬盘驱动器等。
1、ARM指令集可以分为跳转指令、数据处理指令、程序状态寄存器(PSR)处理指令、加载/存储指令、协处理器指令和异常产生指令六大类。ARM 处理器组建了可以与数据处理指令(ADC、ADD、AND、BIC、CMN、CMP、EOR、MOV、MVN、ORR、RSB、SBC、SUB、TEQ、TST)一起使用的桶式移位器(barrel shifter)。
2、属于ARMv7架构。ARM32指令集属于ARMv7架构,32位的,对应处理器为Cortex-A15等。ARM指令集可以分为跳转指令、数据处理指令、程序状态寄存器处理指令、加载/存储指令、协处理器指令和异常产生指令六大类。
3、ARM指令集中,程序跳转主要有两种方式:一是通过跳转指令;二是通过直接修改PC寄存器(R15)中的目标地址。长跳转允许在46B地址空间内任意跳转,预先保存返回地址实现子程序调用。ARM5及以上版本支持ARM和Thumb指令集的混合使用,指令的bit[0]决定了目标程序类型。
4、ARM指令集特点:ARM指令集是专门为嵌入式系统设计的一种精简指令集(RISC)架构,具有以下特点: 指令种类多:ARM指令集包括各种数据操作指令,如加载/存储、算术运算、逻辑运算等,以及跳转、分支和跳转指令。 高效执行:ARM指令集设计精简,指令长度固定,提高了执行效率。
5、ARM指令集包含多种运算指令,如算术运算、逻辑运算、移位等,满足复杂运算需求。跳转指令,如B和BL,分别用于简单跳转与带返回地址的跳转,有效控制程序流程。访问CPSR指令如MRS和MSR,实现寄存器与程序状态之间的数据交换。访问外部寄存器指令,如LDR和STR,用于外部数据存储操作。
6、计数前导零CLZ指令;BRK中断指令;增加了数字信号处理指令(V5TE版); 为协处理器增加更多可选择的指令;改进了ARM/Thumb状态之间的切换效率;E---增强型DSP指令集,包括全部算法操作和16位乘法操作;J---支持新的JAVA,提供字节代码执行的硬件和优化软件加速功能。
在深入理解计算机底层的旅程中,armv7-A系列的硬件汇编指令就像一把解锁处理器神秘世界的钥匙。这些指令直接针对处理器设计,它们的语法与编译器无关,对硬件环境有着深刻的依赖,掌握它们是掌握硬件控制和优化性能的关键。
不出意外,这将会是一个系列,分别是ARM处理器及架构发展概述、ARMV7-A架构以及微架构分析、ARMv8-A架构以及微架构分析,一些关键技术如Trustzone/big.LITTLE/NEON/AMBA、以及整个ARM软件生态的总体情况分析等。
深入探索ARMv7-A架构的指令世界,让我们一起探索那些常见的汇编指令,它们是程序设计中的关键组件。基础指令:LDR/STR与多模式寻址在ARMv7-A中,LDR (Load) 和 STR (Store) 指令是内存与通用寄存器之间数据交换的基石。
armv7是指令集,cortex-a8构架的都用armv7指令集,这是嵌入式系统开发的基础知识,ARM系列目前最新最先进的指令集,对应的就是ARMCortex-A8/A9系列(A9应该算是改进型ARMV7指令集),前一代的ARM11处理器用的是ARMV6指令集。