- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
大学课件物联网与嵌入式系统开发--第2章_ARM体系结构全解
* 2.4 ARM存储器结构 2.4.5 ARM的MMU结构(续) 2.第1级描述符 存储器管理的段/页寻址中的段表/页表都放在存储器中。表的基址、域、访问权限以及有关特性都放在第1级描述符中。第1级描述符也放在存储器中。该变换表由CP15协处理器的寄存器给出;而表格索引则由虚拟地址31~20给出 2.4 ARM存储器结构 2.4.5 ARM的MMU结构(续) 2.第1级描述符 第1级描述符按位1~0可有以下4种情况。 00:无效; 01:粗调页的描述符; 10:段的描述符; 11:细调页的描述符(支持某些ARM处理器核)。 2.4 ARM存储器结构 2.4.5 ARM的MMU结构(续) 3.段式寻址 如图2-20所示,32位虚拟地址(即逻辑地址)分成高12位段表索引(Table Index)和20位段索引(Section Index)。12位段表索引与CP15的R2中的18位变换表基址(Translation Table Base Address)合并成存储器存取地址(最后2位为00)。查段表找出相应的段描述符,位31~20为段基址(Section Bass Address);位19~12为0;位11~10为AP存储器存取权限;位9为0;位8~5为域;位4不确定;位3为C:Cache允许;位2为B:缓冲器允许;最低2位为10,表示段描述符。然后,段基址与段索引(32位虚拟地址中提供)合并成真正的存储器存取地址(物理地址),读出相应的数据。 2.4 ARM存储器结构 2.4.5 ARM的MMU结构(续) 3.段式寻址 2.4 ARM存储器结构 2.4.5 ARM的MMU结构(续) 4.2级页式寻址 图2-21所示为2级页式寻址示意图。32位虚拟地址中的位31~20:12位第1级表索引(有的称目录项索引);位19~12:8位页表索引(Page Table Index);位11~0:12位页偏移值(Page Offset)。12位第1级表索引与协处理器CP15的R2中的18位变换表基址合并成存储器存取地址(最后2位为00)。查第1级表,取出相应的第1级描述符。位31~10为页表的基址(Page Table Base Address);位8~5为域;最后2位为01,表示第2级粗调页表指针(10为段指针,11为第2级细调指针)。22位的页表基址与页表索引(32位虚拟地址提供)再次形成存储取地址(最后2位为00)。查第2级表(页表),找出相应表描述符。位31~12为该页基址,AP3、AP2、AP1和AP0为4个子页(16KB)的存取权限。描述符中C和B定义同段描述符中的C和B定义,后2位10表示为小页(01为大页,11为微小页,00为变换故障)。20位页基址与页偏移值(32位虚拟地址提供)形成真正存储器存取地址(物理地址),读出相应数据。 2.4 ARM存储器结构 2.4.5 ARM的MMU结构(续) 4.2级页式寻址 2.4 ARM存储器结构 2.4.5 ARM的MMU结构(续) 5.存取权限 域(Domain)是一组具有特定访问权限的段/页,这样可以允许多个不同过程用同一个转换表执行,同时不同程序之间又有一些保护。它是一种较轻便的过程切换机制,而不必使每个过程都有自己的转换表。 每个段和子页的存取权限AP位与域信息一起用于第1级描述符中。域控制信息在协处理器CP15的R3寄存器中。协处理器CP15的R1寄存器中的S和R位与处理器的用户/管理者状态来决定是否允许对所寻址单元进行读/写。允许检验过程如下所述。 ① 若协处理器CP15的R1中位1置位,允许定位检验,则检验地址定位;若定位失效(若字没定位于4字节界限,半字没定位于2字节界限),则产生故障。 ② 认证第1级描述符中的寻址单元域位8~5(该描述符无效,取第1级描述符出错故障)。 ③ 检验协处理器CP15中的R3域存取控制寄存器,当前处理是客户(Client)还是管理者?若二者都不是,则出错。 ④ 若该域是管理者,则省去存取权限处理;若是用户,则按表2-8检验其存取权限。如果存取没被允许,则出错;否则继续存取数据。 2.4 ARM存储器结构 2.4.5 ARM的MMU结构(续) 5.存取权限 AP S R 管理者 用户 00 0 0 无存取 00 1 0 只读 00 0 1 只读 00 1 1 未用 01 一 一 读/写 无存取 10 一 一 读/写 只读 11 一 一 读/写 读/写 2.4 ARM存储器结构 2.4.5 ARM的MMU结构(续) 5.存取权限 相应的流程图如图2-22所示,图中的PTE(Pag Table Entry)为页表项。 2.4 ARM存储器结构 2.4.
文档评论(0)