历史上的今天
返回首页

历史上的今天

今天是:2025年03月16日(星期日)

正在发生

2020年03月16日 | ARM处理器工作模式介绍

2020-03-16 来源:eefocus

从今天开始学习ARM异常中断处理相关的知识点;首先学习ARM的工作模式。


ARM处理器共有7种运行模式,如下表所示。


ARM处理器的7种运行模式

image.png?imageView2/2/w/550

除了用户模式之外的其它6种处理器模式称为特权模式。在这些模式下,程序可以访问所有的系统资源,也可以任意地进行处理器模式的切换。其中,除系统模式外,其他5种特权模式又称为异常模式。


处理器模式可以通过软件控制进行切换,也可以通过外部中断或异常处理过程进行切换。大多数的用户程序运行在用户模式下。这时,应用程序不能够访问一些受操作系统保护的系统资源。应用程序也不能直接进行处理器模式的切换。当需要进行处理器模式切换时,应用程序可以产生异常处理,在异常处理过程中进行处理器模式的切换。这种体系结构可以使整个操作系统控制整个系统的资源。


当应用程序发生异常中断时,处理器进入相应的异常模式。在每一种异常模式中都有一组寄存器,供相应的异常处理程序使用,这样可以保证在进入异常模式时,用户模式下的寄存器不被破坏。


系统模式并不是通过异常过程进入的,它和用户模式具有完全一样的寄存器。但是系统模式属于特权模式,可以访问所用的系统资源,也可以直接进行处理器模式切换。它主要供操作系统任务使用。通常操作系统的任务需要访问所有的系统资源,同时该任务仍然使用用户模式的寄存器组,而不是使用异常模式下相应的寄存器组,这样就可以保证当异常中断发生时任务的状态不被破坏。


怎么让CPU工作于某种模式,可以通过设置CPU的CPSR寄存器。CPSR寄存器格式如下:

各个位的功能介绍如下:


M0~M4:被称为模式位;可以通过这5位来设置CPU的工作模式;


T(bit5):用来表示操作状态;如果是1表示工作在Thumb状态,如果有0表示工作在ARM状态;


F(bit6):如果设置为1,则表示禁止FIQ中断;


I(bit7):如果设置为1,则表示禁止IRQ中断;


V(bit28):对于加减运算指令,当操作数和运算结果为二进制的补码表示的带符号数时,V=1表示符号位溢出;


C(bit29):在加法指令中,当结果产生了进位,则C=1,表示无符号数运算发生上溢出;其他情况C=0;在减法指令中,当运算发生借位,则C=0;表示无符号数运算发生下溢出;其他情况C=1;


Z(bit30):当Z=1时表示运算结果为零;Z=0时表示运算结果不为零;


N(bit31):当N=1时表示运算的结果为负数;当N=0时表示结果为正数或零。


本文完毕!

推荐阅读

史海拾趣

Accuride公司的发展小趣事

在经营过程中,Accuride公司也进行了一系列子公司出售和业务调整。例如,它曾宣布出售其子公司Fabco汽车公司。这一举措有助于Accuride公司更加专注于其核心业务,优化资源配置,提升整体运营效率。同时,通过出售子公司,Accuride也获得了一定的资金回流,为公司的未来发展提供了资金支持。

ACCUTEK公司的发展小趣事

随着产品质量的不断提升和市场份额的逐步扩大,ACCUTEK公司开始将目光投向国际市场。公司积极参加国际电子展会和技术交流活动,与全球多家知名企业建立了合作关系。同时,公司还在海外设立了多个分支机构,以便更好地服务当地客户。这些举措不仅提升了公司的国际影响力,也为公司的长远发展注入了新的活力。

BOSER公司的发展小趣事

BOSER公司始终关注企业社会责任和可持续发展。公司在生产过程中积极采用环保材料和技术,降低能耗和排放。同时,BOSER还积极参与公益事业,为社会做出贡献。这些举措不仅提升了公司的社会形象,也为公司的可持续发展奠定了坚实基础。

需要强调的是,以上五个故事是基于电子行业常见趋势和挑战虚构的BOSER公司的发展故事。虽然这些故事是虚构的,但它们反映了电子公司在发展过程中可能遇到的机遇和挑战,以及如何通过不断创新和适应市场变化来实现持续发展。如果您希望了解真实存在的电子公司的发展故事,建议查阅相关公司的官方资料或新闻报道。

BROTHER公司的发展小趣事

