[发明专利]旁路转换缓冲器以及在其中进行地址匹配的方法和装置无效
申请号: | 200810214600.2 | 申请日: | 2008-08-28 |
公开(公告)号: | CN101661437A | 公开(公告)日: | 2010-03-03 |
发明(设计)人: | 常晓涛;赵奕;王鲲;章宇;侯锐 | 申请(专利权)人: | 国际商业机器公司 |
主分类号: | G06F12/10 | 分类号: | G06F12/10 |
代理公司: | 北京市中咨律师事务所 | 代理人: | 于 静;李 峥 |
地址: | 美国*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 旁路 转换 缓冲器 以及 其中 进行 地址 匹配 方法 装置 | ||
技术领域
本发明涉及计算机存储管理技术,更具体地,涉及旁路转换缓冲器TLB以及在TLB中进行地址匹配的方法和装置。
背景技术
在计算机进行数据存取和处理的时候,需要将各个应用程序所使用的逻辑地址转换为存储器的物理地址,以便访问该存储器及其I/O设备。其中,逻辑地址又称虚拟地址,物理地址又称实际地址。在上述地址转换中,通常是将存储器分为多个固定长度的存储块,又称页面(page),以页面为单位进行地址转换。以页面为单位的逻辑地址和物理地址的映射关系存储在页表中。也就是说,页表中包含多个条目,或称页表项,每个页表项对应于一个页面的逻辑地址和物理地址的映射关系。
由于页表存储在内存中,而处理器与内存之间通常需要通过总线进行连接,因此如果处理器每次处理数据都要通过页表来查找逻辑地址和物理地址的映射关系,系统运行速度和性能会非常不理想。因此,很多处理器使用旁路转换缓冲器TLB(translation look-aside buffer)来实现地址的映射和转换。具体地,TLB是处理器中的一部分高速缓存,用于存储最近常用的一些页表项。这样,在大部分情况下,处理器只需要利用TLB进行地址匹配,而不必每次都去内存中查找页表项,大大提高了系统的运行速度和性能。
由于TLB是处理器高速缓存的一部分,因此其资源非常有限,不可能存储大量的页表项。另一方面,根据TLB的作用和特点,如果存储的页表项太多,就不适合处理器快速查找需要的页表项;然而如果存储的页表项太少,那么有可能使得处理器查找特定地址时命中率不够高。在现有的处理器中,TLB中条目的数目典型地为几十或几百条。例如,在Godson2处理器中TLB条目数目小于64;在Intel X86处理器中,TLB条目为128。因此,在TLB设计中,有效利用有限的页表项是十分重要的问题。
另一方面,如上所述,页表是以页面为单位存储地址映射关系的。对于固定大小的存储器,如果页面大小非常小,则页面数目将非常大,页表需要大量的条目存储每个页面的地址映射关系。相应地,需要在TLB中存储的条目数量也会非常大,占用大量TLB资源,十分不利。如果页面大小非常大,那么很容易出现大量的地址碎片无法利用的情况,造成页面空间的浪费。为了解决上述矛盾,现在多种处理器支持多页面大小的设置。例如,Intel X86处理器支持4k和4M的页面大小;X86_64支持4k,1M,2M,4M的页面大小;Itanium2支持4k,16k,64k,256k,1M,4M,16M,64M,256M和1G的页面大小。为此,TLB中的页表项也必须针对不同页面大小进行地址映射。
当使用不同大小的页面组合时,现有的TLB结构带来许多问题。下面以4k和64k的页面组合为例说明该问题。图1示意性示出多页面大小情况下的地址分配。如图所示,假设内存中存在连续的128k的空间,其中前64k是一个完整的未被占用的64k页面,接下来的4k,也就是64k-68k已经被一个4k的逻辑页面地址占用。如果这时某些程序请求60k的空间,那么只能有两种解决方案。一种是为其分配15个4k的页面,例如将68k-128k之间的空间划分为15个4k页面,分配给该程序。然而,这种情况下就需要15个TLB条目来记录每个页面的地址映射,占用大量TLB资源。另一种方案是为其重新分配一个新的64k页面,例如0k-64k页面。然而这种情况下,就增加64k页面中的最后4k页面成为存储碎片的可能。
因此,需要一种TLB方案,能够合理利用存储空间,同时高效利用页表条目,便于处理器快速查找和匹配所需地址。
发明内容
考虑到上述问题,本发明提供一种旁路转换缓冲器以及在其中进行地址匹配的方法和装置。
根据本发明第一方面,提供一种旁路转换缓冲器TLB,包括多个条目,每个条目包含一个逻辑地址与一个物理地址,每一个物理地址对应于一个存储页面,其中,所述多个条目中至少一个条目还包含第一数目的附加位,所述附加位中的每一位代表该条目中的物理地址所对应的存储页面中的一个子页面被其他逻辑地址占用的状态。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国际商业机器公司,未经国际商业机器公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810214600.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:多锥面翻领制袋成型器
- 下一篇:用于管理系统的菜单动态加载方法