一文带你入门AMR

什么是AMR

ARM, Advanced RISC Machine的缩写,是英国的一家微处理器企业,前两年被软银收购;
同时他将公司的产品也叫为AMR,因此现在我们说起AMR往往指的是AMR芯片,例如AMR8/AMR9等等。

这里写图片描述
其中左侧的就是架构,右侧的是处理器,也可以叫核。arm首个最成功的cpu是ARM7TDMI,是基于ARMv4的。ARM架构包含了下述RISC特性:
读取/储存 架构
不支援地址不对齐内存存取(ARMv6内核现已支援)
正交指令集(任意存取指令可以任意的寻址方式存取数据Orthogonal instruction set)
大量的16 × 32-bit 寄存器阵列(register file)
固定的32 bits 操作码(opcode)长度,降低编码数量所产生的耗费,减轻解码和流水线化的负担。
大多均为一个CPU周期执行。
不同版本的架构会有所调整。


AMR分为三个系列:

1、cortex-M:Optimized for cost and power sensitive MCU and mixed-signal devices for applications such as Internet of Things, connectivity, motor control, smart metering, human interface devices, automotive and industrial control systems, domestic household appliances, consumer products and medical instrumentation.

2、cortex-R:Cortex-R series processors deliver fast and deterministic processing and high performance, while meeting challenging real-time constraints in a range of situations. They combine these features in a performance, power and area optimized package, making them the trusted choice in reliable systems demanding high error-resistance.

3、cortex-A:The Arm Cortex-A series of applications processors provide a range of solutions for devices undertaking complex compute tasks, such as hosting a rich Operating System (OS) platform, and supporting multiple software applications.

这里写图片描述


SOC(system on chip)
现在市面上看到了很多手机处理器:如高通晓龙845、麒麟980、苹果的A11等等,均是和arm合作的SOC;
这些合作厂商通常会把它的CPU和各类外围IP都放到一起,然后自己拿着图纸去流片,生产出来的也是一个正方形,下面有很多引脚,这个东西不仅包含了CPU,还包含了其他的控制器,这个东西就叫做SOC(system on chip)

这里写图片描述


下面开始我们了解下ARM实际上应用的一些知识

ARM处理器的两种工作状态

1、ARM状态:32位,ARM状态执行字对齐的32位ARM指令。

2、Thumb状态,16位,执行半字对齐的16位

注:1、ARM和Thumb两种状态之间的切换不影响处理器的工作模式和寄存器的内容。
2、ARM处理器在处理异常时,不过处理器处于什么状态,则都将切换到ARM状态。


ARM处理器7种工作模式
1. 用户模式(USR):正常程序执行模式,不能直接切换到其他模式

2. 系统模式(SYS):运行操作系统的特权任务,与用户模式类似,但具有可以直接切换到其他模式等特权

3. 快中断模式(FIQ):支持高速数据传输及通道处理,FIQ异常响应时进入此模式

4. 中断模式(IRQ):用于通用中断处理,IRQ异常响应时进入此模式

5. 管理模式(SVC):操作系统保护模式,系统复位和软件中断响应时进入此模式(由系统调用执行软中断SWI命令触发)

6. 中止模式(ABT):用于支持虚拟内存和/或存储器保护,在ARM7TDMI没有大用处

7. 未定义模式(UND):支持硬件协处理器的软件仿真,未定义指令异常响应时进入此模式

附:
除用户模式外,其余6种工作模式都属于特权模式
特权模式中除了系统模式以外的其余5种模式称为异常模式
大多数程序运行于用户模式
进入特权模式是为了处理中断、异常、或者访问被保护的系统资源

硬件权限级别:系统模式 > 异常模式 > 用户模式

这里写图片描述

下文会以最新的高通晓龙845为例子来聊聊AMR

以下公众号会先发布:
这里写图片描述

猜你喜欢

转载自blog.csdn.net/weixin_42124889/article/details/80395839