基于指令编码确定预提取指令的制作方法

文档序号:14033614阅读:196来源:国知局
基于指令编码确定预提取指令的制作方法

所公开的方面涉及处理系统中的预提取操作。更具体地说,示范性方面涉及基于由加载指令的编码的至少一或多个字段形成的识别符,识别用于预提取的候选加载指令。



背景技术:

为了满足不断增长的处理速度需求,现代处理系统设计包含各种技术以减少指令处理瓶颈。可实施预提取机构,以提前提取指令和数据。因此,可例如在产生对加载数据的需求之前将加载数据(例如,用于加载指令)提取并放置在数据高速缓冲存储器中。以此方式,当在执行加载指令后接入数据高速缓冲存储器时,加载数据将已在数据高速缓冲存储器中,且因此可避免数据高速缓存未中。因此,高效的预提取机构可减少检修高速缓存未中的成本(例如,就循环时间和电力来说),并通过减少由高速缓存未中产生的瓶颈而改进处理速度。可类似地实施预提取机构,以用于在其需求之前将数据或指令从备份存储器结构预提取到任何其它存储器结构(例如,寄存器文件),或任何高速缓冲存储器(例如,指令高速缓冲存储器)或高速缓存级中。

常规的预提取机构可使用各种预提取算法来识别可执行预提取操作的候选者(例如,加载指令)。举例来说,在数据预提取操作的情况下,预提取算法可识别提取数据值的地址当中的模式,或处理器生成数据提取请求的地址当中的模式。举例来说,预提取算法可在重复执行的过程中识别出,特定加载指令可生成对由规律间隔分离的地址处的数据值的数据提取请求。待提取数据值的两个邻近地址之间的此规律间隔被称为跨距。待针对特定加载信息提取数据值的任何两个地址可为跨距的整数倍,且可被称为距离。

更详细来说,在加载指令执行的第一时刻中,可由处理器生成对第一地址处的数据值的数据提取请求。在加载指令执行的第二时刻中,可生成对第二地址处的数据值的数据提取请求,其中鉴于第一地址,可基于跨距和距离计算出第二地址。因此,预提取机构可在例如预提取表的存储媒体中存储预提取信息,例如第一地址(或任何基地址)、跨距、距离等,如所属领域中已知。在程序执行期间,如果识别出加载指令(例如,在特定时刻处),那么预提取机构可接入预提取表,以计算在加载指令的未来时刻可需要预取数据值(加载数据)的地址(例如,基于存储其中的预提取信息)。预提取机构接着可预提取用于加载指令的未来时刻的加载数据,并将其放置在数据高速缓冲存储器(或其它存储器结构)中。因此,当在程序执行期间识别出加载指令的未来时刻时,对应的加载数据将已在数据高速缓冲存储器中可用,且因此可避免高速缓存未中。

通常基于加载指令的地址或pc值来识别特定加载指令是否为用于预提取的候选者(例如,识别对应的预提取信息是否存储在预提取表中)。因此,用于具有特定pc值的加载指令的预提取信息可存储在预提取表的对应项中,其中可使用加载指令的pc值来编索引并接入所述项。

然而,加载指令的地址或pc值可能并不易于由预提取机构获得或由预提取机构便利地使用。这是因为在常规的处理系统设计中,预提取机构可物理地接近于用于提取数据的加载/存储单元而定位,以便允许预提取机构使用加载/存储单元来预提取用于候选加载指令的数据。具体地说,预提取表(由pc值编索引并接入)可接近于加载/存储单元而定位。指令(包含加载指令)的pc值可从提取指令的指令提取单元获得。指令提取单元可物理地更接近于指令高速缓冲存储器而定位。指令提取单元和加载/存储单元或预提取表在上面集成有处理系统的半导体裸片或芯片上的位置可分离较大距离。因此,依赖于pc值来识别可执行预提取操作的候选加载指令的预提取机构可能不能容易地接入指令的pc值。为了使预提取机构能够接入pc值,可需要专门提供长接线或长线网,以将pc值从处理系统的前端(例如,包括指令提取单元)携载到处理系统的后端(例如,包括加载/存储单元、预提取机构等)。长接线会带来延迟并消耗电力。将长接线从前端布线到后端也会带来设计挑战以及伴随的成本和复杂度。

