基于索引的虚拟寻址的方法和设备技术

技术编号:15778409 阅读:140 留言:0更新日期:2017-07-08 18:16
一种设备,其包括用于存储路由表的存储器以及耦接到所述存储器的处理器,所述处理器用于:生成对某一例项中至少一个区段进行存取的请求;基于所述例项而将一个索引指派给所述请求;基于所述索引而在所述路由表中查找表项,其中所述表项包含资源位向量;以及基于所述资源位向量来识别包含所述例项中所述区段中至少一部分的资源。

【技术实现步骤摘要】
【国外来华专利技术】基于索引的虚拟寻址的方法和设备相关申请案的交叉参考本专利技术要求2012年7月3日由何玉兰(HoYuLam)等人递交的专利技术名称为“基于索引的虚拟寻址的方法和设备(MethodandApparatusforIndex-BasedVirtualAddressing)”的第13/541,287号美国非临时专利申请案的在先申请优先权,该在先申请要求2011年7月6日由何玉兰(HoYuLam)等人递交的专利技术名称为“实现基于索引的负载平衡的方法和设备(MethodandApparatusforAchievingIndex-BasedLoadBalancing)”的第61/504,827号美国临时专利申请案的在先申请优先权,这两个在先申请的内容均以引入的方式并入本文本中,如全文再现一般。关于由联邦政府赞助的研究或开发的声明不适用。参考缩微胶片附录不适用。

