当前位置: 首页 > 专利查询>英特尔公司专利>正文

对于页漏失处理程序的并行控制制造技术

技术编号:11413381 阅读:50 留言:0更新日期:2015-05-06 13:07
在一个实施例中,页漏失处理程序包括分页缓存和接收第一线性地址部分并从分页结构获取物理地址的对应的部分的第一步行器,与第一步行器并行地操作的第二步行器,以及响应于第一线性地址部分匹配被第二步行器访问的并行分页结构的对应的线性地址部分,防止第一步行器将获取的物理地址部分存储到分页缓存的逻辑。描述并要求保护其他实施例。

【技术实现步骤摘要】
【国外来华专利技术】对于页漏失处理程序的并行控制
技术介绍
在现代的计算机系统中,处理器对各种数据执行指令。可以从系统存储器中获取指令和数据。为访问系统存储器,使用物理地址。然而,软件不直接提供物理地址供处理器使用。相反,处理器的硬件用于将从软件接收到的线性地址转换为物理地址。在某些处理器中,可以有基于处理器的结构以存储频繁地使用的或最近使用的转换以减少延迟。然而,有所谓的漏失是不可避免的,其中:在处理器中不存在被请求的线性地址和对应的物理地址之间的转换。相应地,对系统管理执行页面步行过程,以获取转换,如此,提供合适的物理地址。尽管存在这样的机制,但是,页面步行过程相对来说费时,如此,增大了存储器访问的延迟。附图简述图1是根据本专利技术的一实施例的页漏失处理程序的框图。图2是根据本专利技术的一实施例的用于执行页面行走的方法的流程图。图3是根据本专利技术的一个实施例的由页漏失处理程序执行的线性地址转换。图4是根据本专利技术的一个实施例的处理器核的框图。图5是根据本专利技术的一个实施例的处理器核的框图。图6是根据本专利技术另一实施例的多域处理器的框图。图7是包括多个核的处理器的一个实施例的框图。图8是根据本专利技术一实施例的系统的框图。详细描述在各实施例中,提供了允许页漏失处理程序(PMH)的多个步行器(walker)并行地执行一组分页结构各自的步行以获取从线性地址到物理地址的转换的技术。此外,实施例可以提供一种逻辑,如果一个并行步行器处于访问至少部分地重叠正在由并行步行器中的另一个转换的线性地址的线性地址的信息的过程中,则该逻辑防止并行步行器中的一个或多个将条目存储在用于特定转换的分页缓存中。换言之,此处所描述的缓存写入禁用用于确保在给定分页缓存中不存在具有相同数据的多个路。尽管此处所描述的各实施例在页漏失处理程序本身内提供这样的逻辑,但是,可以理解,本专利技术的范围在这方面不受限制,在其他实施例中,在实现此处所描述的并行步行器保护时,可以使用其他硬件、软件和/或固件。根据本专利技术的一个实施例的处理器可以根据多个分页模式中的一个配置。无论如何,在每一种模式下,处理器用于使用分层分页结构,将线性地址转换为对应于系统存储器中的一位置的物理地址。在各实施例中,当处理器中不存在转换时,例如,在转换后援缓冲器内,处理器的PMH可以执行获取转换的过程。一般而言,PMH使用线性地址的上部部分来标识分页结构条目的系列。这些条目中的最后一个标识线性地址被转换到的区域的物理地址(叫做页帧)。线性地址的下部部分(叫做页面偏移)标识线性地址转换到的该区域内的特定地址。每一个分页结构条目都包含物理地址,该物理地址是另一分页结构的地址或页帧的地址。在第一种情况下,条目引用其他分页结构;在后一种情况下,条目映射到页面。第一分页结构位于存储在诸如CR3寄存器之类的配置寄存器中的物理地址处。使用下列迭代过程,转换线性地址。线性地址的一部分(最初,最上面的比特)用于获取分页结构中的一个条目(最初,使用存储在CR3寄存器中的值定位的那一个)。如果该条目引用另一分页结构,则过程继续该分页结构,以及下面的刚刚使用的线性地址的另一部分。如果相反条目映射到一页面,则过程完成。在此情况下,条目中的物理地址是页帧的物理地址,线性地址的剩余的下部部分是页帧内的页面偏移。现在参见图1,所示出的是根据本专利技术的一实施例的页漏失处理程序的框图。页漏失处理程序可以位于处理器的存储器执行单元(MEU)内。当在诸如转换后援缓冲器(TLB)之类的处理器的另一结构中不存在从线性地址到物理地址的转换时,此处理程序可以被用来执行从线性地址到物理地址的转换。如图1所示,PMH10可以包括多个构成组件,并可以被配置成接收传入的线性地址(LA)和线程标识符(线程ID),以及额外的请求信息,这些请求信息可以包括,例如,有关与转换相关联的微操作(uop)的特定信息。此信息可以包括操作码、重新排序缓冲标识符、请求类型(例如,加载、存储,或预取),以及指出uop是要被隐退的下一操作的隐退标志。注意,响应于TLB或存储转换信息的其他缓存结构中的漏失,可以接收此传入的信息。如此,当到位于系统存储器中的物理地址的转换由于某种原因对处理器不可用时,处理器逻辑可以向PMH发送线性地址(或至少其经过转换的部分),以及线程ID,该线程ID对应于与对对应于线性地址的存储器访问请求相关联的线程的标识符。仍参考图1,PMH10包括各种结构。可以看出,可以存在多个步行器,即,步行器201-20n(一般地,步行器20)。在不同的实施例中,步行器的数量有变化。在某些实现中,可以存在两个步行器,而在其他实现中,可以存在更大数量的步行器。步行器可以并行地执行以对于不同的传入的线性地址执行页面行走。在某些实施例中,可以存在输入缓冲器(在图1中为便于说明,未示出),以当步行器不可用时存储传入的线性地址和线程ID。也如图1所示出的,并行步行器逻辑30可以耦合到步行器20。一般而言,并行步行器逻辑30可以操作,以控制由步行器执行的页面步行,以确保正在被执行的多个并行页面步行不会导致相同数据存储在缓存结构的不同条目中,因为这可以会导致逻辑和/或电气问题。下面将进一步描述关于并行步行器逻辑30的进一步的细节。仍参考图1,可以存在多个分页缓存401-40n。注意,取决于处理器的分页模式和配置,这样的缓存的数量可能会变化。也在其他实施例中,这些分页缓存可能不存在,或在某些操作模式下,可以不使用这些分页缓存。一般而言,每一个分页缓存都被配置成存储若干个条目,每一个分页缓存都与存储器中的不同的分页结构相关联,以如此允许更快速的转换操作。在PMH中还存在额外的结构。具体地,如图1的实施例所示,可以使用共享控制逻辑70来控制PMH的操作,包括由步行器执行的页面步行。还可以存在除分页缓存之外的其他存储。在所示出的实现中,存在一个或多个控制寄存器50。在一个实施例中,这些寄存器可以包括CR3寄存器,该CR3寄存器存储表示存储器中的开始分页结构的地址,步行将在该开始分页结构处开始。还可以存在其他控制或配置寄存器,诸如CR0、CR4,扩展的特征启用寄存器长模式寻址寄存器(EFER-LMA)、扩展的页面表指针(EPTP)寄存器,等等。还可以存在其他存储器,包括状态存储。在所示出的实施例中,可以存在多个状态寄存器60,一个或多个与给定分页缓存相关联。在一个实施例中,这些状态存储可以存储关于缓存的某些信息。更进一步,这些缓存可以包括用于每一个步行器的字段(基于每个缓存地),以存储指出特定步行器是否被允许将来自分页结构的被访问的信息存储到对应的分页缓存中的指示符,如下文所描述的。注意,虽然被示为物理地(并且逻辑地)分离的结构,但是,可以理解,每一个步行器都可以构成各种硬件,诸如寄存器、控制逻辑等等。PMH10可以耦合到包括各种分页结构的系统存储器。取决于由处理器实现的分页模式,这样的结构的数量和大小会变化。下面将进一步描述关于代表性的分页结构层次结构的进一步的细节。当通过页面步行执行完整的转换时,可以从PMH输出物理地址(PA)和对应的属性及与物理地址相关联的其他状态信息。作为一个这样的示例,可以向TLB提供此输出信息,用于存储在TLB的一个条目中,以提供线性地址-物理地址转换,以便被处理器更快地访本文档来自技高网...
对于页漏失处理程序的并行控制