因此,期望避免常规预提取机构中所见的前述限制。



技术实现要素:

本发明的示范性方面涉及用于至少基于加载指令的指令编码来识别用于预提取操作的候选加载指令的系统和方法。在处理器中提供散列编码块,以基于加载指令的至少一或多个字段的函数来形成识别符,其中一或多个字段排除了加载指令的全地址或程序计数器(pc)值。包含以识别符编索引的预提取表的预提取机构被配置成基于识别符来确定加载指令是否为用于预提取加载数据的候选加载指令。所述函数为一或多个字段的一或多个位的散列、串连或其组合。所述字段包括基址寄存器、目标寄存器、立即偏移、偏移寄存器,或加载指令的指令编码的其它位中的一个或多个。在一些方面中,识别符可进一步是基于加载指令的pc值的位的子集的函数。

举例来说,示范性方面涉及一种数据预提取方法,所述方法包括基于加载指令的至少一或多个字段的函数来形成识别符,其中一或多个字段排除了加载指令的全地址或程序计数器(pc)值,以及基于识别符来确定加载指令是否为用于预提取加载数据的候选加载指令。

另一示范性方面涉及一种设备,所述设备包括:散列编码块,其被配置成基于加载指令的至少一或多个字段的函数来形成识别符,其中一或多个字段排除了加载指令的全地址或程序计数器(pc)值;以及预提取机构,其被配置成基于识别符来确定加载指令是否为用于数据预提取的候选加载指令。

又一示范性方面涉及一种设备,所述设备包括:用于基于加载指令的至少一或多个字段的函数来形成识别符的装置,其中一或多个字段排除了加载指令的全地址或程序计数器(pc)值;以及用于基于识别符来确定加载指令是否为用于预提取加载数据的候选加载指令的装置。

又一示范性方面涉及一种包括可由处理器执行的指令的非暂时性计算机可读存储媒体,所述指令在由处理器执行时,致使处理器执行用于数据预提取的操作,所述非暂时性计算机可读存储媒体包括:用于基于加载指令的至少一或多个字段的函数来形成识别符的代码,其中一或多个字段排除了加载指令的全地址或程序计数器(pc)值;以及用于基于识别符来确定加载指令是否为用于预提取加载数据的候选加载指令的代码。

附图说明

呈现附图以辅助描述本发明的方面,且仅仅是为了说明所述方面而非限制所述方面而提供附图。

图1说明常规的处理系统。

图2说明根据本发明的方面的包括预提取机构的示范性处理系统。

图3说明表示根据示范性方面的指令处理方法的流程图。

图4说明其中可有利地利用本发明的方面的示范性计算装置。

具体实施方式

在以下涉及本发明的特定方面的描述和相关图式中公开本发明的方面。可在不脱离本发明的范围的情况下设计替代方面。另外,将不会详细描述或将省略本发明的熟知元件以免混淆本发明的相关细节。

词语“示范性”在本文中用于意指“充当实例、例子或说明”。本文中描述为“示范性”的任何方面未必应理解为比其它方面优选或有利。同样,术语“本发明的方面”并不要求本发明的所有方面都包含所论述特征、优势或操作模式。

本文中所使用的术语仅是出于描述特定方面的目的,且并不意图限制本发明的方面。如本文中所使用,除非上下文另外清楚地指示,否则单数形式“一(a/an)”和“所述”也意图包含复数形式。将进一步理解,术语“包括”和/或“包含”在本文中使用时指定所陈述特征、整数、步骤、操作、元件和/或组件的存在,但不排除一或多个其它特征、整数、步骤、操作、元件、组件和/或其群组的存在或添加。