技术介绍
在现代处理器系统中,硬件(例如,存储器)的物理地址通常可以映射或转译为虚拟地址,反之亦然。该过程可以在处理器中实施并且可以称为虚拟寻址(virtualaddressing)。具备虚拟寻址能力的处理器可以利用可能位于不同芯片上的各种资源,例如逻辑单元和/或内存空间。在实践中,可能需要解决各种问题。例如,资源(例如,存储器)的规模可能有限,因此数据结构(例如,大型查找表)可能无法存储在单个资源中而是可能需要在多个资源中划分。此外,该存储器的尺寸可能无法无限扩大,因为当存储器大小超过某一阈值时内存延迟(memorylatency)会增加且吞吐量会下降。因此,需要开发可以在处理器系统的配置中提供高性能和灵活性的虚拟寻址方案。
技术实现思路
在一个实施例中,本专利技术包括一种设备,所述设备包括用于存储路由表的存储器以及耦接到所述存储器的处理器,所述处理器用于:生成对某一例项中至少一个区段进行存取的请求;基于所述例项而将索引指派给所述请求;基于所述索引而在路由表中查找表项,其中所述表项包含资源位向量;以及基于所述资源位向量来识别包含所述例项中所述区段中至少一部分的资源。在另一个实施例中,本专利技术包括一种方法,所述方法包括:生成对某一例项中至少一个区段进行存取的请求;基于所述例项而将索引指派给所述请求;基于所述索引而在路由表中查找表项,其中所述表项包含资源位向量;以及基于所述资源位向量来识别出包含所述例项中所述区段中至少一部分的资源。在又一实施例中,本专利技术包括一种设备,所述设备包含一种资源,所述资源包含多个特征例项寄存器(FIR),所述资源用于:接收对某一例项中至少一部分进行存取的请求;基于所述例项中所述至少一部分中的第一区段来处理所述请求以提供中间结果;确定存储在FIR中的资源标识(ID),其中所述资源ID识别出包含所述例项中所述至少一部分中第二区段的第二资源;以及将所述请求和所述中间结果发送到所述第二资源。从结合附图和所附权利要求书进行的以下详细描述将更清楚地理解这些和其它特征。附图说明为了更完整地理解本专利技术,现在参考以下结合附图和详细描述进行的简要描述,其中相同参考标号表示相同部分。图1是处理器系统的一个实施例的示意图。图2是虚拟寻址方案的一个实施例的示意图。图3是路由表表项的一个实施例的示意图。图4是没有例项划分的寻址方案的一个实施例的示意图。图5是带有例项划分的寻址方案的一个实施例的示意图。图6是在i值(i-value)等于4时的寻址方案的一个实施例的示意图。图7是基于索引的寻址方法的一个实施例的流程图。图8是链接法(chainingmethod)的一个实施例的流程图。图9是网络单元的一个实施例的示意图。图10是通用计算机系统的示意图。具体实施方式最初应理解,尽管下文提供一个或一个以上实施例的说明性实施方案,但可使用任何数目的技术,不管是当前已知还是现有的,来实施所揭示的系统和/或方法。本专利技术决不应限于下文所说明的所述说明性实施方案、图式和技术,包含本文所说明并描述的示范性设计和实施方案,而是可在所附权利要求书的范围以及其均等物的完整范围内修改。在处理器系统中,处理器可以生成各种请求,这些请求可以是对由多个资源所提供的特征的各种例项进行存取的消息。例项(或特征例项)可以指任一类型的数据结构,例如线性表、哈希表(hashtable)、查找树、链表(linked-list)、路由表(RT)等。资源可以用于存储一个或多个例项和/或提供对这些例项进行存取和管理的额外特征,例如决策逻辑单元。在当前的处理器设计中,转译后备缓冲器(TLB)通常用于使用虚拟地址的计算机系统中,例如笔记本、台式机和服务器等。TLB可以是内存管理硬件用来提高虚拟地址转译速度的高速缓存器。在使用中,可以向TLB提供搜寻键字来作为虚拟地址。如果在TLB中存在该虚拟地址,那么可以快速检索和存取物理地址,这可以称为TLB命中(hit)。如果TLB中不存在该虚拟地址,这可以称为TLB未中(miss),那么物理地址可以在页面查核行程(pagewalk)中查找。页面查核行程会涉及对各个内存区的内容进行读取并且将它们用于计算物理地址,这会是一个昂贵的过程。在页面查核行程确定物理地址之后,可以将虚拟地址到物理地址的映射输入到TLB中,这样它可以用于下一搜寻过程。常规寻址方案,例如TLB,可能具有潜在的限制和/或问题。例如,某一资源可能不具有足够的剩余存储空间来容纳相对较大的数据结构,因此可能需要额外的资源。由于一些常规的寻址方案可能将数据结构映射到单个物理资源,因此数据结构的某些表项可能不能被请求来存取。在另一个实例中,搜寻请求等请求会涉及多个例项表项(例如,在不同的资源中),因此可能需要大量的计算步骤。在这种情况下,大量的请求和响应可能需要在处理器与资源之间来来回回,这样会增加内存延迟并且降低计算效率。在又一实例中,有时可以将额外的资源添加到现有系统中,或可以在多个资源中重新分配多个例项,在这种情况下某一请求可能需要相应地进行修改以适应资源的新配置,这可能较为繁琐。本文所揭示的是用于在处理器系统中进行基于索引的虚拟寻址的系统和方法。通过在处理器中使用路由表,由处理器生成的请求可以对存储在多个可用资源中的一者或多者中的任一例项进行存取。必要时,某一例项可以在资源中灵活地进行划分。资源的物理分配和例项的划分对于该请求而言可以是透明的。为了促成虚拟寻址,该请求可以被指派以一个路由表索引以识别路由表中的某一表项,所述表项可以对应于一个例项标识(ID)。所述路由表也可以含有资源位向量,所述资源位向量可以用不同的方式进行配置,这取决于与所述请求对应的例项是否被划分。例如,如果对应的例项未被划分,那么所述资源位向量可以直接包括可以指定目标资源的资源ID。否则,如果相应的例项被划分到不同区段中,那么所述资源位向量可以在一组位置中含有指示所参与资源的许多'1'位,所述所参与资源可以被定位并且被映射到。此外,如果所述请求在存取一个以上资源,那么可以使用链接来将所述请求路由到下一跳资源,这可能取决于在当前资源中获得的中间结果。通过使用所揭示的寻址方案,可以在处理器系统的配置中提高性能(例如,关于内存延迟)并且获得更大的灵活性。图1所示为处理器系统100的一个实施例的示意图,其包括经由互连160而连接到m个资源120-150的源本文档来自技高网
...
基于索引的虚拟寻址的方法和设备

