ARM体系结构与指令系统

上传人:xian****812 文档编号:297355864 上传时间:2022-05-24 格式:PPT 页数:135 大小:982.50KB
返回 下载 相关 举报
ARM体系结构与指令系统_第1页
第1页 / 共135页
ARM体系结构与指令系统_第2页
第2页 / 共135页
ARM体系结构与指令系统_第3页
第3页 / 共135页
ARM体系结构与指令系统_第4页
第4页 / 共135页
ARM体系结构与指令系统_第5页
第5页 / 共135页
点击查看更多>>
资源描述

《ARM体系结构与指令系统》由会员分享,可在线阅读,更多相关《ARM体系结构与指令系统(135页珍藏版)》请在金锄头文库上搜索。

1、第二章 ARM体系结构与指令系统合肥学院 电子信息与电气工程系 干开峰目 录 2.1 ARM体系结构 2.2 ARM指令系统2.1 ARM体系结构 2. ARM体系结构概述2. ARM存储结构2. ARM处理器模式2. ARM寄存器2. ARM异常中断2.1.1 ARM体系结构概述一、ARM体系结构特点1、总体思想:在不牺牲性能的同时,尽量简化处理器。同时从体系结构的层面上灵活支持处理器扩展。 这种简化和开放的思路使得ARM处理器采用了很简单的结构来实现。2.1.1 ARM体系结构特点2、RISC型处理器结构ARM采用RISC结构,在简化处理器结构,减少复杂功能指令的同时,提高了处理器的速度。

2、RISC型处理器采用了Load/Store(加载/存储)结构,即只有Load/Store指令可与存储器打交道,其余指令都不允许进行存储器操作。RISC型处理器增加了指令高速缓冲I-Cache和数据高速缓冲D-Cache及多处理器结构,使指令的操作尽可能在寄存器之间进行。CISC与RISC的比较2.1.1 ARM体系结构特点3、Thumb指令集新型的ARM体系结构中定义了16位的Thumb指令集。Thumb指令集比通常的8/16位CISC/RISC处理器有更好的代码密度,而芯片面积只增加6%,却可以使程序存储器更小。2.1.1 ARM体系结构特点4、多处理器状态模式ARM体系结构定义了7种处理器

3、模式:用户(usr)、快中断(fiq)、中断(irq)、管理(svc)、终止(abt)、未定义(und)和系统(sys),大大提高了ARM处理器的效率。5、两种处理器工作状态ARM状态(执行32位ARM指令)和Thumb状态(执行16位Thumb指令)。2.1.1 ARM体系结构特点6、嵌入式在线仿真调试ARM体系结构的处理器芯片都嵌入了在线仿真ICE-RT逻辑,便于通过JTAG来仿真调试芯片,省去了价格昂贵的在线仿真器。7、灵活方便的接口ARM体系结构具有协处理器接口,允许接16个协处理器。既可以使基本的ARM处理器内核尽可能小,方便地扩充ARM指令集,也可以通过未定义指令来支持协处理器的软

4、件仿真。2.1.1 ARM体系结构特点8、低电压功耗的设计考虑到ARM体系结构的处理器主要用于手持式嵌入式系统中,ARM体系结构在设计中就十分注意功耗的设计。2.1.1 ARM体系结构特点二、ARM流水线结构1、流水线方式:流水线方式:是把一个重复的过程分解为是把一个重复的过程分解为若干个子过程,每个子过程可以与其他子过若干个子过程,每个子过程可以与其他子过程同时进行。程同时进行。 处理器按照一系列步骤来执行每一条指令。处理器按照一系列步骤来执行每一条指令。 2.1.1 ARM体系结构特点典型的步骤为:典型的步骤为:1)从存储器读取指令()从存储器读取指令(fetch)2)译码以鉴别它是哪一类

5、指令()译码以鉴别它是哪一类指令(dec)3)从寄存器组取得所需的操作数()从寄存器组取得所需的操作数(reg)4)将操作数进行组合以得到结果或存储器地址)将操作数进行组合以得到结果或存储器地址(exe)5)如果需要,则访问存储器存取数据()如果需要,则访问存储器存取数据(mem)6)将结果回写到寄存器组()将结果回写到寄存器组(res)2.1.1 ARM体系结构特点2、ARM7的三级流水线v取指:取指:从程序存储器中取指令,放入指令流从程序存储器中取指令,放入指令流水线。水线。(占用存储器访问操作占用存储器访问操作)v译码:译码:指令译码。指令译码。(占用译码逻辑占用译码逻辑)v执行:执行:

