转换后备缓冲器制造技术

技术编号:14077471 阅读:142 留言:0更新日期:2016-11-30 13:14
转换后备缓冲器(TLB)。公开的实施方式涉及用于支持虚拟化和多线程的转换后备缓冲器的装置、系统和方法。公开的实施方式涉及包括具有可变页大小条目的内容可寻址存储器(CAM)和具有固定页大小条目的组相联存储器的TLB。CAM可包括:逻辑上连续的第一组条目位置,其中,所述第一组包括多个子组,每个子组包括供对应的虚拟处理元件(VPE)的排他使用的逻辑上连续的条目位置;不同于所述第一组的逻辑上连续的第二组条目位置,其中,所述第二组中的条目位置可在可用VPE之间共享。组相联存储器可包括不同于第一组和第二组条目位置的在可用VPE之间共享的逻辑上连续的第三组条目位置。

【技术实现步骤摘要】

这里公开的主题总体涉及处理器,更具体地,涉及使用转换后备缓冲器(translation lookaside buffer)的存储器管理。
技术介绍
计算机系统上的存储器管理单元(MMU)可将虚拟地址空间映射到物理地址空间。虚拟地址空间表示对进程可用的逻辑或虚拟地址的集合。例如,虚拟地址空间可划分为页,虚拟地址可由虚拟页号(例如,虚拟地址的一些最高有效位)和页内的偏移(例如,虚拟地址的其余最低有效位)表示。MMU可维持将虚拟页号与物理页号关联的页表。通过使用虚拟页号作为索引查找页表条目,MMU可获得对应的物理页号,物理页号能与偏移组合以获得物理地址。为了加速页表查找,例如可使用相联高速缓存对一些页表条目进行高速缓存。保持页表条目的相联高速缓存称为转换后备缓冲器(TLB)。例如,可基于之前、当前或期望的存储器访问模式更新TLB中的页表条目。现代处理器经常提供硬件支持虚拟化和/或多线程。虚拟化是指为称作“客户”的程序创建诸如虚拟处理器的模拟环境。例如,单个处理器核(主机)可对于客户看起来是多个处理器核。多个处理器核称为虚拟核或虚拟处理元件(VPE)。通过hypervisor(系统管理程序)来便利虚拟化,hypervisor通过管理特权资源并且为各客户定义资源访问和利用策略来提供信任执行环境。hypervisor还管理子系统的存储器和I/O特权。多线程是指代码段在单个处理器核上并行执行,以改进总体吞吐量。例如,可在线程之间共享诸如处理器周期的硬件资源,使得一个线程可继续执行,而另一个已经停止,从而改进总体利用率和吞吐量。虚拟化和/或多线程的使用可便利硬件资源的高效使用,降低成本,并且减少相对于使用多个物理处理器核的功耗。因此,一些现代处理器可支持虚拟化和多线程二者。然而,多线程和/或虚拟化的使用经常造成诸如高速缓存或TLB的资源的低效使
用,这然后会成为使性能劣化的瓶颈。因此,一些公开的实施方式提出在各种上下文中用于TLB使用的有效技术。
技术实现思路
公开的实施方式涉及一种物理转换后备缓冲器(TLB),包括:具有可变页大小条目的物理内容可寻址存储器。在一些实施方式中,内容可寻址存储器可包括:逻辑上连续的第一组条目位置,其中,所述第一组包括多个子组,所述第一组中的每个子组包括供多个可用虚拟处理元件(VPE)中的对应VPE的排他使用的逻辑上连续的条目位置,以及不同于所述第一组的逻辑上连续的第二组条目位置,其中,所述第二组中的条目位置在所述可用VPE之间共享。在一些实施方式中,TLB还可包括:具有固定页大小条目的物理组相联存储器,所述组相联存储器包括不同于所述第一组条目位置和所述第二组条目位置的逻辑上连续的第三组条目位置,其中,所述第三组条目位置在所述可用VPE之间共享。在另一个方面,公开的实施方式涉及一种可配置为支持多个可用虚拟处理元件(VPE)的处理器,其中所述处理器可包括存储器管理单元(MMU)。在一些实施方式中,MMU可包括物理转换后备缓冲器(TLB)。TLB还可包括具有可变页大小条目的物理内容可寻址存储器,其中,第一内容可寻址存储器包括:逻辑上连续的第一组条目位置,其中,所述第一组包括多个子组,所述第一组中的每个子组包括供所述多个可用虚拟处理元件(VPE)中的对应VPE的排他使用的逻辑上连续的条目位置,以及不同于所述第一组的逻辑上连续的第二组条目位置,其中,所述第二组中的条目位置在所述可用VPE之间共享。在一些实施方式中,TLB还可包括:具有固定页大小条目的物理组相联存储器,所述组相联存储器包括不同于第一组条目位置和第二组条目位置的逻辑上连续的第三组条目位置,其中,所述第三组条目位置在所述可用VPE之间共享。在又一个方面,一种非瞬时性计算机可读介质可包括用于描述物理转换后备缓冲器(TLB)的可执行指令,其中TLB可包括具有可变页大小条目的物理内容可寻址存储器,其中,第一内容可寻址存储器包括:逻辑上连续的第一组条目位置,其中,所述第一组包括多个子组,所述第一组中的每个子组包括供所述多个可用虚拟处理元件(VPE)中的对应VPE的排他使用的逻辑上连续的条目位置,以及不同于所述第
一组的逻辑上连续的第二组条目位置,其中,所述第二组中的条目位置在所述可用VPE之间共享。在一些实施方式中,所述指令描述的TLB还可包括:具有固定页大小条目的物理组相联存储器,所述组相联存储器包括不同于第一组条目位置和第二组条目位置的逻辑上连续的第三组条目位置,其中,所述第三组条目位置在所述可用VPE之间共享。公开还涉及实施描述实施方式的指令的电路、处理器、装置、系统和计算机可读介质。在一些实施方式中,计算机可读介质可包括描述与公开的实施方式一致的处理器、MMU和/或TLB的指令。例如,可用诸如VHDL、Verilog的硬件描述语言或任何其它硬件描述语言提供描述。附图说明图1示出例示包括能够执行包括数学、逻辑和存储器管理操作的各种操作的处理器的计算机系统的特定示例性特征的简化示意框图。图2示出例示按照与公开的实施方式一致的方式在多个线程/VPE之间示例性划分和分配TLB的框图。图3示出TLB中的条目的表,例示按照与公开的实施方式一致的方式的、TLB条目在固定页大小TLB(FTLB)与可变页大小(VTLB)之间的示例分配。图4示出TLB中的条目的表,例示按照与公开的实施方式一致的方式的、针对多线程环境的、TLB条目在FTLB与VTLB之间的示例分配。图5示出例示线程/VPE使用的TLB条目号与对应的逻辑条目号之间的示例性映射的表。图6示出具有分布在根与客户之间的条目的示例性私有VTLB。图7示出例示按照与公开的实施方式一致的方式的虚拟地址到物理地址的转换的框图。具体实施方式下面结合附图阐述的详细描述意图作为一些示例性非限制实施方式的描述,各种其它实施方式可被实践并且被设想,如本领域技术人员将显而易见的。提供描述的实施方式,仅作为本公开的示例或说明。详细描述包括用于提供本公开的透彻理解的目
的的具体细节。然而,对于本领域技术人员而言,明显的是,本公开可在没有这些具体细节中的一个或多个的情况下实践。在一些例子中,公知结构和设备没有以框图示出,以便避免模糊本公开的概念。首字母缩略语和其它描述性术语可仅仅为了方便和清楚而使用,并不意图限制公开的范围。通常,可使用硬件、固件和软件的一些组合实现公开的实施方式。另外,在一些实施方式中,计算机可读介质可包括描述与公开的实施方式一致的处理器和/或FPU、和/或MMU和/或TLB的指令。例如,可用诸如VHDL、Verilog的硬件描述语言或任何其它硬件描述语言提供描述。图1示出例示包括能够执行包括数学、逻辑和存储器管理操作的各种操作的处理器110的计算机系统100的特定示例性特征的简化示意框图。如图1所示,计算机系统100还可包括输入-输出(I/O)设备150,诸如键盘、鼠标、触摸屏、笔、显示器、扬声器、传感器、多媒体设备、打印机等。处理器110、I/O设备150和其它系统组件可使用总线180连接。存储器130-1也可连接到总线180。存储器130-1可存储操作系统160和在计算机系统100的操作期间可加载到存储器130-2中的应用软件170本文档来自技高网
...
转换后备缓冲器

