CN114116540B - 一种用于提高处理器页表缓冲性能的方法及*** - Google Patents

一种用于提高处理器页表缓冲性能的方法及*** Download PDF

Info

Publication number
CN114116540B
CN114116540B CN202210088637.5A CN202210088637A CN114116540B CN 114116540 B CN114116540 B CN 114116540B CN 202210088637 A CN202210088637 A CN 202210088637A CN 114116540 B CN114116540 B CN 114116540B
Authority
CN
China
Prior art keywords
page table
bit
hit
table entry
entry cache
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202210088637.5A
Other languages
English (en)
Other versions
CN114116540A (zh
Inventor
刘玉佳
陈钦树
朱伏生
赖文彬
梁东坪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangdong Communications and Networks Institute
Original Assignee
Guangdong Communications and Networks Institute
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangdong Communications and Networks Institute filed Critical Guangdong Communications and Networks Institute
Priority to CN202210088637.5A priority Critical patent/CN114116540B/zh
Publication of CN114116540A publication Critical patent/CN114116540A/zh
Application granted granted Critical
Publication of CN114116540B publication Critical patent/CN114116540B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1009Address translation using page tables, e.g. page table structures

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本发明公开了一种用于提高处理器页表缓冲性能的方法,该方法包括:将虚拟地址划分成页表缓冲选择位和页表缓冲标签位;对所述页表缓冲选择位进行解码生成选择信息,根据所述选择信息使能关联的选择位运行;通过所述关联的选择位将页表缓冲标签位输出至比较器;使用比较器分别对所述页表缓冲标签位的VPN比较位和表项缓存中的VPN比较位进行运算确定最终的表项缓存;根据预置的命中线程判断所述最终的表项缓存是否命中;若所述最终的表项缓存命中,则生成物理页表实现虚拟地址到物理地址的转换。根据本发明的方法能够实现一种大容量的页表缓冲,从而提高页表缓冲的命中率。

Description

一种用于提高处理器页表缓冲性能的方法及***
技术领域
本发明涉及计算机技术领域,尤其涉及一种用于提高处理器页表缓冲性能的方法及***。
背景技术
页表的表项简称为PTE(Page Table Entry,页表条目),缓存中的PTE包含的部件称为TLB(Translation Lookaside Buffer,旁路转换缓冲或页表缓冲)。一般为了减少TLB缺失发生的频率,目前在处理器中一般会采用全相连的方式来设计TLB,但是,这样会导致TLB容量不能太大,可是大容量的TLB又能够减少TLB缺失发生的频率。并且,研究表明对于全相连结构的TLB,在TLB的表项大于64时,其功耗和延迟都会急剧增加。所以一般处理器的TLB都不会超过64个表项。由此,目前需要一种既可以支持大容量,又可以减少TLB的缺失发生的概率的高性能TLB架构。
发明内容
本发明所要解决的技术问题在于,提供一种用于提高处理器页表缓冲性能的方法及***,能够实现一种大容量的页表缓冲,从而提高页表缓冲的命中率。
为了解决上述技术问题,本发明第一方面公开了一种用于提高处理器页表缓冲性能的方法,所述方法包括:将虚拟地址划分成页表缓冲选择位和页表缓冲标签位;对所述页表缓冲选择位进行解码生成选择信息,根据所述选择信息使能关联的选择位运行;通过所述关联的选择位将页表缓冲标签位输出至比较器;使用比较器分别对所述页表缓冲标签位的VPN比较位和表项缓存中的VPN比较位进行运算确定最终的表项缓存;根据预置的命中线程判断所述最终的表项缓存是否命中;若所述最终的表项缓存命中,则生成物理页表实现虚拟地址到物理地址的转换。
在一些实施方式中,所述根据预置的命中线程判断所述最终的表项缓存是否命中,之后还包括:若所述最终的表项缓存未命中,则在执行一个时钟周期延迟后判断所述关联的选择位是否命中;若所述关联的选择位命中,则输出物理页表并将更新表项缓存。
在一些实施方式中,若所述最终的表项缓存未命中,则在执行一个时钟周期延迟后判断所述关联的选择位是否命中,之后还包括:若所述关联的选择位未命中,则判断所述选择位是否已经被填满;若所述选择位已经被填满,则使用替换算法对最终的表项缓存进行替换并更新替换后的表项缓存。
在一些实施方式中,所述比较器的个数与表项缓存个数相同。
本发明的第二个方面公开了一种用于提高处理器页表缓冲性能的***,所述***包括:划分模块,用于将虚拟地址划分成页表缓冲选择位和页表缓冲标签位;解码器,用于对所述页表缓冲选择位进行解码生成选择信息,根据所述选择信息使能关联的选择位运行,并通过所述关联的选择位将页表缓冲标签位输出至下述比较器;比较器,用于对所述页表缓冲标签位的VPN比较位和表项缓存中的VPN比较位分别进行运算确定最终的表项缓存;判定模块,用于根据预置的命中线程判断所述最终的表项缓存是否命中,若所述最终的表项缓存命中,则生成物理页表实现虚拟地址到物理地址的转换。
在一些实施方式中,所述判定模块还包括:若所述最终的表项缓存未命中,则在执行一个时钟周期延迟后判断所述关联的选择位是否命中;若所述关联的选择位命中,则输出物理页表并将更新表项缓存。
在一些实施方式中,所述判定模块还包括:若所述关联的选择位未命中,则判断所述选择位是否已经被填满;若所述选择位已经被填满,则使用替换算法对最终的表项缓存进行替换并更新替换后的表项缓存。
在一些实施方式中,所述比较器的个数与表项缓存个数相同。
本发明的第三个方面公开了一种用于提高处理器页表缓冲性能的装置,所述装置包括: 存储有可执行程序代码的存储器;与所述存储器耦合的执行器;所述执行器调用所述存储器中存储的所述可执行程序代码,执行如上述的用于提高处理器页表缓冲性能的方法。
本发明的第四个方面公开了一种计算机存储介质,所述计算机存储介质存储有计算机指令,所述计算机指令被调用时,用于执行如上述的用于提高处理器页表缓冲性能的方法。
与现有技术相比,本发明的有益效果在于:
实施本发明能够通过所采用选择位结构即Bank结构来增加页表缓冲的容量,从而减少了页表缓冲的缺失频率,使得每个选择位的大小不超过64个表项。引入了比较器来快速查找页表缓冲是否命中。由于大多时间页表缓冲都能命中,这时就不需要访问选择位了,由此就能够大幅降低功耗和延迟。当表项缓存的表项没有命中时,会访问全相连结构的选择位,由于在本申请中所预留的选择b位的容量不大,所以相应的功耗和延迟也不大,进一步降低了页表缓冲的功耗,大大的提高了页表缓冲的性能。
附图说明
图1为本发明实施例公开的一种用于提高处理器页表缓冲性能的方法流程示意图;
图2为本发明实施例公开的一种高性能页表缓冲架构示意图;
图3为本发明实施例公开的一种用于提高处理器页表缓冲性能的***示意图;
图4为本发明实施例公开的一种用于提高处理器页表缓冲性能的装置结构示意图。
具体实施方式
为了更好地理解和实施,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或模块的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或模块,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或模块。
本发明实施例公开了一种用于提高处理器页表缓冲性能的方法及***,能够通过所采用选择位结构即Bank结构来增加页表缓冲的容量,从而减少了页表缓冲的缺失频率,使得每个选择位的大小不超过64个表项。引入了比较器来快速查找页表缓冲是否命中。由于大多时间页表缓冲都能命中,这时就不需要访问选择位了,由此就能够大幅降低功耗和延迟。当表项缓存的表项没有命中时,会访问全相连结构的选择位,由于在本申请中所预留的选择b位的容量不大,所以相应的功耗和延迟也不大,进一步降低了页表缓冲的功耗,大大的提高了页表缓冲的性能。
实施例一
请参阅图1,图1为本发明实施例公开的一种用于提高处理器页表缓冲性能方法的流程示意图。其中,该用于提高处理器页表缓冲性能方法可以应用在页表管理***,对于该方法的具体应用本发明实施例不做限制。如图1所示,该用于提高处理器页表缓冲性能的方法可以包括以下操作:
101、将虚拟地址划分成页表缓冲选择位和页表缓冲标签位。
在虚拟地址中提取出与页表缓冲相关的位字符,即页表缓冲选择位和页表缓冲标签位,在本领域中也可以表示为TLB Tag位和TLB bank位。其中,TLB Bank包含了Tag CAM和Data SRAM,和一般的处理器的TLB设计一样,单个的TLB Bank采用全相连的结构,保证低的缺失频率。其大小一般不超过64个表项。由于在本实施例中采取了多个选择位Bank的结构,所以一个Bank可以做成32个表项,多个Bank的结合会得到一个大容量的低缺失率的TLB。为了更加清楚的说明本实施例的实现方式,结合图2的一种高性能TLB架构进行阐述。
102、对页表缓冲选择位进行解码生成选择信息,根据选择信息使能关联的选择位运行。
在将虚拟地址划分成页表缓冲选择位和页表缓冲标签位之后,由解码器1对页表缓冲选择位进行解码生成选择信息,该选择信息包含有每个虚拟地址的页表缓冲选择位对应的选择位(即图2中的Bank0、Bank1、Bank2、Bank3)的关联关系,当解码出选择信息后,直接匹配对应的选择位,使能该选择位进行运行。示例性地,解码出的选择信息为Bank0,则使能Bank0运行,而其他没有被匹配的选择位Bank1、Bank2、Bank3则停止工作,从而降低能耗。其中,虚拟地址的TLB选择位的位数是根据Bank选择位的个数来确定的,即有几个TLB选择位就对应设置几个Bank选择位。通过这样的Bank结构组建的大容量的页表缓冲架构,可以利用对虚拟地址的事先划分,在访问中只访问到其中的一个Bank位,所以功耗不会增加。
103、通过关联的选择位将页表缓冲标签位输出至比较器。
在确定了工作的关联的选择位后,就将页表缓冲标签位输入至比较器中,其中,比较器的个数与表项缓存个数相同,即如图2所示,有两个表项缓存则对应有两个比较器,该表项缓存中存放的是最近访问过的表项,每个表项缓存存放一个表项,一个Bank对应的表项缓存的个数也是可以变化的,当然表项缓存的个数越多,需要的比较器越多,控制电路也复杂,对应的功耗也会增加。所以,在本实施例中,将表项缓存设置为存储最近访问的两个表项,从而有利于比较器快速查找TLB是否命中。
104、使用比较器分别对页表缓冲标签位的VPN比较位和表项缓存中的VPN比较位进行运算确定最终的表项缓存。
比较位分别获取到页表缓冲标签位的VPN比较位和表项缓存中的VPN比较位进行比较运算,具体地,运算方式可以为异或运算,先对表项缓存中的VPN做比较运算生成一个比较结果,再对页表缓冲标签位的VPN比较位做比较运算生成另一个比较结果。之后将两个比较结果进行对比,确定最终要访问的表项缓存即最终的表项缓存,具体为通过比较器快速确认最终要以哪个表现缓存存储的内容作为判断表项缓存是否命中的依据,而规避了现有技术需要对最近多项缓存一一查验而导致的功耗过高的问题。
105、根据预置的命中线程判断最终的表项缓存是否命中。
对于表现缓存是否命中的含义是在虚拟地址中提取出的TLB标签位中的VPN,检查TLB是否有该VPN的转换映射,如果有,则称为表项缓存命中。那么在本申请中,发明人为了进一步降低整个表项缓存的功耗还要满足大容量的需求,设计了一套判定逻辑即预置的命中线程,具体地,先判断由比较器确定的最终的表项缓存,可以利用解码器2进行解码对当前工作的Bank位中的表项缓存进行访问。
106、若最终的表项缓存命中,则生成物理页表实现虚拟地址到物理地址的转换。
如果在最终的表项缓存中直接判定为表项缓存命中,判定依据为最终表项缓存的VPN与虚拟地址中的TLB Tag位中的VPN一致,也就是上述的TLB有该VPN的转换映射,则输出物理页表PFN,该PFN是与VPN的关系为同位保存且互相关联对应,在输出了PFN后,就可以利用完成虚拟地址到物理地址的转换过程。
进一步地,若最终的表项缓存判定为未命中,则在执行一个时钟周期延迟后判断关联的选择位Bank是否命中,若关联的选择位命中,则输出物理页表并将更新表项缓存。
进一步地,若关联的选择位未命中,则判断该选择位是否已经被填满,若选择位已经被填满,则使用替换算法对最终的表项缓存进行替换并更新替换后的表项缓存。由此,根据上述的命中线程逻辑,可以大幅度的减少TLB的访问次数,降低了TLB的功耗,从而有利于实现低时延的TLB,满足高性能的TLB需求。
实施例二
请参阅图3,图3为本发明实施例公开的一种用于提高处理器页表缓冲性能***的示意图。该***包括:划分模块3、解码器4、比较器5和判定模块6。
划分模块3,用于将虚拟地址划分成页表缓冲选择位和页表缓冲标签位。该模块可以使用编程算法控制,在虚拟地址中提取出与页表缓冲相关的位字符,即页表缓冲选择位和页表缓冲标签位,在本领域中也可以表示为TLB Tag位和TLB bank位。其中,TLB Bank包含了Tag CAM和Data SRAM,和一般的处理器的TLB设计一样,单个的TLB Bank采用全相连的结构,保证低的缺失频率。其大小一般不超过64个表项。由于在本实施例中采取了多个选择位Bank的结构,所以一个Bank可以做成32个表项,多个Bank的结合会得到一个大容量的低缺失率的TLB。
解码器4,用于对页表缓冲选择位进行解码生成选择信息,根据选择信息使能关联的选择位运行,并通过关联的选择位将页表缓冲标签位输出至下述比较器。在将虚拟地址划分成页表缓冲选择位和页表缓冲标签位之后,由解码器4对页表缓冲选择位进行解码生成选择信息,该选择信息包含有每个虚拟地址的页表缓冲选择位对应的选择位。该解码器可以实现为现有解码器硬件。当解码出选择信息后,直接匹配对应的选择位,使能该选择位进行运行。示例性地,解码出的选择信息为Bank0,则使能Bank0运行,而其他没有被匹配的选择位Bank1、Bank2、Bank3则停止工作,从而降低能耗。其中,虚拟地址的TLB选择位的位数是根据Bank选择位的个数来确定的,即有几个TLB选择位就对应设置几个Bank选择位。通过这样的Bank结构组建的大容量的页表缓冲架构,可以利用对虚拟地址的事先划分,在访问中只访问到其中的一个Bank位,所以功耗不会增加。
比较器5,用于对页表缓冲标签位的VPN比较位和表项缓存中的VPN比较位分别进行运算确定最终的表项缓存。在确定了工作的关联的选择位后,就将页表缓冲标签位输入至比较器中,其中,比较器的个数与表项缓存个数相同,示例性地,可以设置为有两个表项缓存则对应有两个比较器,该表项缓存中存放的是最近访问过的表项,每个表项缓存存放一个表项,一个Bank对应的表项缓存的个数也是可以变化的,当然表项缓存的个数越多,需要的比较器越多,控制电路也复杂,对应的功耗也会增加。所以,在本实施例中,将表项缓存设置为存储最近访问的两个表项,从而有利于比较器快速查找TLB是否命中。比较位分别获取到页表缓冲标签位的VPN比较位和表项缓存中的VPN比较位进行比较运算,具体地,运算方式可以为异或运算,先对表项缓存中的VPN做比较运算生成一个比较结果,再对页表缓冲标签位的VPN比较位做比较运算生成另一个比较结果。之后将两个比较结果进行对比,确定最终要访问的表项缓存即最终的表项缓存,具体为通过比较器快速确认最终要以哪个表现缓存存储的内容作为判断表项缓存是否命中的依据,而规避了现有技术需要对最近多项缓存一一查验而导致的功耗过高的问题。
判定模块6,用于根据预置的命中线程判断最终的表项缓存是否命中,若最终的表项缓存命中,则生成物理页表实现虚拟地址到物理地址的转换。对于表现缓存是否命中的含义是在虚拟地址中提取出的TLB标签位中的VPN,检查TLB是否有该VPN的转换映射,如果有,则称为表项缓存命中。那么在本申请中,发明人为了进一步降低整个表项缓存的功耗还要满足大容量的需求,设计了一套判定逻辑即预置的命中线程,具体地,先判断由比较器确定的最终的表项缓存,可以利用解码器2进行解码对当前工作的Bank位中的表项缓存进行访问。若最终的表项缓存命中,则生成物理页表实现虚拟地址到物理地址的转换。
如果在最终的表项缓存中直接判定为表项缓存命中,判定依据为最终表项缓存的VPN与虚拟地址中的TLB Tag位中的VPN一致,也就是上述的TLB有该VPN的转换映射,则输出物理页表PFN,该PFN是与VPN的关系为同位保存且互相关联对应,在输出了PFN后,就可以利用完成虚拟地址到物理地址的转换过程。
进一步地,若最终的表项缓存判定为未命中,则在执行一个时钟周期延迟后判断关联的选择位Bank是否命中,若关联的选择位命中,则输出物理页表并将更新表项缓存。
进一步地,若关联的选择位未命中,则判断该选择位是否已经被填满,若选择位已经被填满,则使用替换算法对最终的表项缓存进行替换并更新替换后的表项缓存。由此,根据上述的命中线程逻辑,可以大幅度的减少TLB的访问次数,降低了TLB的功耗,从而有利于实现低时延的TLB,满足高性能的TLB需求。
实施例三
请参阅图4,图4是本发明实施例公开的一种用于提高处理器页表缓冲性能装置的结构示意图。如图4所示,该装置可以包括:
存储有可执行程序代码的存储器601;
与存储器601耦合的执行器602;
执行器602调用存储器601中存储的可执行程序代码,用于执行实施例一所描述的用于提高处理器页表缓冲性能方法。
实施例四
本发明实施例公开了一种计算机可读存储介质,其存储用于电子数据交换的计算机程序,其中,该计算机程序使得计算机执行实施例一所描述的用于提高处理器页表缓冲性能方法。
实施例五
本发明实施例公开了一种计算机程序产品,该计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,且该计算机程序可操作来使计算机执行实施例一所描述的用于提高处理器页表缓冲性能方法。
以上所描述的实施例仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施例的具体描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,存储介质包括只读存储器(Read-Only Memory,ROM)、随机存储器(Random Access Memory,RAM)、可编程只读存储器(Programmable Read-only Memory,PROM)、可擦除可编程只读存储器(ErasableProgrammable Read Only Memory,EPROM)、一次可编程只读存储器(One-timeProgrammable Read-Only Memory,OTPROM)、电子抹除式可复写只读存储器(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(CompactDisc Read-Only Memory,CD-ROM)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。
最后应说明的是:本发明实施例公开的一种用于提高处理器页表缓冲性能方法及***所揭露的仅为本发明较佳实施例而已,仅用于说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解;其依然可以对前述各项实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或替换,并不使相应的技术方案的本质脱离本发明各项实施例技术方案的精神和范围。

Claims (10)

1.一种用于提高处理器页表缓冲性能的方法,其特征在于,所述方法包括:
将虚拟地址划分成页表缓冲选择位和页表缓冲标签位;
对所述页表缓冲选择位进行解码生成选择信息,根据所述选择信息使能关联的选择位运行;
通过所述关联的选择位将页表缓冲标签位输出至比较器;
使用比较器分别对所述页表缓冲标签位的VPN比较位和表项缓存中的VPN比较位进行运算确定最终的表项缓存;先对所述表项缓存中的VPN做比较运算生成一个比较结果,再对所述页表缓冲标签位的VPN比较位做比较运算生成另一个比较结果,之后将两个比较结果进行对比,确定最终要访问的表项缓存即最终的表项缓存;
根据预置的命中线程判断所述最终的表项缓存是否命中;
若所述最终的表项缓存命中,则生成物理页表实现虚拟地址到物理地址的转换。
2.根据权利要求1所述的用于提高处理器页表缓冲性能的方法,其特征在于,所述根据预置的命中线程判断所述最终的表项缓存是否命中,之后还包括:
若所述最终的表项缓存未命中,则在执行一个时钟周期延迟后判断所述关联的选择位是否命中;
若所述关联的选择位命中,则输出物理页表并将更新表项缓存。
3.根据权利要求2所述的用于提高处理器页表缓冲性能的方法,其特征在于,所述若所述最终的表项缓存未命中,则在执行一个时钟周期延迟后判断所述关联的选择位是否命中,之后还包括:
若所述关联的选择位未命中,则判断所述选择位是否已经被填满;
若所述选择位已经被填满,则使用替换算法对最终的表项缓存进行替换并更新替换后的表项缓存。
4.根据权利要求1-3任一项所述的用于提高处理器页表缓冲性能的方法,其特征在于,所述比较器的个数与表项缓存个数相同。
5.一种用于提高处理器页表缓冲性能的***,其特征在于,所述***包括:
划分模块,用于将虚拟地址划分成页表缓冲选择位和页表缓冲标签位;
解码器,用于对所述页表缓冲选择位进行解码生成选择信息,根据所述选择信息使能关联的选择位运行,并通过所述关联的选择位将页表缓冲标签位输出至下述比较器;
比较器,用于对所述页表缓冲标签位的VPN比较位和表项缓存中的VPN比较位分别进行运算确定最终的表项缓存;先对所述表项缓存中的VPN做比较运算生成一个比较结果,再对所述页表缓冲标签位的VPN比较位做比较运算生成另一个比较结果,之后将两个比较结果进行对比,确定最终要访问的表项缓存即最终的表项缓存;
判定模块,用于根据预置的命中线程判断所述最终的表项缓存是否命中,若所述最终的表项缓存命中,则生成物理页表实现虚拟地址到物理地址的转换。
6.根据权利要求5所述的用于提高处理器页表缓冲性能的***,其特征在于,所述判定模块还包括:若所述最终的表项缓存未命中,则在执行一个时钟周期延迟后判断所述关联的选择位是否命中;若所述关联的选择位命中,则输出物理页表并将更新表项缓存。
7.根据权利要求6所述的用于提高处理器页表缓冲性能的***,其特征在于,所述判定模块还包括:若所述关联的选择位未命中,则判断所述选择位是否已经被填满;若所述选择位已经被填满,则使用替换算法对最终的表项缓存进行替换并更新替换后的表项缓存。
8.根据权利要求5-7任一项所述的用于提高处理器页表缓冲性能的***,其特征在于,所述比较器的个数与表项缓存个数相同。
9.用于提高处理器页表缓冲性能的装置,其特征在于,所述装置包括:
存储有可执行程序代码的存储器;
与所述存储器耦合的执行器;
所述执行器调用所述存储器中存储的所述可执行程序代码,执行如权利要求1-4任一项所述的用于提高处理器页表缓冲性能的方法。
10.一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机指令,所述计算机指令被调用时,用于执行如权利要求1-4任一项所述的用于提高处理器页表缓冲性能的方法。
CN202210088637.5A 2022-01-26 2022-01-26 一种用于提高处理器页表缓冲性能的方法及*** Active CN114116540B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210088637.5A CN114116540B (zh) 2022-01-26 2022-01-26 一种用于提高处理器页表缓冲性能的方法及***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210088637.5A CN114116540B (zh) 2022-01-26 2022-01-26 一种用于提高处理器页表缓冲性能的方法及***

Publications (2)

Publication Number Publication Date
CN114116540A CN114116540A (zh) 2022-03-01
CN114116540B true CN114116540B (zh) 2022-04-12

Family

ID=80361106

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210088637.5A Active CN114116540B (zh) 2022-01-26 2022-01-26 一种用于提高处理器页表缓冲性能的方法及***

Country Status (1)

Country Link
CN (1) CN114116540B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5860145A (en) * 1994-09-28 1999-01-12 Kabushiki Kaisha Toshiba Address translation device storage last address translation in register separate from TLB
CN104731720A (zh) * 2014-12-30 2015-06-24 杭州中天微***有限公司 组相连的二级内存管理装置
CN104794069A (zh) * 2015-04-01 2015-07-22 北京创毅视讯科技有限公司 一种cpu中缓存的用户态分配方法和***
CN106560798A (zh) * 2015-09-30 2017-04-12 杭州华为数字技术有限公司 一种内存访问方法、装置及计算机***
CN107766259A (zh) * 2016-08-23 2018-03-06 华为技术有限公司 页表缓存的访问方法、页表缓存、处理器芯片和存储单元

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8156309B2 (en) * 2007-10-18 2012-04-10 Cisco Technology, Inc. Translation look-aside buffer with variable page sizes
CN102662860B (zh) * 2012-03-15 2015-07-01 天津国芯科技有限公司 用于进程切换的旁路转换缓冲器(tlb)及在其中地址匹配的方法
CN102866957B (zh) * 2012-07-31 2014-07-30 中国人民解放军国防科学技术大学 面向多核多线程微处理器的虚拟活跃页缓冲方法及装置
US9405702B2 (en) * 2014-11-14 2016-08-02 Cavium, Inc. Caching TLB translations using a unified page table walker cache

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5860145A (en) * 1994-09-28 1999-01-12 Kabushiki Kaisha Toshiba Address translation device storage last address translation in register separate from TLB
CN104731720A (zh) * 2014-12-30 2015-06-24 杭州中天微***有限公司 组相连的二级内存管理装置
CN104794069A (zh) * 2015-04-01 2015-07-22 北京创毅视讯科技有限公司 一种cpu中缓存的用户态分配方法和***
CN106560798A (zh) * 2015-09-30 2017-04-12 杭州华为数字技术有限公司 一种内存访问方法、装置及计算机***
CN107766259A (zh) * 2016-08-23 2018-03-06 华为技术有限公司 页表缓存的访问方法、页表缓存、处理器芯片和存储单元

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于Rocket处理器的标签缓存设计;付霄飞;《中国优秀硕士学位论文全文数据库 信息科技辑》;20200215;I137-52 *

Also Published As

Publication number Publication date
CN114116540A (zh) 2022-03-01

Similar Documents

Publication Publication Date Title
US7694077B2 (en) Multi-port integrated cache
JP4129458B2 (ja) メモリ管理を改良するための方法、メモリ管理機構及びコンピュータ・プログラム
CN102110058B (zh) 一种低缺失率、低缺失惩罚的缓存方法和装置
US6625715B1 (en) System and method for translation buffer accommodating multiple page sizes
US6138225A (en) Address translation system having first and second translation look aside buffers
US6014732A (en) Cache memory with reduced access time
US6356990B1 (en) Set-associative cache memory having a built-in set prediction array
JP4920378B2 (ja) 情報処理装置およびデータ検索方法
CN108459975B (zh) 用于有效使用地址转换缓存的技术
CN110874332B (zh) 内存管理单元及其管理方法
JP5622155B2 (ja) キャッシュメモリおよびその制御方法
US20070005933A1 (en) Preventing multiple translation lookaside buffer accesses for a same page in memory
JPH08101797A (ja) 変換索引バッファ
JPH09288578A (ja) 命令取り出し方法および装置
JP2009512943A (ja) 多階層の変換索引緩衝機構(TLBs)フィールドの更新
US11216371B2 (en) Cache memory and method for controlling the same
US20100100684A1 (en) Set associative cache apparatus, set associative cache method and processor system
US20140289475A1 (en) Cache memory device, information processing device, and cache memory control method
US20170337133A1 (en) Cache entry replacement
US7024536B2 (en) Translation look-aside buffer for improving performance and reducing power consumption of a memory and memory management method using the same
WO2011151944A1 (ja) キャッシュメモリ装置、プログラム変換装置、キャッシュメモリ制御方法及びプログラム変換方法
CN107291630B (zh) 一种高速缓冲存储器处理方法及装置
CN114116540B (zh) 一种用于提高处理器页表缓冲性能的方法及***
JPH10340226A (ja) 連想記憶方式のキャッシュメモリ
US20200110610A1 (en) Apparatus and method for providing decoded instructions

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant