2.ARM处理器概论

ARM简介

ARM公司前身是Acorn的一个部门,专门研发Acorn公司的处理器。
RISC:精简指令集处理器

经典产品:ARM7(开始火起来)、ARM9、ARM11

从2004年起ARM命名不用数字,开始用Cortex-R\A\M系列命名,针对市场上不同需求的CPU
A系列:application,用于大型系统
R系列:real time(实时),针对军工类要求实时性较高的需求
M系列:MCU,低功耗低价格高效率,用来取代单片机
在这里插入图片描述在这里插入图片描述

RISC和CISC

RISC精简指令集处理器
随着运算需求日益增加,CPU内部的相应设计的运算电路也越来越多。精简指令集处理器就是保留那些最常用的运算电路而做成的CPU。
缺点:复杂的运算指令通过简单运算指令的组合来实现,因此要耗费更多的时间。
优点:RISC处理器在功耗、体积、价格方面有很大的优势
其它特点:指令长度(一个指令所占空间大小)固定;多为单周期指令(一个周期就能执行完)
应用场景:广泛运用于嵌入式移动端领域。

CISC复杂指令集处理器
不仅包含常用指令电路,还包括特殊指令电路。
优点:性能好
缺点:价格贵,体积大,功耗大
其它特点:指令长度和周期都不固定
应用场景:PC、服务器等领域

在这里插入图片描述

SOC片上系统

在这里插入图片描述

ARM指令集

什么是指令集

指令:CPU认识并能执行的指令,就是CPU有什么运算的电路才能做什么样的运算。
在这里插入图片描述

ARM指令集

32位->4字节,16位->2字节
开发主要用ARM指令集
在这里插入图片描述

编译原理

机器码:CPU能识别的1、0二进制码,转化为高低电平。但是难理解、由于不同处理器设计的运算电路不同,因此机器码不可移植。

汇编语言:是机器码的符号化。与机器码一一对应,因此也不可移植。

C语言:高级语言。既解决了机器码难理解的缺点,也解决了其不可移植的缺点。可以用不同的编译器将C语言转化成汇编语言,再转化成机器语言给不同的处理器运算。

C语言的编译原理
编译:将C源码转化成汇编语言
汇编:将汇编语言转化成机器码
链接:和系统组件(比如标准库、动态链接库等)结合起来变成可执行文件

在这里插入图片描述在这里插入图片描述

ARM存储模型(ARM是如何存储指令的)

ARM数据类型

什么是32位架构:就是一次性能算的最大的数据是32位。

在这里插入图片描述

字节序

字节序:如果一个数据占多个字节,其在内存的分布情况。因此不用考虑像char这种只占1个字节的数据。

如下图
大端对齐
0x12345678,1位最高位,8位最低位。
低地址N存放0x12高位,高地址存放低位,为大端对齐

小端对齐
低地址存放低位,高地址存放高位,为小端对齐

在这里插入图片描述

ARM指令存储

处理器处于ARM状态时
PC寄存器中的值(用来向内存发送地址的)最后两位一定为0,因为指令在内存的起始地址必须是4的整数倍,而4的整数倍的二进制数最后两位一定是0。
因此,PC值由2~31位决定,0 ~1位会被强制置为0。

处理器处于Thumb状态时
因为指令在内存的起始地址必须是2的整数倍,而2的整数倍的二进制数最后一位一定是0.
因此,PC值由1~31位决定,0位会被强制置为0.

在这里插入图片描述

ARM工作模式

ARM Cortex A9
User:用户模式。就像Linux操作系统分为用户态和内核态,这里的用户模式是处理器在执行上层应用程序时处于的一种状态。
FIQ:快速中断模式。中断就是在执行一个程序时被打断,去执行另一个程序,执行完然后再回来继续执行刚刚的程序。有件高优先级事件产生的中断时处于该模式。
IRQ:普通(Web)中断模式。有一个低优先级事件产生的中断时处于该模式。
SVC:超级用户模式。复位:机器上电到能运行APP这段时间所处的状态。软中断:通过代码让CPU产生的中断。硬中断:硬件发指令让CPU产生的中断。
Abort:终止模式。
Undef:指令未定义模式。
System:系统模式。
Monitor:监控模式。

在这里插入图片描述
不同模式拥有不同权限
就像手机有飞行模式和普通模式一样,ARM在不同模式下对CPU操作的权限也不同,其中user模式的权限最低,对CPU的操作最有限。

不同模式执行不同代码
比如FIQ、IRQ模式下,ARM要执行硬件发来的指令。其它模式也有自己要执行的代码。

不同模式完成不同的功能

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值