【技术保护点】
一种物理转换后备缓冲器(TLB),所述物理转换后备缓冲器(TLB)包括:具有可变页大小条目的物理内容可寻址存储器,其中,所述内容可寻址存储器包括:逻辑上连续的第一组条目位置,其中,所述第一组包括多个子组,所述第一组中的每个子组包括供多个可用虚拟处理元件(VPE)中的对应VPE的排他使用的逻辑上连续的条目位置,以及不同于所述第一组的逻辑上连续的第二组条目位置,其中,所述第二组中的条目位置在所述可用VPE之间共享;以及具有固定页大小条目的物理组相联存储器,所述组相联存储器包括不同于所述第一组条目位置和所述第二组条目位置的逻辑上连续的第三组条目位置,其中,所述第三组条目位置在所述可用VPE之间共享。

【技术特征摘要】
2015.05.18 US 14/715,1171.一种物理转换后备缓冲器(TLB),所述物理转换后备缓冲器(TLB)包括:具有可变页大小条目的物理内容可寻址存储器,其中,所述内容可寻址存储器包括:逻辑上连续的第一组条目位置,其中,所述第一组包括多个子组,所述第一组中的每个子组包括供多个可用虚拟处理元件(VPE)中的对应VPE的排他使用的逻辑上连续的条目位置,以及不同于所述第一组的逻辑上连续的第二组条目位置,其中,所述第二组中的条目位置在所述可用VPE之间共享;以及具有固定页大小条目的物理组相联存储器,所述组相联存储器包括不同于所述第一组条目位置和所述第二组条目位置的逻辑上连续的第三组条目位置,其中,所述第三组条目位置在所述可用VPE之间共享。2.权利要求1所述的TLB,其中,所述TLB能够同时在具有可变页大小条目的所述内容可寻址存储器和具有固定页大小条目的所述组相联存储器中查找TLB查找请求。3.权利要求1或2所述的TLB,其中,条目位置的每个子组包括:供与对应于该子组的VPE关联的根进程的排他使用的逻辑上连续的第一组条目。4.权利要求3所述的TLB,其中,条目位置的每个子组还包括:供在对应于该子组的VPE上运行的客户进程的排他使用的、不同于连续的所述第一组条目的逻辑上连续的第二组条目。5.权利要求4所述的TLB,其中,条目位置的每个子组还包括:不同于所述第一组和所述第二组的逻辑上连续的第三组条目,其中,所述第三组在所述根进程与所述客户进程之间共享。6.权利要求4或5所述的TLB,其中:每个子组中的逻辑上连续的条目被顺序编号并且:逻辑上连续的所述第一组条目通过以顺序升序将第一子组中最低编号的TLB条目映射到所述根进程使用的最低编号的条目索引以寻址所述TLB条目而被分
\t配给所述根进程,并且逻辑上连续的所述第二组条目通过以顺序降序将第一子组中最高编号的TLB条目映射到所述客户进程使用的最低编号的条目索引以寻址所述TLB条目而被分配给所述客户进程。7.权利要求4或5所述的TLB,其中:每个子组中的逻辑上连续的条目被顺序编号并且:逻辑上连续的所述第一组条目通过以顺序降序将第一子组中最高编号的TLB条目映射到所述根进程使用的最低编号的条目索引以寻址所述TLB条目而被分配给所述根进程,并且逻辑上连续的所述第二组条目通过以顺序升序将第一子组中最低编号的TLB条目映射到所述客户进程使用的最低编号的条目索引以寻址所述TLB条目而被分配给所述客户进程。8.权利要求5所述的TLB,其中:所述第三组中的条目是根据与对应于该子组的VPE关联的替换策略管理的。9.一种可配置为支持...

【专利技术属性】
技术研发人员:R·J·罗扎里奥S·帕特尔
申请(专利权)人:想象技术有限公司
类型:发明
国别省市:英国;GB

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

1