ARM架构

一、内存分布结构

栈:局部变量 函数参数 函数返回地址

堆:程序员自己管理的内存区域,使用是需要动态申请,使用捷顺后需要释放

bss: 初始化为0和未初始化的全局及静态变量

data:初始化不为0全局及静态变量 

data段和bss段的区别

1、data段:存放已初始化的全局变量。在编译器编译的时候,会给已初始化的数据分配内存空间,数据保存在目标文件中。

2、bss段:存放未初始化的全局变量。在编译器编译的时候,不会给该段的数据分配空间,只是记录数据所需的空间大小。程序执行的时候再分配内存并将内存清零。

二、ARM的结构

以最基本的功能实现为基础 

1、RAM和ROM

(1)RAM: random access memory 随机存储

特点:运行速度快快 掉电数据丢失

(2)ROM: read only memory 只读存储

特点:运行速度慢慢 掉电数据不丢失

2、RAM的迭代过程

RAM ->SRAM-> DRAM-> SDRAM-> DDR(n) (静态-> 动态-> 同步)

3、ROM的迭代过程

ROM-> PROM-> EPROM-> EEPROM (可编程-> 可擦除(紫外线)-> 电擦除 )

3、flash

特点:运行速度快 掉电数据不丢失

线性访问: 有专门的地址总线和数据总线(可以像内存一样访问)

norflash : 或非门 可线性访问

nandflash : 与非门 不可线性访问

三、CPU的结构

以CPU – ARM920T为例

PC:程序计数器, 默认值为0, 做自加运算, 实际指向正在运行的下下条指令

LR: 链接寄存器 保存函数的返回地址

SP: 栈指针寄存器, 指向栈顶

CPSR: 运算结果为正、负、进借位、结果为0等标志, 中断的使能, 工作状态,工作模式 S

PSR: CPSR的备份

Cache:缓存

MMU: 内存管理单元(虚拟地址到物理地址的映射)

四、处理器的结构

 以SOC处理器为例

由CPU(中央处理器)和其他微控制器组成搭配不同的控制器来实现所需功能

AHB:高速总线

APB:低速

1、ARM处理器的最新发展

(1)Cortex-A 特点:低功耗 消费低

(2)Cortex-R 特点:实时性

(3)Cortex-M 高性能,偏控制

2、处理器工作模式
ARM有7个基本工作模式
(1)User:非特权模式,大部分任务执行在这种模式
(2)FIQ :当一个高优先级(fast)中断产生时将会进入这种模式

(3)IRO:当一个低优先级(normal)中断产生时将会进入这种模式

(4)Supervisor:当复位或软中断指令执行时将会进入这种模式

(5)Abort:当存取异常时将会进入这种模式

(6)Undef:当执行未定义指令时会进入这种模式

(7)System:使用和User模式相同寄存器集的特权模式

还有一种Cortex-A特有模式:
Monitor:是为了安全而扩展出的用于执行安全监控代码的模式;.也是一种特权模式

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值