此外,在待由(例如)计算装置的元件执行的动作序列方面描述许多方面。将认识到,本文中所描述的各种动作可由特定电路(例如,专用集成电路(asic))、由正由一或多个处理器执行的程序指令或由所述两者的组合来执行。另外,本文中所描述的这些动作序列可被视为全部在任何形式的计算机可读存储媒体内体现,在所述计算机可读存储媒体中存储有对应计算机指令集,所述计算机指令在执行时将致使相关联处理器执行本文中所描述的功能性。因此,本发明的各种方面可以若干不同形式来体现,所有所述形式均被涵盖在所主张主题的范围内。另外,对于本文中所描述方面中的每一个,任何此类方面的对应形式可在本文中描述为(例如)“被配置成执行所描述动作的逻辑”。

在本发明的示范性方面中,能减轻与依赖于地址或程序计数器(pc)值来识别候选加载指令的预提取机构相关联的前述问题。确切地说,形成示范性替代识别符来识别候选加载指令,其中所述识别符并不包括加载指令的全地址或pc值。实际上,可(至少部分地)由加载指令的编码来形成识别符。举例来说,加载指令的一或多个字段(例如基址寄存器、目标寄存器、立即偏移值、偏移寄存器等)可用于产生识别符。虽然在一些情况下pc值的位并不用于产生识别符,但在一些其它情况下,除了指令的一或多个字段之外,还可能使用子集(例如,pc值的小部分)来产生识别符。一或多个字段(及(在适用时)pc值的位的子集)的散列函数可用于产生识别符,使得识别符与候选加载指令相关联且可识别所述候选加载指令。散列可为用于形成识别符的位的串连、异或(xor)函数或任何其它组合。

通过基于指令编码使用替代识别符而非仅使用加载指令的pc值,示范性预提取机构可避免与仅依赖于pc值来识别候选加载指令相关联的长路径和延迟。示范性预提取机构可基于使用示范性识别符而识别候选加载指令来起始并执行预提取操作。

尽管关于预提取描述示范性方面,但应理解,由指令的编码(例如,指令的一或多个字段的函数,而非仅指令的pc值)形成的示范性识别符可用于其它应用中。(举例来说,一些应用可跟踪在程序中带来错误、故障或异常的指令。跟踪信息可用于确定待实施的校正措施,例如异常处理程序。并非仅基于其全地址或pc值来识别指令,由指令的编码形成的识别符也可用于这些应用中。)

现在参考图1,示出常规的处理系统100,其中处理器101耦合到存储器103。为此论述起见仅说明处理器101的相关部分,但应理解,处理器101可为任何常规的通用处理器或专用处理器。存储器103可包含一或多个存储器结构,例如指令高速缓冲存储器、数据高速缓冲存储器、例如l1、l2、l3高速缓存等的多个高速缓存级,以及例如动态随机存取存储器(dram)的备份存储装置或主存储器等。存储器103中的一些或全部可集成在与处理器101相同的芯片上、集成在单独的芯片或块上或其任何组合。

出于此论述的目的,处理器101示出为包括指令提取单元(iu)102、调度单元104、加载存储单元(su)106和预提取表108。指令提取单元102被配置成在时钟的每一循环上提取待在处理器101的执行管线或执行引擎(未明确地示出)中执行的一或多个指令(例如,从指令高速缓冲存储器提取,所述高速缓冲存储器可为存储器103的一部分或可为未明确地示出的另一结构的一部分)。指令提取单元102基于其地址或程序计数器(pc)值来提取指令。因此,形成处理器101的执行引擎的前端的指令提取单元102可接入指令的pc值。指令提取单元102可在上面集成有处理器101的半导体裸片或集成电路的设计或布局中物理地接近于指令高速缓冲存储器而定位,以便减少指令高速缓冲存储器与指令提取单元102之间的接线长度和相关联延迟。

调度单元104可从指令提取单元102接收提取的指令,并筹备所述指令以用于调度。调度单元104可包括保存指令的保留站(rsv),且在所述站处在将指令调度到执行引擎之前解决(例如,通过寄存器重命名)危险指令(如果存在)。

加载/存储单元106可为处理器101的执行引擎的一部分,其被配置成执行加载/存储指令。加载/存储单元106可接收加载/存储指令,并按需要执行针对一或多个高速缓存查找的操作、检修未中、接入主存储器等,以用于处理加载/存储指令。因此,加载/存储单元106可充当加载/存储指令的处理中的后端。为改进效率和速度,加载/存储单元106可在上面集成有处理器101的半导体裸片或集成电路的设计或布局中物理地接近于数据高速缓冲存储器和其它备份存储器结构而定位。因此,加载/存储单元106可能与指令提取单元102物理地分离较大距离。

预提取表108可为用于基于对候选加载指令的识别而预提取数据的预提取机构的一部分。预提取表108可包括用于候选加载指令的预提取信息,例如基地址、跨距、距离等。在特定时刻处,如果识别出候选加载指令,那么可使用预提取信息来预提取用于候选加载指令的一或多个未来时刻的数据。可从备份存储器结构预提取用于候选加载指令的数据,并将其放置在数据高速缓冲存储器(例如,或例如寄存器文件的其它片上存储器结构)中。预提取机构可使用加载/存储单元106来提取用于候选加载指令的预提取数据,且因此预提取表108可物理地接近于加载/存储单元106而定位。预提取表108可被实施为内容可寻址存储器(cam),可使用指令的pc值来编索引所述预提取表。由加载/存储单元106接收的加载指令的pc值可用于查找预提取表108,以确定用于加载指令的预提取信息是否存在于预提取表108中。如果用于加载指令的预提取信息存在于预提取表108的项中,那么预提取表中存在命中,且所述加载指令被处理为用于预提取的候选加载指令。确定加载指令为候选加载指令可致使使用从预提取表108的项获得的预提取信息来起始用于预提取数据的预提取操作,这能带来针对加载指令的pc值的命中。