6、执行指令执行指令/读写读写REG。(占用占用ALU及数及数据路径据路径)2.1.1 ARM体系结构特点3、ARM9TDMI的五级流水线的五级流水线2.1.1 ARM体系结构特点4、ARM7和和ARM9流水线比较流水线比较v5级流水线的级流水线的ARM9内核是内核是哈佛架构哈佛架构,拥有独立的指,拥有独立的指令和数据总线;指令和数据的读取可以在同一周期令和数据总线;指令和数据的读取可以在同一周期进行;进行;v3级流水的级流水的ARM7内核是指令和数据总线复用的,指内核是指令和数据总线复用的,指令和数据的读取不能在同一周期进行;令和数据的读取不能在同一周期进行;v5级流水线设计把寄存器读取、逻辑运

7、算、结果回写级流水线设计把寄存器读取、逻辑运算、结果回写分散在不同的流水当中,分散在不同的流水当中, 每一级流水的操作简洁,每一级流水的操作简洁,提升了处理器的主频。提升了处理器的主频。2.1.1 ARM体系结构特点v随着流水线深度(级数)的增加,每一段的随着流水线深度(级数)的增加,每一段的工作量被削减了,这使得处理器可以工作在工作量被削减了,这使得处理器可以工作在更高的频率,同时改进了处理器的性能;更高的频率,同时改进了处理器的性能;v负面作用是增加了系统的延时,即内核在执负面作用是增加了系统的延时,即内核在执行一条指令前,需要更多的周期来填充流水行一条指令前,需要更多的周期来填充流水线;

8、线;v流水线级数的增加也意味着在某些段之间会流水线级数的增加也意味着在某些段之间会产生数据相关。产生数据相关。ARM处理器性能比较处理器性能比较 2.1.1 ARM体系结构特点三、三、ARM总线结构 ARM微控制器使用的是微控制器使用的是AMBA总线体系结构总线体系结构1、 AHB总线总线(Advanced High-performance Bus):):用于连接高性能系统模块。它支持突发数用于连接高性能系统模块。它支持突发数据传输方式及单个数据传输方式,所有时序据传输方式及单个数据传输方式,所有时序 参考同参考同一个时钟沿。一个时钟沿。2.1.1 ARM体系结构特点2、ASB总线总线(Adv

9、anced System Bus):):用用于连接高性能系统模块,它支持突发数据传于连接高性能系统模块,它支持突发数据传输模式。输模式。3、 APB总线总线(Advance Peripheral Bus):):是一个简单接口支持低性能的外围接口。是一个简单接口支持低性能的外围接口。2. ARM存储结构一、ARM存储数据类型 1、ARM处理器支持以下处理器支持以下6种数据类型:种数据类型:8位位有符号和无符号字节有符号和无符号字节(Byte)。16位位有符号和无符号半字有符号和无符号半字(Halfword) v它们必须以两字节的边界对齐它们必须以两字节的边界对齐(半字对齐半字对齐)。v半字对齐半

10、字对齐:半字单元地址的最低位:半字单元地址的最低位 A0=0b0 (地址末位为地址末位为0 x0,0 x2,0 x4,0 x6,0 x8,0 xa,0 xc,0 xe)。32位位有符号和无符号字有符号和无符号字(word)v它们必须以它们必须以4字节的边界对齐字节的边界对齐(字对齐字对齐)。v单元地址的低两位单元地址的低两位 A1A0=0b00。即地址末位为。即地址末位为0 x0, 0 x4, 0 x8, 0 xc。 2、对对于于指指令令,ARM指指令令系系统统分分为为32位位ARM指指令令集集和和16位位的的Thumb指指令令集集,在在存存储储时时分分别别以以32位和位和16位的两种不同长度

11、存储。位的两种不同长度存储。3、对对于于数数据据,ARM支支持持对对32位位字字数数据据,16位位半半字字数数据据,8位位字字节节数数据据操操作作。因因此此数数据据存存储储器器可可以以存存储储32位位,16位位,8位位三三种种不不同同长长度度数据。数据。4、在在ARM内内部部,所所有有操操作作都都面面向向32位位的的操操作作数数,只只有有数数据据传传送送指指令令支支持持较较短短的的字字节节和和半半字字的的数数据据类类型型。当当从从存存储储器器读读入入一一个个字字节节或或半字时,根据其数据类型将其扩展到半字时,根据其数据类型将其扩展到32位。位。2. ARM存储结构二、二、ARM存储器组织 1、

