改进虚拟存储器系统中存储器访问的技术技术方案

技术编号:2881833 阅读:205 留言:0更新日期:2012-04-11 18:40
根据本发明专利技术,公开了为减少存储器访问等待时间的方法和装置。当对转换查阅表(110)产生一个新的条目时,该新TLB条目指向存储器(108)的一个相应的TLB页。与更新TLB并行,该TLB页通过在TLB页超高速缓冲存储器(114)中存储该TLB页而临时移动到更接近处理器(102)。TLB页超高速缓冲存储器(114)比主存储器(108)临时更接近处理器。(*该技术在2020年保护过期,可自由使用*)

【技术实现步骤摘要】

本专利技术一般涉及计算系统。具体说,本专利技术涉及存储器管理系统,更特别说,涉及通过使用在使用虚拟存储器寻址的计算机存储器系统中的一个转换查阅缓冲器以减少与由处理器访问存储器页相关的等待时间的方法和装置。
技术介绍
虚拟存储器系统是允许寻址非常大容量存储器的系统,即使系统的主存储器包含较小的地址空间。虚拟存储器系统通过定义存储器管理单元来提供这一能力,尤其是,页或段,有虚拟存储器地址和相应的物理存储器地址。一个特别的虚拟存储器地址可以在主存储器内或在较慢的替补存储器内,例如磁盘空间。如果一个虚拟地址映射到的数据的物理地址是主存储器,则信息很容易被访问和利用。如果物理地址表明对应虚拟地址的页位于替补存储器,则该页被传输或交换到主存储器里,在主存储器中可以访问数据。传输一般需要其它信息从主存储器交换出去回到替补存储器为新信息腾出空位。这一传输一般在作为硬件或软件的存储器管理单元的控制下执行。为了增加虚拟存储器访问的速度,也包含超高速缓冲存储器以存储最近使用的数据和指令。在为请求的信息访问主存储器之前首先访问这些超高速缓冲存储器。这些超高速缓冲存储器可以虚拟寻址或者物理寻址。然而,根据物理地址访问的超高速缓冲存储器需要在检查超高速缓冲存储器和主存储器之前进行虚拟对物理访问转换的处理。页处理,亦即交换页的处理,依赖由存储器页索引的数据结构。这一数据结构包含根据提供的虚拟地址要访问的存储器的物理地址。包含物理页地址的这一数据结构通常采取由虚拟页号、表的大小、页号和虚拟存储器空间索引的页表的形式。页表通常这样大,使得它们被存储在主存储器中并经常将它们自己分页。这意味着,只要是需要一次存储器访问来获取物理地址和需要再一次访问来获取数据时,则每一次存储器访问至少要一次或多次。用于使访问时间成本最小的一种技术是保存最后执行的转换,以便如果当前地址与前一个地址指向同一页时跳过映射处理。另外,为了节省附加的时间,利用为超高速缓冲存储器使用的位置原理带来的益处。如果该引用具有位置,则用于这些引用的地址转换也必须有位置。通过把这些地址转换保存在一个特殊的超高速缓冲存储器中,存储器访问很少需要第二次访问来转换地址。这一特殊的地址转换超高速缓冲存储器称为转换查阅缓冲器或“TLB”(translation look asidebuffer)。一个TLB条目像超高速缓冲存储器条目,其中标签部分保持虚拟地址部分,而数据部分保持物理页帧号、保护字段、使用位和修改或脏位。附图说明图1表示一个典型的TLB数据结构100的一个例子。为增加访问虚拟存储器的速度可以使用一些不同的方法和技术。在一种方法中,使用较重的流水线存储器访问,其中在流水线的前面一个步骤执行TLB访问。另一个方法是直接匹配虚拟地址。这样的超高速缓冲存储器称为虚拟超高速缓冲存储器。这从超高速缓冲存储器命中访问的场合消除了TLB的转换时间。然而,不幸的是,一个缺点是处理要耗费很长的时间,并需要为每一个虚拟地址执行而不管地址位置。应该注意,关于TLB的另外的讨论可以在David A.Patterson和John L.Hennessey著Computer Architecture,A QualitativeApproach Second Edition,(Morgan Kaufmann出版社)中第439-第457页找到。考虑到前述内容,显然,希望有为在虚拟存储器环境中减少存储器访问等待时间的方法和装置。专利技术概要根据本专利技术,公开了一种在基于虚拟存储器的系统中减少存储器访问等待时间的方法。根据本专利技术的一个方面,公开了一种在基于虚拟存储器的系统中减少存储器访问等待时间的装置。该装置包括一个用于执行可执行指令的处理器,一个适当连接到该处理器用于存储由该处理器执行的可执行指令的主存储器,一个连接到该处理器和该主存储器用于存储最近使用过的指令的一个子集的超高速缓冲存储器,其中该超高速缓冲存储器临时比该主存储器更接近该处理器。该装置还包括适当安排用以存储一个TLB页的TLB页超高速缓冲存储器,其中在该处理器的指导之下,通过将对应于一个新TLB条目的一个新TLB页从主存储器移动到该TLB页超高速缓冲存储器而使该新TLB页临时移动到更接近该处理器,其中该TLB页超高速缓冲存储器比该主存储器更接近该处理器,并且其中在该TLB页超高速缓冲存储器中的一个TLB页超高速缓冲存储器条目指向一个相关的TLB页。图1表示常规安排的TLB数据结构。图2表示一个根据本专利技术的一个实施例的基于虚拟存储器的计算机系统,它具有一个分布式TLB寄存器。图3表示根据本专利技术的一个实施例的层次式存储器安排。图4表示一个根据本专利技术的一个实施例的计算机系统,其中,一个TLB页被分布在一个DRAM存储器设备的阵列中。图5表示基于图4所示计算机系统的一个示例地址映射模式。图6表示一个计算机系统,其中,图4所示DRAM存储器设备阵列包括快速静态缓冲器。图7表示根据本专利技术的一个实施例的计算机系统,它具有在存储器控制器中的一个TLB缓冲器,其通过高速数据互连连接到一个存储器阵列。图8是一个流程图,详细说明根据本专利技术的一个实施例用于减少基于虚拟存储器的系统的存储器访问等待时间的过程。较佳实施例的详细描述现在详细参考本专利技术的一个优选实施例。该优选实施例的一个例子在附图中表示。虽然本专利技术结合优选实施例说明,但是应该理解,但其并不意欲限制本专利技术到一个优选实施例。相反,其目的是覆盖可以包括在由所附权利要求限定的本专利技术的精神和范围内的替换、修改和等价物。为了减少在使用虚拟存储器寻址方案的计算机系统中的存储器等待时间,使用也称为TLB的转换查阅缓冲器来标识最近一组虚拟存储器地址到物理存储器地址的转换。在所说明的实施例中,计算机系统包括一个连接到主存储器和一个超高速缓冲存储器的处理器(具有一个相关的TLB)。通常,使用超高速缓冲存储器来存储先前从主存储器(诸如动态随机存取存储器,DRAM)获取的最近使用的存储器地址和相关的数据。通过在TLB中存储最近的虚拟存储器到物理存储器的转换(一般采取查找表的形式或LUT),对于存储在TLB中的这些转换而转换一个虚拟存储器地址到一个物理存储器地址所需要的时间减少为一次简单的表查阅操作。因为在任何给定时刻处理器不能访问比在它的相关的TLB中说明的更多的物理存储器,因此,引起一次失中(亦即未发现被包含在该处理器的TLB中)的任何存储器页与实际更新TLB相并行地被移动到临时更接近处理器的更快的存储器(诸如L1或L2超高速缓冲存储器)。应该注意,通过更新TLB,意味着,因为TLB是频繁使用的页的超高速缓冲存储器,因此任何被决定为未由任一数目和类型的算法(例如一种随机算法)频繁使用的页被从TLB中清除或清空,为其虚拟存储器对物理存储器转换判定不在TLB中的存储器页腾出空间。当跟踪处理器TLB时,进行一次备份复制,并保存在一个相关的存储器控制器中。在更换一个特定的TLB条目的时候,存储器控制器起动一个由该新TLB条目指向的相关的页(或其一部分)进入临时更接近处理器的存储器层次的一段中。临时更接近指的是为该特定存储器页或其一部分的存储器访问等待时间减少从而改善总的存储器访问时间。在一些实现中,由新TLB条目指向的整个存储器页(或块本文档来自技高网...

【技术保护点】
一种在基于虚拟存储器的系统中减少存储器访问等待时间的装置,该装置包括: 一个用于执行可执行指令的处理器; 一个适当连接到该处理器用于存储由该处理器执行的可执行指令的主存储器; 一个连接到该处理器和该主存储器用于存储最近使用过的指令的一个子集的超高速缓冲存储器,其中该超高速缓冲存储器临时比该主存储器更接近该处理器; 一个适当安排用以存储一个TLB页的TLB页超高速缓冲存储器,其中在该处理器的指导之下,通过将对应于一个新TLB条目的一个新TLB页从主存储器移动到该TLB页超高速缓冲存储器而使该新TLB页临时移动到更接近该处理器,其中该TLB页超高速缓冲存储器比该主存储器更接近该处理器,并且其中在该TLB页超高速缓冲存储器中的一个TLB页超高速缓冲存储器条目指向一个相关的TLB页。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:H斯特拉科夫斯基
申请(专利权)人:因芬尼昂技术股份公司
类型:发明
国别省市:DE[德国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1