多核架构中的资源分配的制作方法

文档序号:16326828发布日期:2018-12-19 05:58阅读:213来源:国知局
多核架构中的资源分配的制作方法

背景技术

除非本文中另有指示,本部分中描述的材料并不是针对本申请中权利要求的现有技术,并且不因包括在本部分中而被承认是现有技术。

在多核架构中,多个处理器内核可以被包括在单个集成电路管芯中或者被设置在单个芯片封装中的多个集成电路管芯上。高速缓存可以被用于存储数据,用于由处理器内核中的一个或多个访问。管芯中的资源可以被分布在两个或者更多块(tiles)上。这种资源可以包括例如被配置为保持高速缓存的一致性的目录(directory)、存储器控制器、处理器内核、高速缓存等。



技术实现要素:

在一些示例中,大致描述了用于控制器在多核架构中分配资源的方法。该方法可以包括将第一和第二资源与第一和第二资源标识符相关联。该方法可以进一步包括将第一和第二资源标识符映射到存储器中的第一和第二组地址。第一组地址可以不同于第二组地址。该方法可以进一步包括确定第一资源是至少部分不可获得的。该方法可以包括当第一资源被确定为至少部分不可获得时,将第二资源标识符映射到存储器中第一组地址的至少一个地址。该方法可以进一步包括接收对第一资源的请求。该请求标识第一组地址中的地址的特定地址。该方法可以进一步包括分析该特定地址,以确定特定资源。该方法可以进一步包括分配请求至特定资源。

在一些示例中,大致描述了用于在多核架构中分配资源的设备。该设备可以包括控制器和与控制器通信的存储器。控制器可以被配置为分别将第一和第二资源与第一和第二资源标识符相关联。控制器可以被配置为将第一和第二资源标识符映射到存储器中的第一和第二组地址。第一组地址可以不同于第二组地址。控制器可以被配置器确定第一资源是至少部分不可获得的。控制器可以被配置为当第一资源被确定为至少部分不可获得时,将第二资源标识符映射到存储器中第一组地址中的至少一个地址。控制器可以被配置为接收对第一资源的请求。该请求可以标识第一组地址中的特定地址。控制器可以被配置为分析存储器中的特定地址,以标识特定资源。控制器可以被配置为将该请求分配至该特定资源。

在一些示例中,大致描述了用于分配资源的多核架构。该架构可以包括第一资源、第二资源、被配置为与第一和第二资源通信的控制器以及被配置为与控制器通信的存储器。控制器可以被配置为将第一和第二资源与第一和第二资源标识符相关联。控制器可以被配置为将第一和第二资源标识符映射到存储器中的第一和第二组地址。第一组地址可以不同于第二组地址。控制器可以被配置器确定第一资源是至少部分不可获得的。控制器可以被配置为当第一资源被确定为至少部分不可获得时,将第二资源标识符映射到存储器中第一组地址中的至少一个地址。控制器可以被配置为接收对第一资源的请求。该请求可以标识第一组地址中的特定地址。控制器可以被配置为分析存储器中的特定地址,以确定特定资源。控制器可以被配置为将该请求分配至该特定资源。

前面的概述仅仅是示例性的,而不意在以任何方式进行限制。通过参考附图以及下面的详细说明,除了上文所描述的示例性的方案、实施例和特征之外,另外的方案、实施例和特征将变得清晰可见。

附图说明

通过下面结合附图给出的详细说明和随附的权利要求,本公开的前述特征以及其它特征将变得更加清晰。应理解的是,这些附图仅描绘了依照本公开的多个实施例,因此,不应视为对本发明范围的限制,将通过利用附图结合附加的具体描述和细节对本公开进行说明,在附图中:

图1示出能够被用于在多核架构中实施资源分配的一个示例系统;

图2示出能够被用于在多核架构中实施资源分配的一个示例系统;

图3示出能够被用于在多核架构中实施资源分配的一个示例系统;

图4示出能够被用于在多核架构中实施资源分配的一个示例系统;

图5描述了用于在多核架构中实施资源分配的一个示例方法的流程图;

图6示出能够被用于在多核架构中实施资源分配的计算机程序产品;以及

图7是示出被设置为在多核架构中实施资源分配的一个示例计算设备的框图。

具体实施方式

在当前的详细说明中,将参考附图,附图构成了详细说明的一部分。在附图中,除非上下文指出,否则相似的符号通常表示相似的组件。在详细说明、附图和权利要求中所描述的示例性实施例不意在限制。可以使用其它实施例,并且可以做出其它改变,而不偏离本文呈现的主题的精神或范围。将易于理解的是,如本文大致描述且如图中所图示的,本公开的方案能够以各种不同配置来布置、替代、组合、分离和设计,所有这些都在本文中明确地构思出。

本公开一般尤其涉及与在多核架构中资源分配有关的方法、装置、系统、设备和计算机程序产品。

简而言之,大致描述了用于分配资源的方法、设备和架构的技术。在一个示例中,该方法可以包括将第一和第二资源与第一和第二资源标识符相关联以及将第一和第二资源标识符映射到存储器中的第一和第二组地址。该方法可以包括识别第一资源是至少部分不可获得的。该方法可以包括当第一资源被识别为至少部分不可获得时,将第二资源标识符映射到存储器中第一组地址的至少一个地址。该方法可以包括接收对第一资源的请求,其中该请求标识第一组地址中地址的特定地址。该方法可以包括分析该特定地址,以识别特定资源,并将该请求分配至该特定资源。

图1示出根据本文中描述的至少一些实施例设置的能够被用于在多核架构中实施资源分配的一个示例系统。示例系统100可以包括管芯(die)102,其包括多个块118、120、122和/或124。针对块118进行说明,块118可以包括高速缓存126、处理器或处理器内核(以下称为“处理器”)112、路由器106和/或目录114。处理器112可以适于处理包括代码的数据(以下数据和/或代码都称为“数据块”)。高速缓存126可以被配置为将数据块本地存储至处理器112。系统100可以进一步包括控制器136,其适于与资源映射表116和管芯102通信。

如以下更具体的描述,当请求138由控制器136接收时,控制器136可以在管芯102中分配资源,以处理请求138。控制器136可以基于请求138中的地址134以及基于资源映射表116来作出分配。由控制器136作出的分配可以适于以下情况:管芯102中的资源变得部分或者完全不可获得,例如由于互联链路失败或路由器损坏,或者与过低的带宽或过高的延时相关联的另一限制。例如,如图1中以标记“x”所示,块124和120之间的通信可以是完全不可获得的。块118和120之间的通信可以是部分不可获得的,以标记“/”指示。由于块120是至少部分不可获得的,控制器136可以通过避免或限制资源分配到块120而将资源分配至请求138。不可获得或者部分不可获得的块或资源可以由控制器136检测,例如在管芯102启动时,以及可以响应于测试信息从控制器136到管芯102中的块的递送时间。

管芯102可以包括块118、120、122、124的矩阵(例如,阵列),其包括各自的高速缓存126、128、130、132。针对块118进行说明,块118还可以包括相应的处理器112、目录114和/或路由器106中的一个或多个。管芯102中的每个块可以如在同构设置中是大致相同的,或者一些块可以如在异构设置中是不同的。管芯102可以被设置为与另一管芯104通信,从而使得数据可以在多个管芯中共享。

目录114可以是将位置标识(例如,索引)为与存储在管芯102的块中的数据块相关联的目录。目录114可以被定位在管芯102上的单个块中,或者被分布在很多或全部块中。如果目录114被分布,例如,第一范围的地址(例如0x0000-0x1000)可以被存储在第一块中,第二范围的地址(例如0x1001-0x2000)被存储在第二块中,等等。图1中的目录114由此可以示出整个管芯目录的第一部分,其中该第一部分可以被存储在块118中并且额外的部分可以被存储在其他块中,例如块120、122、124等等。

图2示出根据本文描述的一些实施例设置的被用于在多核架构中实施资源分配的示例系统。为清晰目的,被标记为与图1的组件一致的图2中的那些组件将不再次描述。

示例资源映射表116a显示在图2中,并且可以在概念上认为是扩展的资源映射表。资源映射表116a可以包括索引146和资源字段148。控制器136可以将资源字段148中的资源标识符与块102中相应的资源相关联。在该示例中,资源标识符00可以与块118相对应,资源标识符01可以与块120相对应,资源标识符10可以与块122相对应,并且资源标识符11可以与块124相对应。利用地址用于使用分配的资源的示例包括分布式高速缓存、一致性协议目录、存储器控制器、存储器信道、存储体等。

控制器136可以进一步将资源字段148中的资源标识符映射到索引146中的地址组。控制器136可以使用资源映射表116a实质上将索引146中的地址映射到管芯102中的物理资源。在一个示例中,资源映射表116a可以包括多个条目(entry),其与被提供至电源y的管芯102中的资源r的数量相对应,其中y(表的等级)是等于或大约2的整数。在所示的示例中,4个资源118、120、122和124被示出,并且y是2,从而使得资源映射表116a具有42=16个条目。用于标识可获得的资源的地址134中的多个位元可以乘y,从而使得在该示例中,能够定址四个资源的2位元乘以y,{2xy(2)}=4位元地址,其可以被用于地址134中,以标识4个可获得的资源中的一个。

在该示例中,块120已经变成至少部分不可获得的,并且由此控制器126由例如存储器142中的指令144配置,以修改资源映射表116a,从而改变与资源标识符“01”相对应的资源120的映射。在该示例中,控制器136可以被配置为修改资源映射表116a的资源字段148中的条目,以至少部分地移除对块120(资源标识符“01”)的参考。如示例中所示,针对“0001”的地址,不是映射资源标识符“01”,控制器136可以映射资源标识符“00”,如以粗体显示。针对“0101”的地址,控制器136可映射资源标识符“10”,如以粗体显示。针对“1101”的地址,控制器136可以映射资源标识符“00”。通过这种方式,当地址134包括对资源标识符“01”的请求时,如以“01”结束的地址(0001、0101、1001、1101)标识的,资源映射表148可以在其他资源中分配这些请求,由此平衡管芯102中的资源中的请求。在该示例中,资源标识符“00”可以与37.5%的地址相关联,资源标识符“10”可以与31.25%的地址相关联,并且资源标识符“11”可以与31.25%的地址相关联。每个条目可以接收最初被映射到该条目的1/4的地址,加上被分配到不可获得的资源的1/4的地址的一部分。由于该部分在三个其余资源中以以下比例1:1:2被拆分,之后一个资源获得1/4+1/4*2/4=0.375,同时两个其他资源每一个获得1/4+1/4*1/4=0.3125。控制器136可以通过调整资源映射表148中的分配来定制资源分配,以将一些请求发送至块120,因为在块118和120之间可能存在一些通信,如以标记“/”显示的。

置换(permutation)设备170可以与控制器136和表116a通信。置换设备170可以被用于置换地址134,以通过控制器136平衡地址134中位元的处理。置换设备170可以置换或轮换(rotate)地址字段134中位元的顺序,以通过将地址134的不同位元应用于表150,152,154而进一步平衡资源。置换设备170可以包括异或(xor)或其他类型的置换或散乱电路(randomizingcircuit)。例如,各个组的6位元可以按位异或,以产生随机6位元输出。

图3示出根据本文描述的至少一些实施例设置的被用于在多核架构中实施资源分配的示例系统。为清晰目的,被标记为与图1或2的组件一致的图3中的那些组件将不再次描述。

示例资源映射表116b显示在图3中,其可以在概念上认为是级联的资源映射表。资源映射表116b可以包括表150、152和/或154。每个表150、152和154可以具有与资源的数量相同的条目。表的数量可以代表其等级。表150、152、154中的任一个可以包括索引156、资源标识符字段158和/或有效性标识符字段160。地址134中的位元可以被索引至表150、152、154。在该示例中,地址134中的第一(不太重要)2位元可以索引第一表150。地址134中的第二2位元可以索引第二表152,并且地址134中的第三(更重要)2位元可以索引第三表154。包括来自资源标识符字段158和有效性标识符字段160的数据的表150、152、154的输出可以被提供至多路器(multiplexer)162,并且多路器162的输出可以识别所分配的资源172。资源标识符可以被映射到索引156中的地址组。例如,与资源118相对应的资源标识符“00”可以被映射到地址组{xxxx00,xx0001,000101和010101}。与资源122相对应的资源标识符“10”可以被映射到地址组{xxxx10,xx1001,100101}。与资源124相对应的资源标识符“11”可以被映射到地址组{xxxx11,xx1101,110101}。与不可获得的资源120相对应的资源标识符“01”可以被映射到null地址组。

如以下更具体的描述,控制器136可以修改有效性字段160中的位元,以避免多路器162进行的资源分配和/或平衡对资源的请求负载。在该示例中,与表150中的资源标识符“01”相对应的块120被映射为如有效性标识符“0”指示的无效状态。与表152中的资源标识符“01”相对应的块120被映射为如有效性标识符“0”指示的无效状态。多路器162可以被配置为不从表150或表152选择输出,因为来自表150和152的输出具有无效状态。在该示例中,在表154中,控制器136将地址输入“01”重新映射为资源标识符“00”并被重新映射为如有效性标识符“1”指示的有效状态。在该示例中,由于与资源标识符“01”相对应的资源120是至少部分不可获得的,控制器136将资源标识符“01”映射为表150和152中的无效状态。在表154中,控制器136将地址“01”重新映射为资源标识符“00”并使其具有有效性标识符“1”的有效状态,以容许一些请求被发送至资源118。如果在150、152和154中超过一个表中的条目是有效的,多路器162可以被配置为使表150的资源标识符比表152的资源标识符优先分配、或者使表152的资源标识符比表154分配的资源标识符优先分配。

在该示例中,地址134可以包括“010101”。多路器162可以从表150接收输入,其以有效性标识符“0”指示无效状态,因为地址“01”被映射为资源标识符“01”以及有效性标识符“0”。多路器162可以从表152接收输入,其以有效性标识符“0”指示无效状态,因为地址“01”被映射为资源标识符“01”以及有效性标识符“0”。多路器162可以从表154接收输入,其以有效性标识符“1”指示有效状态并与资源标识符00相对应,所以多路器可以为所分配的资源172选择资源标识符“00”。在另一示例中,地址134可以包括“010100”。多路器162可以从表150接收输入,其以有效性标识符“1”指示有效状态,因为最不重要的位元“00”被映射为资源标识符“00”以及有效性标识符“1”。多路器162可以为所分配的资源172选择资源标识符“00”。在另一示例中,地址134可以包括“010001”。多路器162可以从表150接收输入,其以有效性标识符“0”指示无效状态,因为地址“01”中最不重要的位元被映射为资源标识符“01”以及有效性标识符“0”。多路器162可以从表152接收输入,其以有效性标识符“1”指示有效状态,因为地址“00”被映射为资源标识符“00”以及有效性标识符“1”。多路器162可以为所分配的资源172选择资源标识符“00”。

表150、152和154可以容许控制器136将针对不可获得的资源的请求在可获得的资源中分配。控制器136还可以在可获得的资源中平衡请求负载。在该示例中,资源分配可以34.4%到资源标识符00,32.8%到资源标识符10并且32.8%到资源标识符11。例如,一个资源获得1/4,加上1/4*1/4,加上1/4*1/4*2/4=0.34375,而其他两个资源获得1/4,加上1/4*1/4,加上1/4*1/4*1/4=0.328125。

置换设备170可以与控制器136和表116b通信。置换设备170可以被用于置换地址134,以通过控制器136平衡地址134中位元的处理。例如,如果多路器被设计为循环通过表150、152、154,以该顺序而不置换,表150中的资源标识符158可以比在其他表中的资源标识符使用得更加频繁。因此,被提供至表150的地址134中的位元可以比地址134中的其他位元使用得更加频繁。置换设备170可以置换或轮换地址字段134中位元的顺序,以通过将地址134中的不同位元应用于表150、152、154进一步平衡资源。置换设备170可以包括异或(xor)或其他类型的置换或散乱电路。例如,各个组的6位元可以按位异或,以产生随机6位元输出。

图4示出根据本文描述的至少一些实施例设置的用于在多核架构中实施资源分配的示例系统。为清晰目的,被标记为与图1、2或3的组件一致的图4中的那些组件将不再次描述。

在与资源标识符01相对应的资源120被部分隔离时的示例中,控制器136可以映射资源标识符字段158以及有效性字段160中的数据,以调节资源分配,从而使得资源120接收一些但减少的请求。在图4中所示的示例中,表166与图3中的表154相比被修改。表166具有两个有效状态条目,用于与资源120相对应的资源标识符01,所以资源120可以接收所有地址的12.5%。资源标识符00可以接收31.3%的地址,资源标识符10可以接收28.1%的地址,并且资源标识符11可以接收28.1%的地址。例如,资源00:表1中的1/4+表2中的0+表3中的1/4*2/4*2/4=31.25%。资源01:表1中的0+表2中的1/4*2/4+表3中的0=12.5%。资源10:表1中的1/4+表2中的0+表3中的1/4*2/4*1/4=28.125%。条目或表的数量越大,资源分配则能得到越良好的调整。

在其他可能的优点中,根据本公开的系统可以能够适于划出(mapout)或部分地划出完全不可获得或部分不可获得的资源的分配,从而使得操作可以继续。平衡的资源使用可以实现,甚至与划出的资源一起实现。资源平衡可以被定制,以调节部分隔离的资源的负载容量。负载容量调节能够利用扩展的资源映射表中的大量条目或者级联的资源映射表中的大量表作出更加良好的调整。精细调整资源分配的能力可以平衡来自大量条目或表的开销(overheads)。

以下是说明可以被用于使用本文中描述的一些方法的示例的存储开销的表:

图5描述了根据本文中描述的至少一些实施例设置的在多核架构中实施资源分配的示例方法的流程图。在一些示例中,图5中的方法可以使用上述系统100来实施。示例方法可以包括由一个或多个方框s2、s4、s6、s8、s10、s12、s14和/或s16所示出的一个或多个操作、动作或功能。虽然图示为离散的方框,在公开的主题的范围内构思时,各方框可以划分成额外的方框、组合成较少的方框,或者一起去除。

方法可以在方框s2“将第一和第二资源分别与第一和第二资源标识符相关联”开始。在方框s2,控制器可以被配置为向第一和第二资源分配第一和第二资源标识符。例如,资源可以包括在多核架构中的块。

方法可以从方框s2向s4“将第一和第二资源标识符分别映射到存储器中的第一和第二组地址,第一组地址不同于第二组地址”继续。在方框s4,控制器可以将资源标识符映射到相应的地址组。通过这一映射,对地址的请求可以被分配到资源。

方法还可以从方框s4向s6“确定第一资源是至少部分不可获得的”继续。在方框s6,控制器可以确定资源中的一个可以是至少部分不可获得的。例如,到资源的一个或多个网络链路可能被破坏或者部分破坏而限制带宽。

方法可以从方框s6向s8“当第一资源被确定为至少部分不可获得时,将第二资源标识符映射到存储器中第一组地址的至少一个地址”继续。在方框s8,控制器可以将第二资源标识符映射到第一组地址中的地址的至少一个。通过这一映射,第二资源可以在请求被接收时被控制器分配,该请求标识与前述第一资源相对应的地址。在一些示例中,控制器可以将与第三资源相对应的第三资源标识符映射到第一组地址。通过映射第三资源标识符,控制器可以能够在第二和第三资源中平衡对第一资源的请求负荷。控制器可以进一步将有效性标识符映射到第一、第二和第三资源标识符,以帮助进一步的资源负载平衡。

方法可以从方框s8向方框s10“接收对第一资源的请求,其中请求标识第一组地址中的地址的一个特定地址”继续。在方框s10,控制器可以在第一组地址中的地址的一个处接收对第一资源的请求。在一些示例中,控制器可以置换地址。

方法可以从方框s10向方框s12“分析特定地址,以确定特定资源”继续。在方框s12,控制器可以分析特定地址并确定特定资源。在特定地址与第一资源相对应的示例中,控制器可以将第一资源分配到请求。在特定地址与第二资源相对应的示例中,控制器可以将第二资源分配到请求。

方法可以从方框s12向方框s14“将请求分配到特定资源”继续。在方框s14,控制器可以将请求分配到特定资源。

图6示出根据本文中所描述的至少一些实施例设置的能够被用于在多核架构中实施资源分配的示例计算机程序产品300。程序产品300可以包括信号承载介质302。信号承载介质302可以包括一条或多条指令304,当通过例如处理器执行时,这些指令可以提供上文结合图1-5描述的功能。由此,例如,参考系统100,块118、120、122、124中的处理器112中的一个或多个可以响应于由基质302传递到系统100的指令304而进行图6显示的方框中的一个或多个。

在一些实施方式中,信号承载介质302可以包含计算机可读介质306,例如但不限于硬盘驱动器、cd、dvd、数字磁带、存储器等。在一些实施方式中,信号承载介质302可以包含可记录介质308,例如但不限于存储器、读/写(r/w)cd、r/wdvd,等等。在一些实施方式中,信号承载介质302可以包含通信介质310,例如但不限于数字和/或模拟通信介质(例如,光纤电缆、波导、有线通信链路、无线通信链路等)。因此,例如,程序产品300可以通过rf信号承载介质302传送到的一个或多个模块,其中信号承载介质302由无线通信介质310(例如,符合ieee802.11标准的无线通信介质)来传送。

图7是示出根据本文中所描述的至少一些实施例设置的能够被用于在多核架构中实施资源分配的示例计算设备400的框图。在最基本的配置402中,计算设备400通常包括一个或多个处理器404和系统存储器406。存储器总线408可用于在处理器404与系统存储器406之间通信。

根据所需的配置,处理器404可以是任意类型,包括但不限于微处理器(μp)、微控制器(μc)、数字信号处理器(dsp)或其任意组合。处理器504可以包括例如一级超高速缓存410和二级超高速缓存412的一级或多级超高速缓存、处理器内核414和寄存器416。示例的处理器内核414可以包括算术逻辑单元(alu)、浮点单元(fpu)、数字信号处理核(dspcore)或其任意组合。示例的存储器控制器418还可与处理器404一起使用,或者在一些实施方式中,存储器控制器418可以是处理器404的内部组件。

根据所需的配置,系统存储器406可以是任意类型,包括但不限于易失性存储器(例如ram)、非易失性存储器(例如rom、闪存等)或其任意组合。系统存储器406可以包括操作系统420、一个或多个应用422以及程序数据424。应用422可以包括资源分配算法426,该算法426可设置成执行如本文所描述的功能,包括参考如图1-4所示的系统100所描述的功能。程序数据424可以包括资源分配数据428,其可以用于如本文中描述的在多核架构中实施资源分配。在一些示例中,应用422可布置成在操作系统420上操作程序数据424,使得可以提供在多核架构中的资源分配。这一描述的基本配置402在图7中通过内部虚线内的那些组件示出。

计算设备400可具有附加的特征或功能以及附加的接口以便于基础配置402与任何所需的设备和接口之间的通信。例如,总线/接口控制器430可用于利于基础配置402与一个或多个数据存储设备432之间经由存储接口总线434的通信。数据存储设备432可以是可移除存储设备436、非可移除存储设备438或者其组合。可移除存储设备和非可移除存储设备的示例包括例如软盘驱动器和硬盘驱动器(hdd)的磁盘设备、例如压缩盘(cd)驱动器或数字多功能盘(dvd)驱动器的光盘驱动器、固态驱动器(ssd)和磁带驱动器,仅列举了几个。示例的计算机存储媒体可以包括以用于例如计算机可读指令、数据架构、程序模块或其它数据的信息的存储的任何方法或技术实现的易失性和非易失性的媒体以及可移除和非可移除的媒体。

系统存储器406、可移除存储设备436和非可移除存储设备438是计算机存储媒体的示例。计算机存储媒体包括但不限于ram、rom、eeprom、闪存(flashmemory)或其它存储器技术、cd-rom、数字多功能盘(dvd)或其它光学存储设备、磁盒、磁带、磁盘存储设备或其它磁存储设备、或者可用于存储所需信息并且可由计算设备400访问的任何其它媒体。任意这样的计算机存储媒体可以是计算设备400的部分。

计算设备400还可以包括接口总线440,该接口总线用于方便从各接口设备(例如,输出接口442、外围设备接口444和通信设备446)经由总线/接口控制器430到基础配置402的通信。示例的输出接口442包括图形处理单元448和音频处理单元450,其可配置为经由一个或多个a/v端口452与例如显示器或扬声器的各外部设备通信。示例的外围设备接口444包括串行接口控制器454或并行接口控制器456,其可配置为经由一个或多个i/o端口458与例如输入设备(例如,键盘、鼠标、笔、语音输入设备、触摸输入设备等)或其它外围设备(例如,打印机、扫描仪等)的外部设备通信。示例的通信设备446包括网络控制器460,其可布置成便于经由一个或多个通信端口464通过网络通信链路与一个或多个计算设备462的通信。

网络通信链路可以是通信媒体的一个示例。通信媒体通常可通过计算机可读指令、数据架构、程序模块或例如载波或其它传输机制的调制数据信号中的其它数据来具体化,并且可以包括任何信息输送媒体。“调制数据信号”可以是使得其特性中的一个或多个以将信号中的信息编码的方式设定或改变的信号。通过举例而不是限制的方式,通信媒体可以包括例如有线网络或直接线连接的有线媒体,以及例如声波、射频(rf)、微波、红外(ir)和其它无线媒体的无线媒体。如本文所使用的术语计算机可读媒体可以包括存储媒体和通信媒体两者。

计算设备400可实现为例如蜂窝电话、个人数据助理(pda)、个人媒体播放器设备、无线网页监视设备(wirelessweb-watchdevice)、个人头戴送受话器设备、专用设备或包括上述功能中的任一种的混合设备的小形状因数的便携式(或移动)电子设备的一部分。计算设备400还可实现为包括膝上型计算机和非膝上型计算机配置两者的个人计算机。

本公开不限于本文所描述的特定实施例,这些实施例意在为各方案的示例。能够在不偏离其精神和范围的情况下做出多种改进和变型,这对于本领字段技术人员而言是显而易见的。通过前面的说明,除了本文所列举的那些之外,在本公开的范围内的功能上等同的方法和装置对于本领字段技术人员而言将是显而易见的。旨在使这些改进和变型落在所附权利要求书的范围内。本公开仅受所附权利要求书以及这些权利要是所给予权利的等同方案的整个范围所限制。应当理解的是,本公开不限于特定的方法、试剂、化合物组成或生物系统,当然这些会变化。还应理解的是,本文所使用的术语是仅仅是为了描述特定实施例的目的,而不意在限制。

关于本文中基本上任何复数和/或单数术语的使用,本领字段技术人员能够根据上下文和/或应用适当地从复数变换成单数和/或从单数变换成复数。为了清晰的目的,本文中明确地阐明了各单数/复数的置换。

本领字段技术人员将理解,一般地,本文所使用的术语,尤其是随附权利要求(例如,随附权利要求的主体)中所使用的术语,通常意在为“开放式”术语(例如,术语“包括”应当解释为“包括但不限于”,术语“具有”应解释为“至少具有”,术语“包括”应解释为“包括但不限于”,等等)。本领字段技术人员还理解,如果意表达引导性权利要求记述项的具体数量,该意图将明确地记述在权利要求中,并且在不存在这种记述的情况下,不存在这样的意图。例如,为辅助理解,下面的随附权利要求可能包含了引导性短语“至少一个”和“一个或多个”的使用以引导权利要求记述项。然而,这种短语的使用不应解释为暗指不定冠词“一”或“一个”引导权利要求记述项将包含该所引导的权利要求记述项的任何特定权利要求局限于仅包含一个该记述项的实施例,即使当同一权利要求包括了引导性短语“一个或多个”或“至少一个”以及例如“一”或“一个”的不定冠词(例如,“一”和/或“一个”应当解释为表示“至少一个”或“一个或多个”);这同样适用于对于用于引导权利要求记述项的定冠词的使用。另外,即使明确地记述了被引导的权利要求记述项的具体数量,本领字段技术人员将理解到这些记述项应当解释为至少表示所记述的数量(例如,没有其它修饰语的裸记述“两个记述项”表示至少两个记述项或两个以上的记述项)。此外,在使用类似于“a、b和c等中的至少一个”的惯用法的那些示例中,通常这样的构造旨在表达本领字段技术人员理解该惯用法的含义(例如,“具有a、b和c中的至少一个的系统”将包括但不限于仅具有a、仅具有b、仅具有c、具有a和b、具有a和c、具有b和c、和/或具有a、b和c等等的系统)。在使用类似于“a、b或c等中的至少一个”的惯用法的那些示例中,通常这样的构造旨在表达本领字段技术人员理解该惯用法的含义(例如,“具有a、b或c中的至少一个的系统”将包括但不限于仅具有a、仅具有b、仅具有c、具有a和b、具有a和c、具有b和c、和/或具有a、b和c等等的系统)。本领字段技术人员将进一步理解,呈现两个以上可选项的几乎任何分离词和/或短语,无论是在说明书、权利要求或附图中,都应理解为设想包括一项、任一项或两项的可能性。例如,术语“a或b”将理解为包括“a”或“b”或“a和b”的可能性。

另外,在根据马库什组(markushgroup)描述本公开的特征或方案的情况下,本领字段技术人员将理解的是本公开也因此以马库什组的任何独立成员或成员的子组来描述。

本领字段技术人员将理解的是,为了任何以及全部的目的,例如在提供所撰写的说明书方面,本文所公开的全部范围也涵盖了任何和全部的可能的子范围及其子范围的组合。能够容易地认识到任何所列范围都充分地描述了同一范围并且使同一范围分解成至少均等的一半、三分之一、四分之一、五分之一、十分之一等等。作为非限制示例,本文所论述的每个范围能够容易地分解成下三分之一、中三分之一和上三分之一,等等。本领字段技术人员还将理解的是,例如“多达”、“至少”等所有的语言包括所记述的数量并且是指如上文所论述的随后能够分解成子范围的范围。最后,本领字段技术人员将理解的是,范围包括每个独立的成员。因此,例如,具有1-3个单元的组是指具有1个、2个或3个单元的组。类似地,具有1-5个单元的组是指具有1个、2个、3个、4个、或5个单元的组,等等。

通过前面的论述,将理解到本文已经为了示例的目的描述了本公开的各实施例,并且可以在不偏离本公开的范围和精神的情况下进行各种改进。因此,本文所公开的各个实施例不意在限制,真正的范围和精神是通过随附的权利要求表示的。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1