因此,预提取机构依赖于由指令提取单元102提取的指令的pc值来识别用于预提取数据的候选加载指令。图1中示出在处理引擎或处理器101中执行实例加载指令时,处理所述指令(具有指令编码或汇编代码“pc0x100ldrr5,[r2,#0x200]”)所涉及的相关步骤。加载指令的指令编码包含“ldr”,其表示从寄存器加载。加载指令ldr具有0x100的地址或pc值。加载指令ldr用于从(处理器101的寄存器文件(未说明)的)寄存器r2中指定的地址加载值,所述地址在加载指令的所说明时刻中添加有由立即字段“0x200”给出的偏移值。在pc为0x100的加载指令ldr的不同时刻中,立即字段可具有不同偏移值(如可认识到,所述值可控制在加载指令的不同时刻中预提取数据值的地址的跨距)。

如所示出,将pc值0x100以及指令ldr的字段的其余部分r5,[r2,#0x200]发送到调度单元104,并从那发送到加载/存储单元106。通过如下步骤在加载/存储单元106中执行加载指令ldr:读取基址寄存器r2的值、将立即或偏移值0x200添加到所述值、提取在等于r2中的地址与0x200的总和的地址处发现的数据,并将提取的数据加载于寄存器文件的目标寄存器r5中。

预提取表108具备已从指令提取单元102向下传递的pc0x100的值,以用于确定pc为0x100的加载指令ldr是否为用于预提取的候选加载指令,即预提取表108是否包括用于pc为0x100的加载指令ldr的预提取信息。

指令提取单元102与加载存储单元106/预提取表108之间的物理距离可明显较大。用于表示指令的整个pc值(例如,在上文实例中为0x100)的位数目可明显较大(例如,在常规的实施方案中为64位宽),这意味着要使用对应数目个接线来将0x100的整个pc值从指令提取单元102携载到预提取表108,从而导致相关功率消耗、布线复杂度、成本等增大。

现在参考图2,说明示范性处理系统200。处理系统200在一些方面中类似于常规处理系统100,且相似的参考编号已用于识别处理系统100和200的类似组件。因此,处理系统200也包含存储器203(其可类似于关于图1所描述的存储器103),和与存储器203通信的处理器201。处理器201也包含用于执行指令的执行引擎,可例如从存储器203的指令高速缓冲存储器提取所述指令。仅说明处理器201的执行引擎的相关细节,且这些细节包含指令提取单元202(其类似于图1的指令提取单元102)、调度单元204(其类似于图1的调度单元104)和加载/存储单元206(其类似于图1的加载/存储单元106)。处理器201的执行引擎还包含将在下文进一步描述的散列编码块210和预提取表212。

在处理器201中,预提取机构无需依赖于指令的pc值来识别用于预提取的候选加载指令。确切地说,形成用于识别候选加载指令的示范性替代识别符,其中所述识别符可不涉及加载指令的全地址或pc值(但在任选方面中,pc值的位的子集也可用于产生识别符)。示范性识别符至少由加载指令的编码形成。举例来说,加载指令的至少一或多个字段(例如基址寄存器、目标寄存器、立即偏移值、偏移寄存器等)用于产生替代识别符。

在考虑与上文参考图1所论述的加载指令相同的加载指令的情况下,将说明相关于示范性识别符的方面。如图2中所示出,指令提取单元202接收具有指令编码或汇编代码“pc0x100ldrr5,[r2,#0x200]”的加载指令ldr。然而,在加载指令的执行中,并不将加载指令ldr的整个pc值0x100提供到调度单元204。也不将整个pc值0x100提供到加载/存储单元206。确切地说,在所说明实例中,仅将指令编码ldrr5,[r2,#0x200]提供到调度单元204和加载/存储单元206。调度单元204和加载/存储单元206并不需要pc值0x100来执行加载指令,且因此对加载指令的执行以常规方式在加载/存储单元206中进行(例如,通过读取寄存器r2的值、将0x200添加到所述值,以及提取在等于r2中的地址与0x200的总和的地址处发现的数据)。

尽管未说明,但在本发明的范围内存在替代方面,其中除了上文所描述的指令字段之外,pc值的位的子集也可任选地用于形成识别符。位的子集可为pc值的较小数目或较小部分。举例来说,除了加载指令的编码之外,pc值的64位中的四个(例如,pc[5:2])可用于形成识别符。

因此,由处理器201使用的预提取机构可并不供应有整个pc值。确切地说,处理器201的预提取机构可接收加载指令ldrr5,[r2,#0x200]的指令编码的至少一些位。加载指令ldrr5,[r2,#0x200]的指令编码包括一或多个字段,所述字段包含寄存器字段r5和r2以及立即偏移字段0x200。在本发明的示范性方面中,看出这些字段的位的至少一组合特定用于发现pc值为0x100的加载指令ldrr5,[r2,#0x200]。因此,加载指令的一或多个字段的位的至少一组合用于识别pc值为0x100的加载指令ldr。任选地,pc值0x100的位的小子集(而非全部位)还可结合加载指令的一或多个字段的位的组合一起使用来识别加载指令。如先前所论述,pc值可包括例如64个位。然而,用于指令的编码(例如,指令的操作代码或操作码)和一或多个字段(例如加载指令ldrr5,[r2,#0x200]的寄存器字段r5和r2以及立即偏移字段)的位数目可低至20个位或更少。此外,应注意,甚至在一些常规方面中,可将指令的编码的某一数目个位(例如,20个位)和加载指令的一或多个字段的某一数目个位提供到加载/存储单元206,以使得加载/存储单元206能够计算提取加载数据的地址值。

因此,散列编码块210被配置成实施散列函数,所述函数为指令的编码的至少一或多个字段的组合。散列函数可为(例如)一或多个字段的至少一些位和(任选的)指令的pc值的位的子集的串连、异或(xor)函数或任何其它组合。在所示出的实例中,散列编码块210可产生寄存器字段r5和r2以及立即值或偏移字段0x200的至少一些位的散列函数。散列编码块210的输出为识别符,其为加载指令ldr的一或多个字段与(任选的)pc值0x100的组合。

在一些情况下,散列编码块210中形成的识别符可以是pc为0x100的加载指令ldr的唯一识别符。一般来说,散列编码块210中形成的识别符可在各种候选加载指令之间加以区分,所述指令的预提取信息可存储于预提取表212中。因此,识别符可用于给预提取表212编索引以确定是否存在命中,即预提取表212是否包括预提取信息(例如,基地址、跨距、距离等中的一个或多个,所述信息可用于计算用于预提取对应于加载指令的数据的地址)。以此方式,用于预提取的候选加载指令的至少一或多个字段(例如,目标寄存器、基址寄存器、立即值或偏移寄存器(例如,可指定偏移值的寄存器,而非在上文实例中提供偏移值的立即值)中的一个或多个)和(任选的)pc值的位的子集的任何散列函数或编码或组合可用于识别预提取表212中是否存在用于加载指令的预提取信息。确定预提取表212中存在用于加载指令的预提取信息可触发针对使用预提取信息计算出的地址处的一或多个数据值的对应预提取操作。

因此,在一个实例中,预提取表212中可存在针对由散列编码块210提供的识别符的命中。举例来说,形成有加载指令ldr的字段r5、r2和0x200中的一个的至少一些位的识别符可显露预提取表212包括对应于加载指令ldr的预提取信息。因此,加载指令ldr可被识别为用于预提取的候选加载指令。在一个实例中,可从通过将跨距值添加到由基址寄存器r2提供的地址所形成的地址来预提取此候选加载指令的一或多个数据值。可预提取这一或多个数据值并将其加载到数据高速缓冲存储器(未示出)中。在一些情况下,所述计算可是不正确的,这是因为预提取算法是推测性的。所属领域中已知用于改进预提取算法的准确性的技术,且此论述将不聚焦于此类技术。在示范性方面中,在每次由加载/存储单元206接收的加载指令(例如,在程序的执行期间)被识别为用于预提取的候选加载指令时,可使用来自预提取表212的对应预提取信息来计算用以预提取数据的地址,且可起始对应预提取操作。

如前文所提到,预提取表212可被实施为内容可寻址存储器(cam)。加载/存储单元206可基于如下步骤来接入预提取表212:将指令编码ldrr5,[r2,#0x200]提供到散列编码表210,至少基于字段r5、r2和0x200(和任选的pc值0x100的位的子集)来获得识别符,以及使用识别符来接入预提取表212中的cam以确定例如跨距的预提取信息。以此方式,并不需要加载指令的pc值0x100的全部位来识别候选加载指令或检索预提取的数据。因此,可减轻与上文预提取操作中使用pc值的全部位相关联的延迟和功率消耗。

还应了解,可代替pc值使用由指令编码的一或多个字段的散列函数或组合形成的识别符来识别用于任何其它操作的指令。因而,示范性方面并不限于预提取操作。

将了解,示范性方面包含用于执行本文中所公开的过程、函数和/或算法的各种方法。举例来说,如图3中所示出,方法300为根据本文中所公开的示范性方面的指令处理方法。举例来说,方法300涉及预提取(例如,参考图2所描述的候选加载指令ldr的)数据的方法。

如块302中所示出,方法300包括基于加载指令的至少一或多个字段的函数来形成识别符,其中一或多个字段排除了加载指令的全地址或程序计数器(pc)值。举例来说,块302涉及形成至少一或多个字段的一或多个位的散列、串连或其组合,所述字段例如基址寄存器(例如,寄存器r2)、目标寄存器(例如,寄存器r5)、立即偏移(例如,立即值0x200)、偏移寄存器或图2的散列编码块210中的加载指令的指令编码ldrr5,[r2,#0x200]的其它位。在任选方面中,识别符可进一步由加载指令ldr的pc值的位的子集的函数形成,如上文所提到。

在块304中,方法300包括基于识别符来确定加载指令是否为用于预提取加载数据的候选加载指令。举例来说,块304可涉及使用识别符来确定预提取表212中是否存在命中,即预提取表212是否具有包括对应于加载指令的预提取信息的项。预提取信息可包含用于预提取加载数据的基地址、跨距或距离中的一个或多个。如果预提取表212中存在命中,那么可基于预提取表中存储的预提取信息计算出用于预提取加载数据的一或多个地址,且可从一或多个地址预提取一或多个数据值并将数据值加载到数据高速缓冲存储器中。

现在参考图4,说明根据示范性方面配置的计算装置400的特定说明性方面的框图。计算装置400包含参考图2所描述的处理器201(为清楚起见,在此表示中仅示出表示对应于散列编码块210和预提取表212的示范性结构的块)。在一些方面中,处理器201可被配置成执行图3的方法300。如图4中所示出,处理器201可与存储器203通信,如先前所描述。尽管未单独地示出,但一或多个高速缓冲存储器或其它存储器结构也可包含在计算装置400中。

图4还示出耦合到处理器201和显示器428的显示器控制器426。译码器/解码器(编解码器)434(例如,音频和/或语音编解码器)可耦合到处理器201。还说明了其它组件,例如无线控制器440(其可包含调制解调器)。扬声器436和麦克风438可耦合到编解码器434。图4还指示无线控制器440可耦合到无线天线442。在特定方面中,处理器201、显示器控制器426、存储器203、编解码器434和无线控制器440包含在系统级封装或芯片上系统装置422中。

在特定方面中,输入装置430和电源444耦合到芯片上系统装置422。此外,在特定方面中,如图4中所说明,显示器428、输入装置430、扬声器436、麦克风438、无线天线442和电源444在芯片上系统装置422的外部。然而,显示器428、输入装置430、扬声器436、麦克风438、无线天线442和电源444中的每一个可耦合到芯片上系统装置422的组件,例如接口或控制器。

应注意,尽管图4描绘无线通信装置,但处理器201和存储器203也可集成到机顶盒、音乐播放器、视频播放器、娱乐单元、导航装置、个人数字助理(pda)、通信装置、固定位置数据单元、计算机或其它类似电子装置中。此外,计算装置400的至少一或多个示范性方面可集成到至少一个半导体裸片中。

所属领域的技术人员将了解,可使用多种不同技艺和技术中的任一个来表示信息和信号。举例来说,可通过电压、电流、电磁波、磁场或磁粒子、光场或光粒子或其任何组合来表示在整个上文描述中可能参考的数据、指令、命令、信息、信号、位、符号和码片。

此外,所属领域的技术人员将了解,结合本文中所公开的方面描述的各种说明性逻辑块、模块、电路和算法步骤可被实施为电子硬件、计算机软件或两者的组合。为清晰地说明硬件与软件的此可互换性,上文已大体就其功能性描述了各种说明性组件、块、模块、电路和步骤。此类功能性是实施为硬件还是软件取决于特定应用和强加于整个系统的设计约束。熟练的技术人员可针对每一特定应用以不同方式来实施所描述的功能性,但此类实施决策不应被解释为会引起脱离本发明的范围。

结合本文中所公开的方面描述的方法、序列和/或算法可直接以硬件、以由处理器执行的软件模块或以硬件和软件模块的组合来体现。软件模块可驻存在ram存储器、快闪存储器、rom存储器、eprom存储器、eeprom存储器、寄存器、硬盘、可装卸式磁盘、cd-rom,或所属领域中已知的任何其它形式的存储媒体中。示范性存储媒体耦合到处理器,使得处理器可从存储媒体读取信息并且将信息写入到存储媒体。在替代方案中,存储媒体可与处理器成一体式。

因此,本发明的方面可包含体现如下方法的计算机可读媒体:基于候选加载指令的一或多个字段的组合来确定用于预提取操作的候选加载指令的方法。因此,本发明不限于所说明的实例,且用于执行本文中所描述的功能性的任何装置包含在本发明的方面中。

虽然前述公开内容示出本发明的说明性方面,但应注意,可在不脱离如由所附权利要求书界定的本发明的范围的情况下在本文中作出各种改变和修改。无需以任何特定次序执行根据本文中所描述的本发明方面的方法权利要求项的功能、步骤和/或动作。此外,尽管可以单数形式描述或主张本发明的元件,但除非明确陈述限于单数,否则也涵盖复数形式。

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