【技术保护点】
一种基于索引的虚拟寻址的设备,其包括:存储器,所述存储器用于存储路由表;以及处理器,所述处理器耦接到所述存储器,所述处理器用于:生成对某一例项中至少一个区段进行存取的请求;基于所述例项而将一个索引指派给所述请求;基于所述索引而在所述路由表中查找表项,其中所述表项包含资源位向量;以及基于所述资源位向量来识别包含所述例项中所述区段中至少一部分的资源;其中所述处理器进一步用于基于所述请求而生成一个值,并且其中所述资源进一步基于所述值;其中所述例项被划分到包含所述资源的一组资源中,其中所述资源位向量包括数量等于所述资源组中资源数量的值为'1'的位,其中所述资源位向量内值为'1'的位的位置基于所述值来确定,并且其中所述资源基于所述位置来识别。

【技术特征摘要】
【国外来华专利技术】2011.07.06 US 61/504,827;2012.07.03 US 13/541,2871.一种基于索引的虚拟寻址的设备,其包括:存储器,所述存储器用于存储路由表;以及处理器,所述处理器耦接到所述存储器,所述处理器用于:生成对某一例项中至少一个区段进行存取的请求;基于所述例项而将一个索引指派给所述请求;基于所述索引而在所述路由表中查找表项,其中所述表项包含资源位向量;以及基于所述资源位向量来识别包含所述例项中所述区段中至少一部分的资源;其中所述处理器进一步用于基于所述请求而生成一个值,并且其中所述资源进一步基于所述值;其中所述例项被划分到包含所述资源的一组资源中,其中所述资源位向量包括数量等于所述资源组中资源数量的值为'1'的位,其中所述资源位向量内值为'1'的位的位置基于所述值来确定,并且其中所述资源基于所述位置来识别。2.根据权利要求1所述的设备,其中所述请求包括标题区段,所述标题区段包括至少一个键字,并且其中所述值基于所述键字。3.根据权利要求1所述的设备,其中所述表项进一步包括例项标识(ID),并且其中所述例项ID基于所述索引来确定。4.根据权利要求3所述的设备,其中所述表项进一步包括有效性字段,其中所述资源位向量只有在所述有效性字段有效时才被考虑。5.根据权利要求1所述的设备,其中当所述值等于i,其中i是整数时,所述位置对应于从所述资源位向量中的最低有效位(LSB)算起的第i+1个值为'1'的位。6.根据权利要求1所述的设备,其中当所述值等于i,其中i是整数时,所述位置对应于从所述资源位向量中的最高有效位(MSB)算起的第i+1个值为'1'的位。7.根据权利要求2所述的设备,其中所述例项被划分到包含所述资源的一组资源中,其中所述资源位向量包括数量等于所述资源组中资源数量的值为'0'的位,其中所述资源位向量内值为'0'的位的位置基于所述值来确定,并且其中所述资源基于所述位置来识别。8.根据权利要求1所述的设备,其中所述资源位向量包括识别所述资源的资源ID。9.一种基于索引的虚拟寻址的方法,其包括:生成对某一例项中至少一个区段进行存取的请求;基于所述例项而将一个索引指派给所述请求;基于所述索引而在路由表中查找表项,其中所述表项包含资源位向量;以及基于所述资源位向量来识别包含所述例项中所述区段中至少一部分的资源;基于所述请求而生成一个值,其中所述资源进一步基于所述值;其中所述例项被划分到包含所述资源的一组资源中,其中所述资源位向量包括数量等于所述资源组中资源数量的值为'1'的位,其中所述资源位向量内值为'1'的位的位置基于所述值来确定,并且其中所述资源基于所述位置来识别。10.根据权利要求9所述的方法,其中所述请求包括标题区段,所述标题区段包括至少一个键字,并且其中所述值基于所述键字。11.根据权利要求9所述的方法,其中所述表项进一步包括例项标识(ID),并且其中所述例项ID基于所述索引来确定。12.根据权利要求11所述的方法,其中所述表项进一步包括有效性字段,其中所述资源位向量只有在所述有效性字段有效时才被考虑。13.根据权利要求9所述的方法,其中当所述值等于i,其中i是整数时,所述位置...

【专利技术属性】
技术研发人员:蓝和玉赛勒斯·库玛威廉姆·林奇
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东,44

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

1