ARM流水线MMUCache解读课件

上传人:n85ho7****4h85bh 文档编号:240922957 上传时间:2024-05-18 格式:PPT 页数:57 大小:327.66KB
返回 下载 相关 举报
ARM流水线MMUCache解读课件_第1页
第1页 / 共57页
ARM流水线MMUCache解读课件_第2页
第2页 / 共57页
ARM流水线MMUCache解读课件_第3页
第3页 / 共57页
点击查看更多>>
资源描述
第二章第二章 ARMARM微处理器硬件结构微处理器硬件结构 本章主要内容:n计算机体系结构分类nARM版本及系列nARM处理器结构n存储系统机制1第二章ARM微处理器硬件结构本章主要内容:1 计算机体系结构计算机体系结构1.冯诺依曼结构2计算机体系结构1.冯诺依曼结构2 计算机体系结构计算机体系结构2.哈佛体系结构 3计算机体系结构2.哈佛体系结构3 ARM简介简介 ARM(Advanced RISC Machines)系列微处理器,采用的ARM技术知识产权(IP)核都是由ARM公司提供的。ARM公司本身不生产芯片,转让设计许可,由合作公司生产各具特色的芯片。ARM32位体系结构目前被公认为是嵌入式应用领域领先的32位嵌入式RISC微处理器结构。从版本1到版本6,ARM体系的指令集功能不断扩大。4ARM简介ARM(Advanced ARM版本版本 1V1版架构该版架构只在原型机ARM1出现过,没有用于商业产品。其基本性能有:n基本的数据处理指令(无乘法);n基于字节、半字和字的Load/Store指令;n转移指令,包括子程序调用及链接指令;n供操作系统使用的软件中断指令SWI;n 寻址空间:64MB(226)。5ARM版本1V1版架构5 ARM版本版本2V2版架构该 版 架 构 对 V1版 进 行 了 扩 展,例 如 ARM2和ARM3(V2a)架构,版本2a是版本2的变种,ARM3芯片采用了版本2a。V2版架构与版本V1相比,增加了以下功能:n乘法和乘加指令;n支持协处理器操作指令;n快速中断模式;nSWP/SWPB的最基本存储器与寄存器交换指令;n寻址空间:64MB。6ARM版本2V2版架构6 ARM版本版本3V3版架构 V3版架构对ARM体系结构作了较大的改动:n寻址空间增至32位(4GB);n当前程序状态信息从原来的R15寄存器移到当前程序状 态 寄 存 器 CPSR中(Current Program Status Register);n增加了程序状态保存寄存器SPSR(Saved Program Status Register);n增加了中止(Abort)和未定义2种处理器模式;n增加了MRS/MSR指令,以访问新增的CPSR/SPSR寄存器;n增加了从异常处理返回的指令功能。7ARM版本3V3版架构7 ARM版本版本4V4版架构 V4版架构在V3版上作了进一步扩充,V4版架构是目前应用最广的ARM体系结构,ARM7、ARM8、ARM9和StrongARM都采用该架构。指令集中增加了以下功能:n符号化和非符号化半字及符号化字节的存/取指令;n增加了16位Thumb指令集;n完善了软件中断SWI指令的功能;n处理器系统模式引进特权方式时使用用户寄存器操作;n 把一些未使用的指令空间捕获为未定义指令。8ARM版本4V4版架构8 ARM版本版本5V5版架构 V5版架构是在V4版基础上增加了一些新的指令,ARM10和Xscale都采用该版架构。这些新增命令有:n带有链接和交换的转移BLX指令;n计数前导零CLZ指令;n BRK中断指令;n增加了数字信号处理指令(V5TE版);n为协处理器增加更多可选择的指令。9ARM版本5V5版架构9 ARM版本版本6V6版架构 V6版架构是2001年发布的,首先在2002年春季发布的ARM11处理器中使用。此架构在V5版基础上增加了以下功能:nTHUMBTM:35%代码压缩;nDSP扩充:高性能定点DSP功能;nJazelleTM:Jova性能优化,可提高8倍;nMedia扩充:音/视频性能优化,可提高4倍。10ARM版本6V6版架构10 ARM处理器系列处理器系列ARM7系列ARM9系列ARM9E系列ARM10E系列SecurCore系列Inter的XscaleInter的StrongARM11ARM处理器系列ARM7系列11 ARM处理器结构处理器结构从一下四个方面介绍:nARM和Thumb状态 nRISC技术n流水线技术n超标量执行 12ARM处理器结构从一下四个方面介绍:12 ARM和和Thumb状态状态 V4版以后有:32位ARM指令集16位Thumb指令集,功能是ARM指令集的功能子集。ARM7TDMI核以后,T变种的ARM微处理器有两种工作状态:ARM状态Thumb状态。13ARM和Thumb状态V4版以后有:13 ARM与与Thumb状态转换状态转换 在程序的执行过程中,微处理器可以随时在两种工作状态之间切换,并且该转变不影响处理器的工作模式和相应寄存器中的内容。n 进入Thumb状态:当操作数寄存器的状态位(位0)为1时,执行BX指令。n 进入ARM状态:当操作数寄存器的状态位(位0)为0时,执行BX指令。14ARM与Thumb状态转换在程序的执行过 RISC技术技术 RISC体系结构基本特点:n大多数指令只需要执行简单和基本的功能,其执行过程在一个机器周期内完成。n只保留加载/存储指令。操作数由加载/存储指令从存储器取出放寄存器内操作。n芯片逻辑不采用或少采用微码技术,而采用硬布线逻辑。n减少指令数和寻址方式。n指令格式固定,指令译码简化。n优化编译。15RISC技术RISC体系结构基本特点:1 RISC技术技术ARM体系结构还采用了一些特别的技术:所有的指令都可根据前面的执行结果决定是否被执行,提高了指令的执行效率。可用Load/Store指令批量传输数据,以提高数据的传输效率。可在一条数据处理指令中同时完成逻辑处理和移位处理。16RISC技术ARM体系结构还采用了一些特别 流水线技术流水线技术1ARM的3级流水线 17流水线技术1ARM的3级流水线17 流水线技术流水线技术多周期ARM指令的3级流水线操作 18流水线技术多周期ARM指令的3级流水线操作 流水线技术流水线技术2ARM的流水线设计问题(1)缩短程序执行时间:n提高时钟频率fclkn减少每条指令的平均时钟周期数CPI(2)解决流水线相关:n结构相关 n数据相关 n控制相关 19流水线技术2ARM的流水线设 流水线技术流水线技术3ARM的5级流水线 ARM9和StrongARM架构都采用了5级流水线.n增加了I-Cache和D-Cache,把存储器的取指与数据存取分开;n增加了数据写回的专门通路和寄存器;n把指令的执行过程分割为5部分:取指-指令译码-执行-数据缓存-写回 20流水线技术3ARM的5级流水超标量执行超标量执行 通过重复设置多套指令执行部件,同时处理并完成多条指令,实现并行操作,来达到提高处理速度的目的。所有ARM内核,包括流行的ARM7、ARM9和ARM11等,都是单周期指令机。ARM公司下一代处理器将是每周期能处理多重指令的超标量机。但是:n超标量处理器在执行的过程中必须动态地检查指令相关性如果代码中有分支指令;n我们必须将分支被执行和分支不被执行这两种情况分开考虑计算执行时间几乎是不可能的;n计算执行时间几乎是不可能的。21超标量执行通过重复 存储器部件的分类存储器部件的分类 n按在系统中的地位分类:n“主存储器”(Main Memory,简称内存或主存)n“辅助存储器”(Auxiliary Memory,Secondary Memory,简称辅存或外存)n按存储介质分类:磁存储器(Magnetic Memory),半导体集成电路存储器(通常称为半导体存储器),光存储器(Optical Memory),激光光盘存储器(Laser Optical Disk)n按信息存取方式分类:n随机存取存储器RAMn只读存储器ROM 22存储器部件的分类按在系统中的地位分类:22 存储器的组织和结构存储器的组织和结构 n嵌入式存储器一般采用存储密度较大的存储器芯片,典型的嵌入式存储器系统由ROM、RAM、EPROM等组成。23存储器的组织和结构嵌入式存储器一般采用存储密度较大 常用的存储器常用的存储器n随机存储器(RAM)n静态随机存储器(SRAM)n动态随机存储器(DRAM)n只读存储器(ROM),它在嵌入式系统中非常有用,因为许多代码或数据不随时间改变。n工厂编程的只读存储器n现场可编程只读存储器 24常用的存储器随机存储器(RAM)24 存储器的性能存储器的性能 大容量、高速度、低价格是评价存储器性能的三个主要指标,也是存储体系设计的主要目标。n容量:SwWlm。其中W为存储体的字长(单位为位或字节),l为单个存储体的字数,m为并行工作的存储体个数。n速度:m个存储体并行工作时,可达到的最大频率宽度为BmWmTM。其中TM是连续起动一个存储器所必要的时间间隔,TMTA。Bm是连续提供数据的速率。n价格:具有SM位的存储器,每位价格表示为c=CSm。其中C是总价格。25存储器的性能大容量、高速度、存储体系的组成存储体系的组成单体单字存储器单体多字存储器 多体单字交叉存取存储器多体多字交叉存取存储器一般把这些能并行读出多个CPU字的单体多字和多体单字及多体多字的交叉存取系统,统称为并行主存系统。26存储体系的组成单体单字存储器26 存储体系的形式存储体系的形式 (a)两级存储器层次结构 (b)三级存储器层次结构 27存储体系的形式(a)两级存储器层 总线结构总线结构n1.总线协议:四周期握手协议 28总线结构1.总线协议:四周期握 总线结构总线结构n2.总线读写 29总线结构2.总线读写29 总线结构总线结构3总线的时序图30总线结构3总线的时序图30 总线结构总线结构4直接内存访问(DMA)31总线结构4直接内存访问(DMA 总线结构总线结构5系统总线配置 多总线系统32总线结构5系统总线配置32 ARM存储数据类型存储数据类型ARM处理器支持以下六种数据类型:n8位有符号和无符号字节。n16位有符号和无符号半字,以2字节的边界对齐。n32位有符号和无符号字,以4字节的边界对齐。33ARM存储数据类型ARM处理器支持以下六 ARM存储格式存储格式 大端存储模式 小端存储模式(缺省)34ARM存储格式大端存储模式小端 存储器接口存储器接口1.存储周期的基本类型:空闲周期非顺序周期顺序周期协处理器寄存器传送周期 35存储器接口1.存储周期的基本类型:3 存储器接口存储器接口2.ARM的总线接口信号分成4类(以ARM7TDMI为例说明):n时钟和时钟控制信号:MCLK、ECLK、nRESET、nWAIT。n地 址 类 信 号:A31.0、nRW、MAS1.0、nOPC、nTRANS、LOCK、TBIT。n存储器请求信号:nMREQ、SEQ。n数据时序信号:D31.0、DIN31.0、DOUT31.0、ABORT、BL3.0。36存储器接口2.ARM的总线接口信号分成 存储器接口存储器接口3.ARM的总线接口可以实现4种不同类型的总线周期。37存储器接口3.ARM的总线接口可以实 高速缓冲存储器高速缓冲存储器1.分类:n统一Cache VS 独立的数据/程序Cachen写通cache VS 写回cachen读操作分配cache VS 写操作分配cache38高速缓冲存储器1.分类:38 高速缓冲存储器高速缓冲存储器2.工作原理:39高速缓冲存储器2.工作原理:39 高速缓冲存储器高速缓冲存储器3.地址映像和变换方式:全相联地址映像和变换组相联地址映像和变换直接映像和变换 40高速缓冲存储器3.地址映像和变换方式:高速缓冲存储器高速缓冲存储器4.Cache的替换算法:n轮转法n随机替换算法 41高速缓冲存储器4.Cache的替换算法:4 存储管理单元存储管理单元MMU1.在ARM系统中,存储管理单元MMU主要完成工作:虚拟存储空间到物理存储空间的映射。在ARM中采用了页式虚拟存储管理。存储器访问权限的控制。设置虚拟存储空间的缓冲的特性。42存储管理单元MMU1.在ARM系统中,存储管 存储管理单元存储管理单元MMU(1)2.存储访问过程n使能MMU时存储访问过程:43存储管理单元MMU(1)2.存储访问过程43 存储管理单元存储管理单元MMU(2)禁止MMU时存储访问过程:先要确定芯片是否支持cache和write buffer。如果芯片规定当禁止MMU时禁止cache和write buffer,则存储访问将不考虑C和B控制位。如果芯片规定当禁止MMU时可以使能cache和write buffer,则数据访问时,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:0为0b11时,该一级描述符中包含了细粒度的二级页表的物理地址,称为细粒度页表描述符。它的格式和各个字段的含义如下:52存储管理单元MMU(6)3)细粒度页表描述符 存储管理单元存储管理单元MMU(7)由细粒度页表描述符获取二级描述符的过程 53存储管理单元MMU(7)由细粒度页表描述符获取 存储管理单元存储管理单元MMU 5.MMU中的存储访问权限控制54存储管理单元MMU5.MMU中的存储访问权限控 存储管理单元存储管理单元MMU 6.MMU中的域(Domain)MMU中的域指的是一些段、大页或者小页的集合。ARM支持最多16个域,每个域的访问控制特性都是由CP15中的寄存器C3中的两位来控制的。这两位的字段编码和含义:55存储管理单元MMU6.MMU中的域(Doma 存储管理单元存储管理单元MMU 7.快速上下文切换技术 快速上下文切换技术FCSE(Fast Context Switch Extension)通过修改系统中不同进程的虚拟地址,避免在进行进程间切换时造成的虚拟地址到物理地址的重映射,从而提高系统的性能。FCSE位于CPU和MMU之间,其责任就是将不同进程使用的相同虚拟地址映射为不同的虚拟空间,使得在上下文切换时无需重建TLB等。56存储管理单元MMU7.快速上下文切换技术56 存储管理单元存储管理单元MMU 8.存储器映射的输入/输出 在ARM系统中,I/O操作通常被映射成存储器操作,即输入/输出是通过存储器映射的可寻址外围寄存器和中断输入的组合来实现的。但是,对于存储器映射的I/O空间的操作,不能使用Cache技术。57存储管理单元MMU8.存储器映射的输入/输出5
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 办公文档 > 教学培训


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!