12、ARM存储器以存储器以8位为一个单元存储数据位为一个单元存储数据(一个字节一个字节),每个存,每个存储单元分配一个存储地址。储单元分配一个存储地址。 ARM将存储器看作是从零地址开始的字节的线性组合。将存储器看作是从零地址开始的字节的线性组合。作为作为32位的微处理器,位的微处理器,ARM体系结构所支持的最大寻址空体系结构所支持的最大寻址空间为间为4GB(232字节)。字节)。 2、ARM体系结构可以用两种方法存储字数据,称为体系结构可以用两种方法存储字数据,称为大端格式大端格式和和小端格式小端格式 。2. ARM存储结构2. ARM存储结构v大端格式大端格式(big-endian):字数据的

13、高字节存储在低地址中,字数据的高字节存储在低地址中,而字数据的低字节则存放在高地址中。而字数据的低字节则存放在高地址中。v小端格式小端格式(low-endian):与大端存储格式相反。低地址中与大端存储格式相反。低地址中存放的是字数据的低字节,高地址存放的是字数据的高字存放的是字数据的低字节,高地址存放的是字数据的高字节。节。缺省设置为小端格式。缺省设置为小端格式。 三、三、ARM存储器层次 微处理器希望微处理器希望存储器容量大、速度快。但容量大存储器容量大、速度快。但容量大者速度慢;速度快者容量小。者速度慢;速度快者容量小。 解决方法是解决方法是构建一个由多级存储器组成的复合存构建一个由多级

14、存储器组成的复合存储器系统。储器系统。 2. ARM存储结构多级存储器系统多级存储器系统寄存器组寄存器组 访问时间约为几个访问时间约为几个ns。片上片上RAM 与片外与片外RAM比速度快、功耗小、比速度快、功耗小、 容量小。读写时间约为几个容量小。读写时间约为几个ns。片上片上Cache 832KB,访问时间约为十几个访问时间约为十几个ns。主存储器主存储器 一般为几兆字节一般为几兆字节1GB 的动态存的动态存 储器,访问时间约储器,访问时间约 50ns。2. ARM存储结构CPU寄存器组寄存器组片上片上RAM片上片上Cache主存储器主存储器硬盘硬盘寄存器组寄存器组片上片上RAM片上片上Ca

15、che主存储器主存储器硬盘硬盘寄存器组寄存器组片上片上RAM片上片上Cache主存储器主存储器2. ARM处理器模式一、一、ARM处理器工作状态1、有两种工作状态:有两种工作状态: ARM状态:状态:处理器执行处理器执行32位的字对齐的位的字对齐的ARM指指令;令; Thumb状态:状态:处理器执行处理器执行16位的半字对齐的位的半字对齐的Thumb指令。指令。2、两种状态可以切换两种状态可以切换: 程序执行过程中,通过执行程序执行过程中,通过执行带状态切换的分支指带状态切换的分支指令令BX,随时在两种工作状态之间进行切换。并且,随时在两种工作状态之间进行切换。并且,处理器工作状态的转变,并不

16、影响处理器的工作模处理器工作状态的转变,并不影响处理器的工作模式和相应寄存器中的内容。式和相应寄存器中的内容。2. ARM处理器模式二、二、ARM处理器工作模式1、 ARM9的的7种工作模式种工作模式(1)用户模式(用户模式(usr):非特权模式,大部分任务执行非特权模式,大部分任务执行在这种模式。在这种模式。 正常程序执行的模式正常程序执行的模式(2)快速中断模式(快速中断模式(fiq):):当一个高优先级当一个高优先级(fast)中中断产生时将会进入这种模式。断产生时将会进入这种模式。 高速数据传输或通道处理高速数据传输或通道处理(3)外部中断模式(外部中断模式(irq):):当一个低优先级当一个低优先级(normal)中断产生时将会进入这种模式。中断产生时将会进入这种模式。 通常的中断处理通常的中断处理(4)管理模式(管理模式(svc):当复位或软中断指令执行时将当复位或软中断指令执行时将会进入这种模式。会进入这种模式。 供操作系统使用的一种保护模式供操作系统使用的一种保护模式2. ARM处理器模式(5)中止模式(中止模式(abt):):当存取异常时将会进入这当存取异常时将会进入

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 教学课件 > 高中课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号