ARM处理器各个模式之间是如何切换的?

发布者:剑戟辉煌最新更新时间:2020-01-19 来源: eefocus关键字:ARM  处理器  模式  切换 手机看文章 扫描二维码
随时随地手机看文章

1、ARM处理器各个模式之间是如何切换的?


答:除用户模式外的其他6种模式称为特权模式,这些模式中,程序可以访问所有系统资源,也可以任意进行处理器模式的切换。处理器模式可以通过软件控制进行切换(直接设置CPSR寄存器的后五位就可以在6种特权模式之间互相切换),也可以通过外部中断或异常处理过程进行切换(例如,在USR模式下,发生中断后切换到IRQ模式)。


2、ARM各个模式之间切换时,上下文的保存哪些是硬件在做?哪些是操作系统在做?


答:CPU做的:


(1)把返回地址保存到相应模式的lr寄存器中,例如从usr模式切换到irq模式,CPU会将usr模式下的pc值,保存到irq模式下的lr寄存器中。


(2)保存CPSR到相应模式的SPSR寄存器中,还是上面的例子,CPU保存usr模式下的CPSR到irq模式下的SPSR中。


(3)将pc设置成相应模式下的某地址值继续执行。


操作系统做的(以从模式A切换到模式B为例):


操作系统所做内容需要根据情况而定,因为模式切换不一定伴随着进程之间的切换,有可能从A模式切换到B模式后,CPU执行的是同一个进程,这时不需要操作系统具体做什么。


当模式切换伴随着进程切换时,操作系统需要保存模式切换之前的上下文环境。也就是进程控制块,进程控制块包括标识符、用户可见寄存器、控制和状态寄存器、栈指针等等,这与普通的进程切换类似。


关键字:ARM  处理器  模式  切换 引用地址:ARM处理器各个模式之间是如何切换的?

上一篇:ARMv7汇编代码分析
下一篇:ARM用户层发生异常后软硬件协同处理流程

推荐阅读最新更新时间:2024-11-04 15:37

keil不能进调试模式的解决方法
一、问题现象 平时用烧录器调试程序一直都没问题,突然今天不能调试了。故障提示如下: 二、问题分析 尝试过各种解决方法:插拔烧录器,更换烧录器,插拔stm32主机电源,重启keil开发环境,问题依旧。 看来问题不应该在主机和烧录器上,最后问题定位在keil软件的配置上面。 三、问题解决 感觉问题应该在烧录器的配置上,随后尝试修改烧录器配置。 发现“Download option”两个选项都打钩了,那样猜测问题应该在这里。结果把打钩的地方去掉,问题就解决了,程序也能进调试模式进行断点跟踪了。
[单片机]
keil不能进调试<font color='red'>模式</font>的解决方法
Arm 宣布推出全新汽车技术,可缩短多达两年的人工智能汽车开发周期
新闻 重 点 : 支持功能安全的全新 Arm 汽车增强 (AE) 处理器将为 AI 驱动的用例带来先进的 Armv9 架构技术和服务器级性能 Arm 针对汽车应用的未来计算子系统将进一步缩短高性能汽车系统的开发时间、降低成本,并带来最大的灵活性 Arm 生态系统首次实现在物理芯片就绪前就可基于虚拟原型解决方案启动软件开发,由此可缩短多达两年的开发周期 Arm 控股有限公司(纳斯达克股票代码:ARM,以下简称“Arm”)今日携手生态系统合作伙伴推出最新的 Arm 汽车增强 (AE) 处理器和虚拟平台,让汽车行业在开发伊始便可应用,助力缩短多达两年的开发周期。 Arm 高级副总裁兼汽车事业部总经理 Dipti Vac
[汽车电子]
ARM发布史上最强显示控制器:2.5K/4K屏有福了
    ARM今天宣布推出其史上最强性能、最高能效的显示控制器“Mali-DP650”,重点强化了对设备屏幕分辨率的支持。 Mali-DP650搭配ARM CoreLink MMU-500系统总线,可以支持各种不同分辨率,尤其是优化了对2560×1600(平板机)、2560×1440(手机)这种2.5K屏的支持,同时也能轻松支持3840×2160 4K分辨率和60fps帧率,并且能将4K视频从移动设备流传输到 大屏显示器上进行播放。 相比于上代Mali-DP550,它还将AXI总线位宽翻番到了128-bit,支持MMU预取、更多的4K复合层,对内存延迟的处理也更好。
