ARM处理器2种工作状态了解吗?ARM体系结构解读!
扫描二维码
随时随地手机看文章
ARM处理器是目前主流的处理器中的一种类型,在手机端、电脑端都有ARM处理器的身影。为增进大家对ARM处理器的认识,本文将对ARM处理器2种工作状态以及ARM体系结构的五个方面予以介绍。如果你对ARM处理器具有兴趣,不妨继续往下阅读哦。
一、ARM处理器2种工作状态
ARM处理器读取/储存 架构不支援地址不对齐内存存取(ARMv6内核现已支援)正交指令集(任意存取指令可以任意的寻址方式存取数据Orthogonal instruction set)大量的16 × 32-bit 寄存器阵列(register file)固定的32 bits 操作码(opcode)长度,降低编码数量所产生的耗费,减轻解码和流水线化的负担。大多均为一个CPU周期执行。ARM微处理器的在较新的体系结构中支持两种指令集:ARM指令集和Thumb指令集。其中,ARM指令为32位的长度,Thumb指令为16位长度。Thumb指令集为ARM指令集的功能子集,但与等价的ARM代码相比较,可节省30%~40%以上的存储空间,同时具备32位代码的所有优点。
CPU的模式可以简单的理解为当前CPU的工作状态,比如:当前操作系统正在执行用户程序,那么当前CPU工作在用户模式,这时网卡上有数据到达,产生中断信号,CPU自动切换到一般中断模式下处理网卡数据(普通应用程序没有权限直接访问硬件),处理完网卡数据,返回到用户模式下继续执行用户程序。
1、特权模式
除用户模式外,其它模式均为特权模式(Privileged Modes)。ARM 内部寄存器 和一些 片内外设 在硬件设计上只允许(或者可选为只允许)特权模式下访问。此外,特权模式可以自由的切换处理器模式,而用户模式不能直接切换到别的模式。
2、异常模式
特权模式中除系统(system)模式之外的其他5种模式又统称为异常模式。它们除了可以通过在特权下的程序切换进入外,也可以由特定的异常进入。比如硬件产生中断信号进入中断异常模式,读取没有权限数据进入中止异常模式,执行未定义指令时进入未定义指令中止异常模式。其中管理模式也称为超级用户模式,是为操作系统提供软中断的特有模式,正是由于有了软中断,用户程序才可以通过系统调用切换到管理模式。
二、ARM体系结构的五个方面
ARM的体系结构或处理器结构主要体现在:ARM微处理器的寄存器结构、异常处理、存储器结构、指令系统、接口等方面。
1、寄存器结构:
ARM处理器共有37个寄存器,被分为若干个组(BANK),这些寄器包括:
● 31个通用寄存器,包括程序计数器(PC指针),均为32位的寄存器。
● 6个状态寄存器,用以标识CPU的工作状态及程序的运行状态,均为32位,目前只使用了其中的一部分。
(1)处理器运行模式:
ARM微处理器支持7种运行模式,分别为:
● usr(用户模式):ARM处理器正常程序执行模式。
● fiq(快速中断模式):用于高速数据传输或通道处理
● irq(外部中断模式):用于通用的中断处理
● svc(管理模式):操作系统使用的保护模式
● abt (数据访问终止模式): 当数据或指令预取终止时进入该模式,可用于虚拟存储及存储保护。
● sys(系统模式): 运行具有特权的操作系统任务。
● und(未定义指令中止模式):当未定义的指令执行时进入该模式,可用于支持硬件协处理器的软件仿真。
ARM微处理器的运行模式可以通过软件改变,也可以通过外部中断或异常处理改变。
大多数的应用程序运行在用户模式下,当处理器运行在用户模式下时,某些被保护的系统资源是不能被访问的。
除用户模式以外,其余的所有6种模式称之为非用户模式,或特权模式;其中除去用户模式和系统模式以外的5种又称为异常模式,常用于处理中断或异常,以及需要访问受保护的系统资源等情况。
以上便是此次小编带来的ARM处理器相关内容,通过本文,希望大家对ARM处理器已经具备一定的了解。如果你喜欢本文,不妨持续关注我们网站哦,小编将于后期带来更多精彩内容。最后,十分感谢大家的阅读,have a nice day!