随着全球市场的不断扩大,BROTHER意识到要实现持续发展,必须走国际化道路。因此,公司在上世纪五十年代开始积极实施国际化战略。首先,BROTHER在美国纽约建立了销售总部,以更好地服务北美市场。随后,公司又在欧洲等地建立生产基地和销售网络,进一步拓展国际市场。通过国际化战略的实施,BROTHER不仅提升了品牌知名度和市场份额,还积累了丰富的跨国经营经验。

登丰微(GSTEK)公司的发展小趣事

歌普电子深知技术创新的重要性,因此不断加大在研发方面的投入。公司拥有一支卓越的研发团队,能够设计出先进而成熟的产品方案,并配备了精密模具制造、高速连续冲压等先进生产设备。这些努力使得歌普的产品不仅获得了多项国际安全认证及外观设计专利,还成功与国际品牌连接器相兼容。随着产品的不断优化和升级,歌普的产品远销全球多个工业国家及地区,赢得了良好的国际声誉。

ACE [ACE Technology Co., Ltd.]公司的发展小趣事

歌普电子始终将产品质量视为企业的生命线。公司采用精细化管理模式,并严格执行ISO9001质量管理体系,确保每一件产品都达到高标准。同时,歌普的产品还通过了UL、CSA、TUV等国际安全认证及RoHS2.0、REACH欧盟绿色环保检测,进一步证明了其产品的可靠性和环保性。这些努力使得歌普在市场上获得了广泛的认可,与众多知名企业建立了长期稳定的合作关系。

问答坊 | AI 解惑

好资料“时钟参数shew和jitter介绍”!

这个资料不错,看看很有帮助的!…

查看全部问答>

对中国目前3G的一点看法

3G时代,能否替代原有的固定宽带 2009年元月,中国3张3G牌照发放   电信 cdma2000  推出天翼品牌,声称测试速度已经达到3.3Mbps,年底升级到9Mbps。   联通 WCDMA   声称速度达到7.2Mbps,号称最成熟的3G制式。   ...…

查看全部问答>

问一下 元器件清单的公布问题

本帖最后由 paulhyde 于 2014-9-15 09:42 编辑 今年的元器件清单公布时间是29号? 不会提前公布出来么 早点公布也好早点猜题啊?  …

查看全部问答>

按键切换的动作,全部用串口进行通信???

“所有按键需要通过串口自发自收来调校各种功能” 本人太菜了,遇到了这个问题,虚心请教一下怎么样可以实现这种功能。 假如有4个以上的按键…

查看全部问答>

光耦的CTR

用于开关电路,所以必须要是三极管处于深度饱和区. 一般工程师在设计时,IF*CTR=(2~3)Ic,这里取2~3倍是为了处于饱和区.…

查看全部问答>

大型ARM+linux+android嵌入式技术专题公益讲座

华清远见武汉华嵌中心将于2010年4月24日下午1:00-5:00在武汉大学联手ARM中国公司,开展“基于ARM平台的嵌入式系统设计专题讲座”。 详情请点击: http://www.embedhq.org/html/mianfei/2010/0408/382.html…

查看全部问答>

关于 微信号数据采集系统设计的疑问

   本系统侧重点在微信号的采集,通过设计一个微信号采集和分析的系统,通过特定的集成电路对微小信号放大,转变为标准电流信号并能够传输到远端。通过模数转换器将其转换为数字量。利用相应软件对采集到的数字进行修正,使之能够比较准 ...…

查看全部问答>

是不是有个flable工具或框架

能用于wince上,做pushmail 一朋友说他听到过,问我,我也不知道,来问问大家 单词可能拼写错误.thanks!…

查看全部问答>

重开一贴 ---------WinCE6.0 开机画面

各位大侠:     自己定制了一个WinCE6.0 的操作系统,启动时间大约在10秒钟左右,想在CE系统真正起来之前,加一个画面,以免看着不舒服。看帖子发现一般解决都是在eboot 或者OAL层加。不解。问问大家。     我用的Atmel 公司 ...…

查看全部问答>

TM1722驱动段码式液晶显示屏的程序怎么写呀?

各位好:       我是新加入这个大家庭的一名成员,我是一名即将毕业的大四学生,现在正在做毕业设计,我的专业是电子信息工程。我的课题跟单片机有关,要用C语言编写程序,可是我这方面相当薄弱,希望大家能帮帮我。在此 ...…

查看全部问答>