[发明专利]页表预取方法及装置有效
申请号: | 201811366170.6 | 申请日: | 2018-11-16 |
公开(公告)号: | CN111198827B | 公开(公告)日: | 2022-10-28 |
发明(设计)人: | 孙浩;余红斌 | 申请(专利权)人: | 展讯通信(上海)有限公司 |
主分类号: | G06F12/0862 | 分类号: | G06F12/0862;G06F12/1009 |
代理公司: | 北京兰亭信通知识产权代理有限公司 11667 | 代理人: | 赵永刚 |
地址: | 201203 上海市浦东新区浦东*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 页表预取 方法 装置 | ||
本发明提供一种页表预取方法及装置。所述方法包括:当页表快速查询表缺失时,触发页表转换;判断页表所在位置的存储器的属性;根据取回的数据状态判断预取页表是否合法;若预取页表合法,则保存预取页表,否则丢弃预取页表。本发明能够在一定程度上降低页表缺失的概率,从而提高处理器的综合性能。
技术领域
本发明涉及处理器技术领域,尤其涉及一种页表预取方法及装置。
背景技术
页表主要有两方面用途:第一是能够提供虚拟地址到物理地址的映射关系,这样可以让操作系统灵活使用虚拟地址,而不用过多考虑底层的物理分配。第二是能够对地址空间进行读写保护。早期的处理器采用软件的方式进行页表的转换,虽然可以降低处理器设计的复杂度和降低处理器的面积,但是效率很低。随着集成电路制造技术的进步,当代处理器都会采用硬件加速的方式进行页表转换,同时会在处理器内部实现页表快速查询表,以加快页表转换速度。随着处理器的运行频率不断提高,以及应用对处理器的运算能力要求不断提高,页表缺失对于系统整体的性能的影响很大。由于页表快速查询表的容量有限,页表缺失是不可避免的,所以如何降低页表缺失的概率是需要重点解决的问题。
目前,更多的方案关注如何有效地将页表转换中需要的数据预取到数据缓存(Data Cache)中,可以间接地在一定程度上减小页表缺失的代价。对于如何直接预取页表,还没有相应的方案。
现有技术集中在如何有效地将页表转换中需要的数据预取到数据缓存中,意图能在一定程度上减小页表缺失的代价。但是处理器内的数据访问样本比较多,有取指、数据读写、页表转换等,如何将所需要的页表转换数据预取到数据缓存中,并不容易做到。
为了能够加速页表(Page Table)的转换,目前的处理器都会在内部实现页表快速查询表(Translation Lookup-aside Buffer),它缓存了虚拟地址到物理地址的映射关系。但是由于芯片面积、功耗、成本的约束,页表快速查询表的容量是有限的,所以总会出现页表缺失的情况。页表缺失对于处理器性能影响较大,因此如何能降低页表缺失的概率是处理器设计中需要重点考虑的问题。
发明内容
本发明提供的页表预取方法及装置,能够在一定程度上降低页表缺失的概率,从而提高处理器的综合性能。
第一方面,本发明提供一种页表预取方法,包括:
当页表快速查询表缺失时,触发页表转换;
判断页表所在位置的存储器的属性;
根据取回的数据状态判断预取页表是否合法;
若预取页表合法,则保存预取页表,否则丢弃预取页表。
可选地,所述存储器的属性分为三类:可缓存的、不可缓存的和外设;对于属性为可缓存的,选择突发访问数据量为半个缓存行或者整个缓存行;对于属性为不可缓存的,数据访问量根据处理器的外部总线宽度而定;对于属性为外设的,不进行页表预取。
可选地,所述根据取回的数据状态判断预取页表是否合法包括:
对于最后一级不是L3,如果预取回的数据不是块描述符,而是表描述符或者无效输入,则判定所述预取页表不合法;
对于最后一级不是L3,如果预取回的数据有页表错误,则判定所述预取页表不合法;
对于最后一级是L3,如果目标描述符含有连续位,则判定所述预取页表不合法;
对于最后一级是L3,如果预取数据含有连续位,则判定所述预取页表不合法;
对于最后一级是L3,如果预取数据是页描述符,但是有页表错误,则判定所述预取页表不合法。
可选地,所述方法还包括:
对所述预取页表进行管理。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于展讯通信(上海)有限公司,未经展讯通信(上海)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811366170.6/2.html,转载请声明来源钻瓜专利网。