ARM流水线MMUCache解读课件_第1页
ARM流水线MMUCache解读课件_第2页
ARM流水线MMUCache解读课件_第3页
ARM流水线MMUCache解读课件_第4页
ARM流水线MMUCache解读课件_第5页
已阅读5页,还剩52页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第二章ARM微处理器硬件结构

本章主要内容:计算机体系结构分类ARM版本及系列ARM处理器结构存储系统机制1第二章ARM微处理器硬件结构本章主要内容:1

计算机体系结构Ⅰ1.冯·诺依曼结构2计算机体系结构Ⅰ1.冯·诺依曼结构2

计算机体系结构Ⅱ2.哈佛体系结构

3计算机体系结构Ⅱ2.哈佛体系结构3

ARM简介

ARM(AdvancedRISCMachines)系列微处理器,采用的ARM技术知识产权(IP)核都是由ARM公司提供的。

ARM公司本身不生产芯片,转让设计许可,由合作公司生产各具特色的芯片。

ARM32位体系结构目前被公认为是嵌入式应用领域领先的32位嵌入式RISC微处理器结构。从版本1到版本6,ARM体系的指令集功能不断扩大。

4ARM简介ARM(Advanced

ARM版本Ⅰ

1.V1版架构该版架构只在原型机ARM1出现过,没有用于商业产品。其基本性能有:基本的数据处理指令(无乘法);基于字节、半字和字的Load/Store指令;转移指令,包括子程序调用及链接指令;供操作系统使用的软件中断指令SWI;寻址空间:64MB(226)。

5ARM版本Ⅰ1.V1版架构5

ARM版本Ⅱ2.V2版架构该版架构对V1版进行了扩展,例如ARM2和ARM3(V2a)架构,版本2a是版本2的变种,ARM3芯片采用了版本2a。V2版架构与版本V1相比,增加了以下功能:乘法和乘加指令;支持协处理器操作指令;快速中断模式;SWP/SWPB的最基本存储器与寄存器交换指令;寻址空间:64MB。

6ARM版本Ⅱ2.V2版架构6

ARM版本Ⅲ3.V3版架构

V3版架构对ARM体系结构作了较大的改动:寻址空间增至32位(4GB);当前程序状态信息从原来的R15寄存器移到当前程序状态寄存器CPSR中(CurrentProgramStatusRegister);增加了程序状态保存寄存器SPSR(SavedProgramStatusRegister);增加了中止(Abort)和未定义2种处理器模式;增加了MRS/MSR指令,以访问新增的CPSR/SPSR寄存器;

增加了从异常处理返回的指令功能。7ARM版本Ⅲ3.V3版架构7

ARM版本Ⅳ4.V4版架构V4版架构在V3版上作了进一步扩充,V4版架构是目前应用最广的ARM体系结构,ARM7、ARM8、ARM9和StrongARM都采用该架构。指令集中增加了以下功能:

符号化和非符号化半字及符号化字节的存/取指令;

增加了16位Thumb指令集;完善了软件中断SWI指令的功能;

处理器系统模式引进特权方式时使用用户寄存器操作;把一些未使用的指令空间捕获为未定义指令。8ARM版本Ⅳ4.V4版架构8

ARM版本Ⅴ5.V5版架构V5版架构是在V4版基础上增加了一些新的指令,ARM10和Xscale都采用该版架构。这些新增命令有:带有链接和交换的转移BLX指令;计数前导零CLZ指令;BRK中断指令;增加了数字信号处理指令(V5TE版);为协处理器增加更多可选择的指令。9ARM版本Ⅴ5.V5版架构9

ARM版本Ⅵ6.V6版架构V6版架构是2001年发布的,首先在2002年春季发布的ARM11处理器中使用。此架构在V5版基础上增加了以下功能:

THUMBTM:35%代码压缩;

DSP扩充:高性能定点DSP功能;

JazelleTM:Jova性能优化,可提高8倍;

Media扩充:音/视频性能优化,可提高4倍。10ARM版本Ⅵ6.V6版架构10

ARM处理器系列ARM7系列ARM9系列ARM9E系列ARM10E系列SecurCore系列Inter的XscaleInter的StrongARM11ARM处理器系列ARM7系列11

ARM处理器结构从一下四个方面介绍:ARM和Thumb状态RISC技术流水线技术超标量执行12ARM处理器结构从一下四个方面介绍:12

ARM和Thumb状态

V4版以后有:32位ARM指令集16位Thumb指令集,功能是ARM指令集的功能子集。ARM7TDMI核以后,T变种的ARM微处理器有两种工作状态:ARM状态Thumb状态。13ARM和Thumb状态V4版以后有:13

ARM与Thumb状态转换

在程序的执行过程中,微处理器可以随时在两种工作状态之间切换,并且该转变不影响处理器的工作模式和相应寄存器中的内容。进入Thumb状态:当操作数寄存器的状态位(位[0])为1时,执行BX指令。

进入ARM状态:当操作数寄存器的状态位(位[0])为0时,执行BX指令。14ARM与Thumb状态转换在程序的执行过

RISC技术Ⅰ

RISC体系结构基本特点:大多数指令只需要执行简单和基本的功能,其执行过程在一个机器周期内完成。只保留加载/存储指令。操作数由加载/存储指令从存储器取出放寄存器内操作。芯片逻辑不采用或少采用微码技术,而采用硬布线逻辑。减少指令数和寻址方式。

指令格式固定,指令译码简化。优化编译。

15RISC技术ⅠRISC体系结构基本特点:1

RISC技术ⅡARM体系结构还采用了一些特别的技术:所有的指令都可根据前面的执行结果决定是否被执行,提高了指令的执行效率。可用Load/Store指令批量传输数据,以提高数据的传输效率。可在一条数据处理指令中同时完成逻辑处理和移位处理。16RISC技术ⅡARM体系结构还采用了一些特别

流水线技术Ⅰ1.ARM的3级流水线

17流水线技术Ⅰ1.ARM的3级流水线17

流水线技术Ⅱ多周期ARM指令的3级流水线操作18流水线技术Ⅱ多周期ARM指令的3级流水线操作流水线技术Ⅲ2.ARM的流水线设计问题

(1)缩短程序执行时间:提高时钟频率fclk减少每条指令的平均时钟周期数CPI(2)解决流水线相关:结构相关

数据相关

控制相关

19流水线技术Ⅲ2.ARM的流水线设流水线技术Ⅳ3.ARM的5级流水线ARM9和StrongARM架构都采用了5级流水线.增加了I-Cache和D-Cache,把存储器的取指与数据存取分开;增加了数据写回的专门通路和寄存器;把指令的执行过程分割为5部分:取指->指令译码->执行->数据缓存->写回

20流水线技术Ⅳ3.ARM的5级流水

超标量执行

通过重复设置多套指令执行部件,同时处理并完成多条指令,实现并行操作,来达到提高处理速度的目的。所有ARM内核,包括流行的ARM7、ARM9和ARM11等,都是单周期指令机。ARM公司下一代处理器将是每周期能处理多重指令的超标量机。但是:超标量处理器在执行的过程中必须动态地检查指令相关性如果代码中有分支指令;我们必须将分支被执行和分支不被执行这两种情况分开考虑计算执行时间几乎是不可能的;计算执行时间几乎是不可能的。21超标量执行通过重复

存储器部件的分类

按在系统中的地位分类:“主存储器”(MainMemory,简称内存或主存)“辅助存储器”(AuxiliaryMemory,SecondaryMemory,简称辅存或外存)

按存储介质分类:磁存储器(MagneticMemory),半导体集成电路存储器(通常称为半导体存储器),光存储器(OpticalMemory),激光光盘存储器(LaserOpticalDisk)按信息存取方式分类:随机存取存储器RAM只读存储器ROM

22存储器部件的分类按在系统中的地位分类:22

存储器的组织和结构

嵌入式存储器一般采用存储密度较大的存储器芯片,典型的嵌入式存储器系统由ROM、RAM、EPROM等组成。

23存储器的组织和结构嵌入式存储器一般采用存储密度较大

常用的存储器随机存储器(RAM)

静态随机存储器(SRAM)动态随机存储器(DRAM)

只读存储器(ROM),它在嵌入式系统中非常有用,因为许多代码或数据不随时间改变。

工厂编程的只读存储器现场可编程只读存储器

24常用的存储器随机存储器(RAM)24

存储器的性能大容量、高速度、低价格是评价存储器性能的三个主要指标,也是存储体系设计的主要目标。

容量:Sw=Wlm。其中W为存储体的字长(单位为位或字节),l为单个存储体的字数,m为并行工作的存储体个数。

速度:m个存储体并行工作时,可达到的最大频率宽度为Bm=Wm/TM。其中TM是连续起动一个存储器所必要的时间间隔,TM>TA。Bm是连续提供数据的速率。价格:具有SM位的存储器,每位价格表示为c=C/Sm。其中C是总价格。25存储器的性能大容量、高速度、

存储体系的组成单体单字存储器单体多字存储器

多体单字交叉存取存储器多体多字交叉存取存储器一般把这些能并行读出多个CPU字的单体多字和多体单字及多体多字的交叉存取系统,统称为并行主存系统。

26存储体系的组成单体单字存储器26存储体系的形式(a)两级存储器层次结构

(b)三级存储器层次结构27存储体系的形式(a)两级存储器层

总线结构Ⅰ1.总线协议:四周期握手协议

28总线结构Ⅰ1.总线协议:四周期握

总线结构Ⅱ2.总线读写

29总线结构Ⅱ2.总线读写29

总线结构Ⅲ3.总线的时序图30总线结构Ⅲ3.总线的时序图30

总线结构Ⅳ4.直接内存访问(DMA)

31总线结构Ⅳ4.直接内存访问(DMA总线结构Ⅴ5.系统总线配置

多总线系统32总线结构Ⅴ5.系统总线配置32ARM存储数据类型ARM处理器支持以下六种数据类型:

8位有符号和无符号字节。16位有符号和无符号半字,以2字节的边界对齐。32位有符号和无符号字,以4字节的边界对齐。33ARM存储数据类型ARM处理器支持以下六ARM存储格式大端存储模式

小端存储模式(缺省)34ARM存储格式大端存储模式小端

存储器接口Ⅰ1.存储周期的基本类型:空闲周期非顺序周期顺序周期协处理器寄存器传送周期

35存储器接口Ⅰ1.存储周期的基本类型:3

存储器接口Ⅱ2.ARM的总线接口信号分成4类(以ARM7TDMI为例说明):时钟和时钟控制信号:MCLK、ECLK、nRESET、nWAIT。地址类信号:A[31..0]、nRW、MAS[1..0]、nOPC、nTRANS、LOCK、TBIT。存储器请求信号:nMREQ、SEQ。数据时序信号:D[31..0]、DIN[31..0]、DOUT[31..0]、ABORT、BL[3..0]。36存储器接口Ⅱ2.ARM的总线接口信号分成

存储器接口Ⅲ3.ARM的总线接口可以实现4种不同类型的总线周期。37存储器接口Ⅲ3.ARM的总线接口可以实

高速缓冲存储器Ⅰ1.分类:统一CacheVS

独立的数据/程序Cache写通cacheVS

写回cache读操作分配cacheVS

写操作分配cache38高速缓冲存储器Ⅰ1.分类:38高速缓冲存储器Ⅱ2.工作原理:39高速缓冲存储器Ⅱ2.工作原理:39高速缓冲存储器Ⅲ3.地址映像和变换方式:全相联地址映像和变换组相联地址映像和变换直接映像和变换

40高速缓冲存储器Ⅲ3.地址映像和变换方式:

高速缓冲存储器Ⅳ4.Cache的替换算法:轮转法随机替换算法

41高速缓冲存储器Ⅳ4.Cache的替换算法:4

存储管理单元MMUⅠ1.在ARM系统中,存储管理单元MMU主要完成工作:虚拟存储空间到物理存储空间的映射。在ARM中采用了页式虚拟存储管理。存储器访问权限的控制。

设置虚拟存储空间的缓冲的特性。42存储管理单元MMUⅠ1.在ARM系统中,存储管

存储管理单元MMUⅡ(1)2.存储访问过程使能MMU时存储访问过程:43存储管理单元MMUⅡ(1)2.存储访问过程43存储管理单元MMUⅡ(2)禁止MMU时存储访问过程:

先要确定芯片是否支持cache和writebuffer。如果芯片规定当禁止MMU时禁止cache和writebuffer,则存储访问将不考虑C和B控制位。如果芯片规定当禁止MMU时可以使能cache和writebuffer,则数据访问时,C=0,B=0;指令读取时,如果使用分开的TLB,那么C=1,如果使用统一的TLB,那么C=0。②

存储访问不进行权限控制,MMU也不会产生存储访问中止信号。③

所有的物理地址和虚拟地址相等,即使用平板存储模式。44存储管理单元MMUⅡ(2)禁止MMU时存储访问存储管理单元MMUⅢ(1)3.MMU中的地址变换过程:通过两级页表实现。a)一级页表中包含有以段为单位的地址变换条目以及指向二级页表的指针。一级页表是实现的地址映射粒度较大。以段为单位的地址变换过程只需要一级页表。b)二级页表中包含有以大页和小页为单位的地址变换条目。有一种类型的二级页表还包含有以极小页为单位的地址变换条目。以页为单位的地址变换过程需要二级页表。

45存储管理单元MMUⅢ(1)3.MMU中的地址变存储管理单元MMUⅢ(2)一级页表的地址变换过程:46存储管理单元MMUⅢ(2)一级页表的地址变换过程存储管理单元MMUⅣ(1)4.一级描述符:

从页表中得到的相应地址变换条目称为一级描述符。它定义了与之相应的1M存储空间是如何映射的。一级描述符的位[1:0]定义了该一级描述符的类型,共有4种格式的一级描述符:

47存储管理单元MMUⅣ(1)4.一级描述符:47存储管理单元MMUⅣ(2)1)粗粒度页表描述符:当一级描述符的位[1..0]为0b01(0b代表二进制)时,该一级描述符中包含了粗粒度的二级页表的物理地址,这种一级描述符称为粗粒度页表描述符。它的格式和各个字段的含义如下:

48存储管理单元MMUⅣ(2)1)粗粒度页表描述符存储管理单元MMUⅣ(3)由粗粒度页表描述符获取二级描述符的过程:49存储管理单元MMUⅣ(3)由粗粒度页表描述符获取存储管理单元MMUⅣ(4)2)段描述符:当一级描述符的位[1:0]为0b10时,该一级描述符为段描述符,它的格式和各个字段的含义如下:50存储管理单元MMUⅣ(4)2)段描述符:当一级描存储管理单元MMUⅣ(5)基于段的地址变换过程:51存储管理单元MMUⅣ(5)基于段的地址变换过程存储管理单元MMUⅣ(6)3)细粒度页表描述符:当一级描

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论