首页 理论教育 ARM微处理器结构详解:从零到一快速入门

ARM微处理器结构详解:从零到一快速入门

时间:2023-10-31 理论教育 版权反馈
【摘要】:到目前为止,RISC体系结构还没有严格的定义。除此之外,ARM体系结构还采用了一些特别的技术,在保证高性能的前提下尽量缩小芯片的面积,并降低功耗。其中,ARM指令的长度为32位,Thumb指令的长度为16位。

ARM微处理器结构详解:从零到一快速入门

1.RISC体系结构

传统的复杂指令集计算机(ComplexInstructionSetComputer,CISC)结构有其固有的缺点,即随着计算机技术的发展而不断引入新的复杂的指令集。为支持这些新增的指令,计算机的体系结构会越来越复杂。然而,在CISC指令集的各种指令中,其使用频率却相差悬殊,大约有20%的指令会被反复使用,占整个程序代码的80%。而余下的80%的指令却不经常使用,在程序设计中只占20%。显然,这种结构是不太合理的。

基于以上的不合理性,1979年美国加州大学伯克利分校提出了RISC(Reduced InstructionSetComputer,精简指令集计算机)的概念。RISC并非只是简单地去减少指令,而是把着眼点放在了如何使计算机的结构更加简单合理地提高运算速度上。RISC结构优先选取使用频率最高的简单指令,避免复杂指令,将指令长度固定,指令格式和寻址方式种类减少,以控制逻辑为主,不用或少用微码控制等措施来达到上述目的。

到目前为止,RISC体系结构还没有严格的定义。一般认为,RISC体系结构应具有如下特点:

●采用固定长度的指令格式,指令规整、简单、基本寻址方式有2~3种。

●使用单周期指令,便于流水线操作执行。

●大量使用寄存器,数据处理指令只对寄存器进行操作,只有加载/存储指令可以访问

存储器,以提高指令的执行效率

除此之外,ARM体系结构还采用了一些特别的技术,在保证高性能的前提下尽量缩小芯片的面积,并降低功耗。

●所有的指令都可根据前面的执行结果决定是否被执行,从而提高指令的执行效率。

●可用加载/存储指令批量传输数据,以提高数据的传输效率。

●可在一条数据处理指令中同时完成逻辑处理和移位处理。(www.xing528.com)

●在循环处理中使用地址的自动增减来提高运行效率。

当然,和CISC架构相比较,尽管RISC架构有上述优点,但决不能认为RISC架构就可以取代CISC架构。事实上,RISC和CISC各有优势,而且界限并不那么明显。现代的CPU往往采用CISC的外围,内部加入了RISC的特性,如超长指令集CPU就融合了RISC和CISC的优势,成为未来的CPU发展方向之一。

2.ARM微处理器的寄存器结构

ARM微处理器共有37个寄存器,被分为若干个组(BANK),这些寄存器包括:

●31个通用寄存器,包括程序计数器(PC指针),均为32位的寄存器。

●6个状态寄存器,用以标识CPU的工作状态及程序的运行状态,均为32位,目前只

使用了其中的一部分。

同时,ARM处理器又有7种不同的处理器模式,在每一种处理器模式下均有一组相应的寄存器与之对应,即在任意一种处理器模式下,可访问的寄存器包括15个通用寄存器(R0~R14)、1~2个状态寄存器和程序计数器。在所有的寄存器中,有些寄存器是在7种处理器模式下共用的同一个物理寄存器,而有些寄存器则是在不同的处理器模式下有不同的物理寄存器。

3.ARM微处理器的指令结构

ARM微处理器在较新的体系结构中支持两种指令集:ARM指令集和Thumb指令集。其中,ARM指令的长度为32位,Thumb指令的长度为16位。Thumb指令集为ARM指令集的功能子集,但与等价的ARM代码相比较,可节省30%~40%的存储空间,同时具备32位代码的所有优点。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