首页 理论教育ARM微处理器结构解析与系统设计

ARM微处理器结构解析与系统设计

【摘要】:同时,ARM处理器又有8种不同的处理器模式,在每一种处理器模式下均有一组相应的寄存器与之对应。关于ARM处理器的寄存器结构,在后面的相关章节将会详细描述。其中,ARM指令为32位长度,Thumb指令为16位长度。

1.RISC体系结构

传统的CISC(Complex Instruction Set Computer,复杂指令集计算机)结构有其固有的缺点,即随着计算机技术的发展而不断引入新的复杂的指令集,为支持这些新增的指令,计算机的体系结构会越来越复杂。然而,在CISC指令集的各种指令中,其使用频率却相差悬殊,大约有20%的指令会被反复使用,占整个程序代码的80%,而余下的80%的指令却不经常使用,在程序设计中只占20%。显然,这种结构是不太合理的。基于以上的不合理性,1979年美国加州大学伯克利分校提出了RISC(Reduced Instruction Set Computer,精简指令集计算机)的概念。RISC并非只是简单地减少指令,而是把着眼点放在了如何使计算机的结构更加简单合理,从而提高运算速度上。RISC结构优先选取使用频率最高的简单指令,避免复杂指令;将指令长度固定,以控制逻辑为主,不用或少用微码控制,从而减少指令格式和寻址方式种类。

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

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

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

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

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

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

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

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

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

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

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

ARM处理器共有40个寄存器,被分为若干个组,这些寄存器包括:

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

●7个状态寄存器,用以标识CPU的工作状态及程序的运行状态,均为32位,目前只使用了其中的一部分。

同时,ARM处理器又有8种不同的处理器模式,在每一种处理器模式下均有一组相应的寄存器与之对应。即在任意一种处理器模式下,可访问的寄存器包括15个通用寄存器(R0~R14)、1~2个状态寄存器和程序计数器。在所有的寄存器中,有些是在8种处理器模式下共用的同一个物理寄存器,而有些寄存器则是在不同的处理器模式下有不同的物理寄存器。关于ARM处理器的寄存器结构,在后面的相关章节将会详细描述。

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

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