[手机便携]
基于MSC1201微处理器的温度控制系统的实现
摘要:介绍TI公司推出的一款用于数据采集系统的MSC1201型微处理器,该电路具有与8051型微处理器完全兼容的内核,执行速度更快,功耗更低。详细介绍基于此电路并配合ADI的AD590型温度传感器的温度控制系统的设计与实现。 关键词:MSC1201;数据采集;温度控制:AD590 1 引言 随着现代控制技术的发展,在工业控制领域需要对现场数据进行实时采集,在一些重要场合对数据采集的要求更高,例如在电厂、钢铁厂、化工领域的生产中都需要对大量数据进行现场采集,而温度采集又是其中极为重要的部分,因此,需要一种高精度、低成本的数据采集与控制系统。 为了方便地实现温度采集与控制系统,笔者选用MSC1201作为系统的MCU。MSC1
[应用]
ST有意拆分,将退出智能机处理器市场
鉴于即将退出意法爱立信(ST-Ericsson)——在移动处理器方面合资失败的一家公司,位于瑞士日内瓦的欧洲最大芯片公司意法微电子5月16日向财务分析师们披露了公司的总体战略细节。 这份战略计划早在2012年12月决定退出意法爱立信时就宣布了,但意法微电子公司首席战略官Georges Penlaver告诉分析师,意法微电子公司正在重新组建两个以产品为导向的业务部门,这两个部门将成为财务上可独立支撑的两大块。第一块包含意法微电子公司的传感器、功率器件和汽车产品,基本上是公司成功的模拟业务及数字汽车业务。第二块是意法微电子公司的嵌入式处理业务,也是非汽车类数字业务,包括用于数字消费应用的微控制器和处理器。 Penalver进一步解释
[半导体设计/制造]
ST有意拆分,将退出智能机<font color='red'>处理器</font>市场
做跨国公司中的“小巨人”——ARM的成长
1990年11月,一位名叫Robin Saxby的英国人带着由Acorn电脑集团提供的技术和最初的12名工程师,借以苹果电脑和VLSI Technology公司出资,开始创业历程。1991年他们便成功地研制出首个低成本RISC结构体系,且被应用于苹果电脑正在开发的PDA上,这也印证了该公司的取名“Advanced RISC Machines”(简称ARM)。 打开市场 “最初的窘态成就了ARM的今天。”1990年由英国电脑公司Acorn、苹果电脑及ASIC芯片公司VLSI Technology合资成立的小型技术企业ARM,最初主业是向苹果提供芯片技术产品,但其业务并没有得到母公司的强力支持,ARM只好转身寻求在芯片业
[焦点新闻]
ARM几条汇编指令的比较
1、LDRR0,=0X3FF5000;伪指令,把0X3FF5000这个地址送给R0 2、LDRR0,0XFF;把立即数0xff送给R0 3、LDRR0,= &相当于0X 4、BICR0,R0,#%1011;.#表示立即数,%表示二进制 LDRR1,=0x3ff5000;伪指令R1=0X3FF5000 LDRR1,0x3ff5000;存储器访问指令R1= ======================================================================= adr与ldr比较 adrr0,InitSystem; ldrr1,=InitSystem; 伪指令adrr0,InitSyste
[单片机]
电子工程师们,何为微处理器理想之选
在中国电子设计与制造企业中,电子工程师们目前可以选择的微处理器的品牌达几十家,其中包括欧美、日、韩、台湾以及大陆的众多原厂品牌。还包括有ARM、 PowerPC、MIPS、SPARC等多种内核与架构的处理器。eMRG通过在多家电子工程师社群网站上做在线调查,发现主流品牌的微处理器在价格、性能、规格和供货等方面的对比结果。下面是一些本次调查的数据报告,供大家参考。   一、首选处理器的品牌      从调查看,位列前五位的品牌应该是目前中国厂商用得最多的处理器厂商,TI和ST的领先很明显。   二、处理器的价格评分      MediaTek、展讯和AMD给人的印象应该是价格不错,ST和nVidia也进入前五。令人意外的
[模拟电子]
电子工程师们,何为微<font color='red'>处理器</font>理想之选
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved