[发明专利]TLB预取有效
申请号: | 201080038472.6 | 申请日: | 2010-07-12 |
公开(公告)号: | CN102498477A | 公开(公告)日: | 2012-06-13 |
发明(设计)人: | J·王;陈宗健 | 申请(专利权)人: | 苹果公司 |
主分类号: | G06F12/10 | 分类号: | G06F12/10 |
代理公司: | 中国国际贸易促进委员会专利商标事务所 11038 | 代理人: | 高青 |
地址: | 美国加*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | tlb | ||
1.一种存储器管理单元(MMU),包括:
配置成保存多个虚拟-物理地址转换的转换后援缓冲器(TLB);
配置成保存包括多个页面表条目的数据块的缓冲器,所述多个页面表条目包括先前在TLB中未命中的虚拟地址的转换期间读取的第一页面表条目;以及
与所述TLB和所述缓冲器耦接的走表单元,其中,所述走表单元被耦接,以接收TLB中的第一TLB未命中的第一虚拟地址,以及其中,所述走表单元被配置成在发起对于所述转换的存储器读取之前,检查所述缓冲器有无对应于第一虚拟地址的第二页面表条目。
2.按照权利要求1所述的MMU,其中,所述走表单元被配置成检测所述缓冲器中的第二页面表条目,以及其中,所述走表单元被配置成把来自第二页面表条目的转换写入TLB。
3.按照权利要求1所述的MMU,其中,所述走表单元被配置成检测第二页面表条目未被保存在所述缓冲器中,以及其中,所述走表单元被配置成发出对于包括第二页面表条目的第二数据块的存储器读取。
4.按照权利要求3所述的MMU,其中,所述走表单元被配置成把第二数据块写入所述缓冲器,盖写缓冲器中的第一数据块。
5.按照权利要求4所述的MMU,其中,所述缓冲器被配置成保存多个数据块,其中,每个数据块对应于具备传送给MMU的转换请求的不同标识符。
6.按照权利要求1-5任意之一所述的MMU,其中,所述数据块在尺寸上大于高速缓存块。
7.按照任意前述权利要求所述的MMU,其中,所述走表单元被配置成跟踪多个页面表条目的使用历史,以及响应于所述历史,生成对于第二数据块的预取请求。
8.按照权利要求7所述的MMU,其中,所述历史包含从数据块读取的Q个最新页面表条目的指示,其中,所述走表单元被配置成如果所述历史指示TLB未命中的模式在数据块的端部附近,则生成预取请求,其中,Q是大于1的正整数。
9.按照权利要求7所述的MMU,其中,所述历史包含已被所述走表单元读取的多个页面表条目的数目的计数,其中,所述走表单元被配置成响应于所述计数等于所述多个页面表条目的数目而生成所述预取请求。
10.按照权利要求7所述的MMU,其中,所述历史包含已被所述走表单元读取的多个页面表条目的数目的计数,其中,所述走表单元被配置成响应于所述计数接近所述多个页面表条目的数目而生成所述预取请求。
11.一种方法,包括:
从存储器读取包含多个页面表条目的数据块;
把所述数据块保持在存储器管理单元(MMU)中;
检测MMU中的转换后援缓冲器(TLB)未命中;以及
读取多个页面表条目之一,以确定用于所述TLB未命中的转换。
12.按照权利要求11所述的方法,进一步包括:
检测MMU中的第二TLB未命中;
确定对应于第二TLB未命中的第二页面表条目不在所述多个页面表条目中;
从存储器读取包含第二批多个页面表条目的第二数据块,所述第二批多个页面表条目包括所述第二页面表条目;以及
把所述第二数据块保持在MMU中。
13.按照权利要求12所述的方法,其中,把第二数据块保持在MMU中包含:用第二数据块盖写所述数据块。
14.按照权利要求11所述的方法,进一步包括:
保持所述数据块中的多个页面表条目的使用历史;和
响应于所述历史,生成包括第二批多个页面表条目的第二数据块的预取。
15.按照权利要求11所述的方法,进一步包括:
确定预期经历转换后援缓冲器(TLB)未命中的规则模式的一个或多个地址范围;和
用所述地址范围编程存储器管理单元(MMU)中的一个或多个寄存器,其中,MMU被配置成响应于所述一个或多个地址范围内的TLB未命中,生成对于页面表条目块的预取请求,每个块包含多个页面表条目,以及其中,MMU被配置成禁止对于所述一个或多个地址范围外的TLB未命中,生成预取请求。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苹果公司,未经苹果公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201080038472.6/1.html,转载请声明来源钻瓜专利网。