ARM技术概论|ARM基础

ARM基础

1. 嵌入式系统基础知识

1.1 嵌入式系统的定义

嵌入式系统是指以应用为中心,以计算机技术为基础,软件、硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。

1.2 嵌入式系统的组成

嵌入式系统总体上是由硬件和软件组成的,硬件是其基础,软件是其核心与灵魂
嵌入式系统硬件设备包括:

  • 嵌入式处理器:ARM,PowerPC,MC68000,MIPS等
  • 存储设备:RAM,SRAM,SDRAM,ROM,EPROM,EEPROM,Flash,
  • 通讯设备:RS232,SPI,IIC,以太网等
  • 显示设备:显示屏等

嵌入式系统软件包括:

  • 应用层(Application)
  • 内核层(Kernel,带操作系统才有该层)
  • 驱动层(Driver)
  • 硬件层(Hardware)
1.3 嵌入式系统开发概述

嵌入式系统开发主要分为系统总体开发、嵌入式硬件开发和嵌入式软件开发三大部分,其总体流程图如下所示
在这里插入图片描述

2. ARM基础知识

2.1 认识ARM

ARM公司成立于1990年11月,前身为Acorn计算机公司。ARM公司主要涉及ARM系列RISC处理器内核,授权ARM内核给生产和销售半导体的合作伙伴。ARM公司不生产芯片。
ARM体系架构有:ARMv1、ARMv2、ARMv3、ARMv4、ARMv5、ARMv6、ARMv7、ARMv8架构,不同的体系架构采用不同指令集。哈佛结构是数据和指令分开存储并运行的;冯诺依曼结构是混合存储的。
ARM产品线如下图示:
在这里插入图片描述
ARM的存储器系统是由多级构成的,可以分为:内核级、芯片级、板卡级和外设级,下图为存储器的层次结构
在这里插入图片描述

2.2 ARM的工作模式及寄存器

ARM主要有7个基本工作模式

  • User : 非特权模式,大部分任务执行在这种模式
  • FIQ : 当一个高优先级(fast) 中断产生时将会进入这种模式
  • IRQ : 当一个低优先级(normal) 中断产生时将会进入这种模式
  • Supervisor :当复位或软中断指令执行时将会进入这种模式
  • Abort : 当存取异常时将会进入这种模式
  • Undef : 当执行未定义指令时会进入这种模式
  • System : 使用和User模式相同寄存器集的特权模式

ARM有37个寄存器

  • 1个用作PC ( Program Counter,程序计数器)
  • 1个用作CPSR (Current Program Status Register,当前程序状态寄存器)
  • 5个用作SPSR (Saved Program Status Registers,备份程序状态寄存器)
  • 30个通用寄存

在这里插入图片描述

上图为ARM寄存器框图,37个寄存器具体包含:

寄存器类别 寄存器名 说明
未分组寄存器 R0~R7 所有工作模式下都是同一个物理寄存器
分组寄存器 R8~R12 每个寄存器对应两个不同的物理寄存器,一组专用于FIQ模式,另一组用于其他模式
R13 SP寄存器常用做堆栈指针,每一种异常模式都有自已的R13
R14 LR连接寄存器,每种模式都有自已的R14用来存放当前子程序的返回地址
PC寄存器 R15 用于存放下一条执行指令的地址
程序状态寄存器 CPSR 当前程序状态寄存器
SPSR 备份程序状态寄存器

CPSR寄存器(和保存它的SPSR寄存器)中的位分配图
在这里插入图片描述

含义
标志位 N=1表示运算结果为负;N=0表示结果为正或0
Z=1表示运算结果为0;Z=0表示结果不为0
C进位标志(4种情况)
V溢出标志 (2种情况)
中断禁止位 I=1表示禁止IRQ
F=1表示禁止FIQ
状态控制位 T=0表示处理器处于ARM状态(32位ARM指令);T=1表示Thumb状态(16位Thumb指令)
模式控制位 10000 User;10001 FIQ;10010 IRQ;10011 Supervisor;10111 Abort;11011 Undefined;11111 System

猜你喜欢

转载自blog.csdn.net/Chuangke_Andy/article/details/108503157