ARM体系结构与编程第版第章.ppt

ARM体系结构与编程第版第章.ppt

ID:52624798

大小:619.50 KB

页数:43页

时间:2020-04-11

ARM体系结构与编程第版第章.ppt_第1页
ARM体系结构与编程第版第章.ppt_第2页
ARM体系结构与编程第版第章.ppt_第3页
ARM体系结构与编程第版第章.ppt_第4页
ARM体系结构与编程第版第章.ppt_第5页
资源描述:

《ARM体系结构与编程第版第章.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第5章ARM的存储系统与其他的中、低档单片机不同,ARM处理器中可以包含一个存储管理部件。本章介绍ARM体系中两种典型的存储管理实现机制。并在最后给出一个实例。15.1ARM存储系统概述ARM存储系统的体系结构可以适应多种不同的嵌入式应用系统。最简单的存储系统使用普通的地址映射机制,就像在一些简单的单片机系统中一样,地址空间的分配方式是固定的,系统中各部分都使用物理地址。而一些复杂的系统可能包括一种或者多种下面的技术,从而可以提供功能更为强大的存储系统:系统中可能包含多种类型的存储器件通过使用Cache及WriteBuffer技术,可以

2、缩小处理器和存储系统的速度差别,从而提高系统的整体性能。内存管理部件使用内存映射技术实现虚拟空间到物理空间的映射引入存储保护机制,增强系统的安全性。引入一些机制,保证将I/O操作映射成内存操作后,各种I/O操作能够得到正确的结果。25.1ARM存储系统概述本章中主要介绍以下内容。在介绍相关内容时,将以LinkUp公司的通用ARM芯片L7205作为例子。ARM中用于存储管理的系统控制协处理器CP15。ARM中的存储管理部件MMU(MemoryManagementUnit)。ARM中的Cache及WriteBuffer技术。快速进程上下文切

3、换技术。35.2ARM中用于存储管理的系统控制协处理器CP15CP15可以包含16个32位的寄存器,其编号为0~15。实际上,对于某些编号的寄存器,可能对应有多个物理寄存器,在指令中可指定特定的标志位来区分这些物理寄存器。这种机制有些类似于ARM中的寄存器,当处于不同的处理器模式时,某些ARM寄存器可能是不同的物理寄存器,比如对于寄存器SPSR,每一种处理器模式下都对应一个独立的物理寄存器(用户模式和系统模式对应同样的物理寄存器,这是一个例外)。CP15中的寄存器可能是只读的,也可能是只写的,还有一些是可以读写的。对于每一种寄存器,将会

4、详细介绍:寄存器的访问类型(只读/只写/读写)。各种访问操作对于寄存器的作用。寄存器是否对应有多个物理寄存器。寄存器的具体作用。45.2.1访问CP15寄存器的指令访问CP15寄存器的指令有下面两种。MCR:ARM寄存器到协处理器寄存器的数据传送指令。MRC:协处理器寄存器到ARM寄存器的数据传送指令。MCR指令和MRC指令只能在处理器模式是系统模式时执行,在用户模式下执行MCR指令和MRC指令将会触发未定义指令的异常中断。55.2.2CP15中的寄存器1.  CP15中的寄存器C0(1)标识符寄存器①ARM7之后的处理器②ARM7处理

5、器③ARM7之前的处理器(2)Cache类型标识符寄存器2.  CP15中的寄存器C1CP15中的寄存器C1是一个控制寄存器,它包括以下控制功能:禁止/使能MMU以及其他的与存储系统相关的功能。配置存储系统以及ARM处理器中的相关部分的工作方式。65.3存储器管理单元MMU5.3.1存储器管理单元MMU概述在ARM系统中,存储器管理单元MMU主要完成以下工作:虚拟存储空间到物理存储空间的映射。在ARM中采用了页式虚拟存储管理。它把虚拟地址空间分成一个个固定大小的块,每一块称为一页,把物理内存的地址空间也分成同样大小的页。页的大小可以分为

6、粗粒度和细粒度两种。MMU就要实现从虚拟地址到物理地址的转换。存储器访问权限的控制。设置虚拟存储空间的缓冲的特性。75.3.1存储器管理单元MMU概述页表(TranslateTable)是实现上述这些功能的重要手段,它是一个位于内存中的表。页表存放在内存中,系统通常用一个寄存器来保存页表的基地址。在ARM中,系统控制协处理器CP15的寄存器C2用来保存页表的基地址。当CPU需要访问内存时,先在TLB中查找需要的地址变换条目。如果该条目不存在,CPU从位于内存中的页表中查询,并把相应的结果添加到TLB中。这样,当CPU下一次又需要该地址变

7、换条目时,就可以从TLB中直接得到了,从而使地址变换的速度大大加快。85.3.1存储器管理单元MMU概述当内存中的页表内容改变,或者通过修改系统控制协处理器CP15的寄存器C2使用新的页表时,TLB中的内容需要全部清除。MMU提供了相关的硬件支持这种操作。系统控制协处理器CP15的寄存器C8用来控制清除TLB内容的相关操作。MMU可以将某些地址变换条目锁定(LockedDown)在TLB中,从而使得进行与该地址变换条目相关的地址变换速度保持很快。在MMU中,寄存器C10用于控制TBL内容的锁定。MMU可以将整个存储空间分为最多16个域(

8、Domain)。每个域对应一定的内存区域,该区域具有相同的访问控制属性。MMU中,寄存器C3用于控制与域相关的属性的配置。当存储访问失效时,MMU提供了相应的机制用于处理这种情况。在MMU中,寄存器C5和寄

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。