【技术保护点】
一种处理器,包括:执行指令的至少一个执行单元;以及页漏失处理装置,所述页漏失处理装置包括多个分页缓存,以及接收第一线性地址的至少一部分并从存储在系统存储器中的一个或多个分页结构获取物理地址的对应的部分的第一walker,与所述第一步行器并行地操作的第二步行器,以及用于响应于所述第一线性地址部分匹配所述第二步行器访问的并行分页结构的对应的线性地址部分,防止所述第一步行器将所述获得的物理地址部分存储在所述分页缓存中的一个中的并行步行器装置。

【技术特征摘要】
【国外来华专利技术】2012.09.13 US 13/613,7771.一种处理器,包括:至少一个执行单元,用于执行指令;以及页漏失处理装置,所述页漏失处理装置包括:多个分页缓存;第一步行器,用于接收第一线性地址的至少一部分,并从存储在系统存储器中的一个或多个分页结构获取物理地址的对应的部分;第二步行器,与所述第一步行器并行地操作;以及并行步行器装置,用于响应于所述第一线性地址部分匹配由所述第二步行器进行的并行分页结构访问的对应的线性地址部分,防止所述第一步行器将所获得的物理地址部分存储在所述分页缓存中的一个中,其中,所述第一步行器用于使用所述第一线性地址部分的第一段和控制寄存器的值来访问第一分页结构,并且基于与所述第一步行器相关联的状态寄存器的第一字段的状态,将来自所述第一分页结构的第一访问的条目存储在第一分页缓存中,并且用于使用所述第一访问的条目和所述第一线性地址部分的第二段来访问第二分页结构,并且基于与所述第一步行器相关联的所述状态寄存器的第二字段的状态,将来自所述第二分页结构的第二访问的条目存储在第二分页缓存中。2.如权利要求1所述的处理器,其特征在于,所述并行步行器装置用于允许由所述第二步行器获取的物理地址部分存储在所述分页缓存中的一个中。3.如权利要求2所述的处理器,其特征在于,当与所述第一线性地址相关联的线程标识符不匹配与由所述第二步行器进行的所述并行分页结构访问的所述对应的线性地址部分的相关联的线程标识符时,所述并行步行器装置用于允许所述第一步行器将所获取的物理地址部分存储在所述分页缓存中的一个中。4.如权利要求1或2所述的处理器,其特征在于,当与所述第一线性地址相关联的线程标识符匹配与由所述第二步行器进行的所述并行分页结构访问的所述对应的线性地址部分相关联的线程标识符时,所述并行步行器装置用于防止所述第一步行器将所获取的物理地址部分存储在所述分页缓存中的一个中。5.如权利要求1、2或3所述的处理器,其特征在于,所述页漏失处理装置包括与第一分页缓存相关联的状态寄存器,所述状态寄存器包括多个字段,每一个字段都指出对应的步行器是否被允许将所获取的物理地址部分存储在所述第一分页缓存中。6.如权利要求5所述的处理器,其特征在于,当所述第一线性地址部分不匹配任何并行分页结构访问的线性地址部分时,所述并行步行器装置用于设置所述状态寄存器的第一字段以指出所述第一步行器被允许存储所获取的物理地址部分。7.如权利要求6所述的处理器,其特征在于,当所述第一字段被设置时,所述第一步行器将直接把所获取的物理地址部分存储在所述第一分页缓存中,当所述第一字段未设置时,阻止所述第一步行器将所获取的物理地址部分存储在所述第一分页缓存中。8.如权利要求1、2或3所述的处理器,其特征在于,所述并行步行器装置将设置所述状态寄存器的多个字段,每一个字段都指出所述多个步行器的对应的步行器是否被允许将所获取的物理地址部分存储在第一分页缓存中。9.一种用于处理页漏失的方法,包括:初始化处理器的页漏失处理程序的第一步行器以执行页面行走,从而确定线性地址的物理地址;以及如果所述页漏失处理程序的另一个步行器不对于所述线性地址并行地执行页面行走,则设置与所述第一步行器相关联的状态寄存器的第一字段中的第一状态指示符以指示所述第一步行器被允许将所获取的物理地址的一部分存储在第一分页缓存的一个条目中,否则,设置所述第一状态指示符以指示所述第一步行器不被允许存储所获取的物理地址部分,所述状态寄存器包括各自都与所述页漏失处理程序的多个...

【专利技术属性】
技术研发人员:G·希尔德什姆C·K·谭R·S·查普尔R·巴蒂亚
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国;US

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

1