一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

在基于处理器的设备中提供快速存储器废弃的制作方法

2022-07-14 05:11:52 来源:中国专利 TAG:


1.本公开的技术涉及基于处理器的设备中的存储器访问和维护,更具体地,涉及通过避免对系统存储器进行不必要的存储器存储操作来优化性能。


背景技术:

2.实现基于处理器的设备的指令集体系架构(isa)基本上以围绕存储器的使用为导向,其中由isa提供的存储器存储指令用于将值写入系统存储器,并且由isa提供的存储器加载指令用于从系统存储器读回值。这种存储器存储指令和存储器加载指令的一种用途是临时保存寄存器的值,然后在稍后恢复,以允许这些寄存器在基于处理器的设备内被用以其他目的。这种存储器使用的结果是,一旦执行了从系统存储器读取值并将值恢复到寄存器的存储器加载操作,则最初被保存的寄存器值可能不再需要继续驻留在系统存储器中。这种值可以被认为是“废弃的”,因为没有后续指令将需要为了获取寄存器值而引用系统存储器中的存储器位置。
3.然而,传统isa操作的规则认为被写入到存储器的这种值是“永久”的,使得被存储到系统存储器的每个值对读取存储器位置的任何后续存储器加载指令保持可用,直到后续存储器存储指令将新值写入存储器位置。因此需要基于处理器的设备来维护系统存储器中的值,即使在值被后续存储器存储操作覆写之前,没有指令将再次尝试读取值的情况下也是如此。
4.此外,一些传统的isa支持被称为“存储到加载转发”的特征,其中,在引用相同存储器位置的较早存储器存储操作之后的存储器加载操作在存储器存储操作已经将其值写入系统存储器之前可以被执行。利用存储到加载转发,要由存储器存储操作写入的值可以在其到达系统存储器之前从诸如存储缓冲器的中间存储器获取,并且可以被用以执行存储器加载操作。在这种情况下,如果在存储器加载操作之后没有后续存储器加载指令将访问值,则甚至在值到达系统存储器之前,值就可以被认为是废弃的。结果,要求基于处理器的设备保持废弃的值导致不必要的硬件资源(诸如存储缓冲器)的消费,并且增加了实现期望的系统性能级别所需的这种硬件资源的数目。
5.因此,需要一种更有效的机制来消除维护废弃值的需要。


技术实现要素:

6.本文公开的示例性实施例包括在基于处理器的设备中提供快速存储器废弃。就此而言,在一个示例性实施例中,实现基于处理器的设备的指令集体系架构(isa)提供可以指示来自给定存储器地址的最终存储器加载操作(即,可以指示在执行由存储器加载指令表示的存储器加载操作之后,不再需要维护被存储在存储器地址处的值)的存储器加载指令。在一些示例性实施例中,存储器加载指令可以包括定制操作码,同时,一些示例性实施例可以提供存储器加载指令包括现有操作码和定制最终读取指示符(例如,位指示符)。在基于处理器的设备的处理元件(pe)的执行流水线接收到存储器加载指令后,与存储器加载指令
的存储器地址相对应的条目在基于处理器的设备的系统存储器外部的中间存储器中被定位,并且被用以执行最终存储器加载操作。在一些示例性实施例中,中间存储器可以是缓冲器(例如,作为非限制性示例,存储缓冲器、写回缓冲器、预提交缓冲器或存储器控制器缓冲器),或者可以是高速缓存(例如,作为非限制性示例,数据高速缓存、统一高速缓存,或级别1(l1)、级别2(l2)、级别3(l3)或级别4(l4)高速缓存)。
7.在使用条目执行最终存储器加载操作之后,废弃逻辑电路(例如,作为非限制性示例,位于加载比较器或高速缓存控制器中)针对条目设置废弃指示符,以指示在条目的内容被写入系统存储器之前条目可以被重新使用。例如,废弃指示符可以是有效性指示符(在中间存储器是缓冲器或高速缓存的实施例中)或脏指示符(在中间存储器是高速缓存的实施例中)。然后,由基于处理器的设备执行的传统缓冲器和/或高速缓存维护操作可以在条目的内容被写入系统存储器之前释放条目以用于重新使用。在一些实施例中,基于处理器的设备还可以取消由存储器加载指令之前的存储器存储指令发起的待决存储器存储操作。
8.在另一示例性实施例中,提供了一种基于处理器的设备。基于处理器的设备包括系统存储器,并且还包括处理元件(pe),处理元件(pe)包括执行流水线以及一个或多个加载比较器,执行流水线包括一个或多个加载阶段。基于处理器的设备还包括中间存储器,中间存储器在系统存储器外部,并且包括多个条目和对应的多个废弃指示符。基于处理器的设备被配置为使用pe的执行流水线接收包括存储器地址的存储器加载指令,存储器加载指令指示来自存储器地址的最终存储器加载操作。基于处理器的设备还被配置为由pe的一个或多个加载比较器中的加载比较器在中间存储器内的多个条目中定位与存储器地址相对应的条目。基于处理器的设备还被配置为使用条目来执行最终存储器加载操作。基于处理器的设备还被配置为使用基于处理器的设备的废弃逻辑电路来设置条目的废弃指示符的值,其中条目的废弃指示符指示在将条目的内容被写入系统存储器之前条目可以被重新使用。
9.在另一示例性实施例中,提供了一种用于在基于处理器的设备中提供快速存储器废弃的方法。方法包括使用基于处理器的设备的处理元件(pe)的执行流水线接收包括存储器地址的存储器加载指令,存储器加载指令指示来自存储器地址的最终存储器加载操作。方法还包括使用pe的加载比较器,在基于处理器的设备的系统存储器外部的中间存储器的多个条目中定位与存储器地址相对应的条目。方法还包括使用条目执行最终存储器加载操作。方法还包括使用基于处理器的设备的废弃逻辑电路来设置条目的废弃指示符的值,其中条目的废弃指示符指示在将条目的内容被写入系统存储器之前条目可以被重新使用。
10.在另一示例性实施例中,提供了一种非瞬态计算机可读介质。计算机可读存储器在其上存储指令程序,指令程序包括用于由处理器执行的多个计算机可执行指令,多个计算机可执行指令包括存储器加载指令,存储器加载指令包括存储器地址,存储器加载指令指示来自存储器地址的最终存储器加载操作。
11.本领域技术人员将在阅读以下结合附图对优选实施例的详细描述之后理解本公开的范围并认识到其附加实施例。
附图说明
12.附图并入本说明书并形成本说明书一部分,其示出了本公开的几个实施例,并且
与说明书一起用于解释本公开的原理。
13.图1是包括用于提供快速存储器废弃的处理元件(pe)的示例性基于处理器的设备的示意图;
14.图2a和图2b是示出了对应于图1的用于指示最终存储器加载操作的存储器加载指令的示例性存储器加载指令的框图;
15.图3a和图3b分别是示出了可以被用以执行快速存储器废弃操作的图1的中间存储器的示例性缓冲器和高速缓存实施例的框图;
16.图4a和图4b是示出了用于通过图1的基于处理器的设备提供快速存储器废弃的示例性操作的流程图;以及
17.图5是被配置为提供快速存储器废弃的示例性基于处理器的设备(诸如图1的基于处理器的设备)的框图。
具体实施方式
18.本文公开的示例性实施例包括在基于处理器的设备中提供快速存储器废弃。就此而言,在一个示例性实施例中,实现基于处理器的设备的指令集体系架构(isa)提供可以指示来自给定存储器地址的最终存储器加载操作(即,可以指示在执行由存储器加载指令表示的存储器加载操作之后,不再需要维护存储在该存储器地址处的值)的存储器加载指令。在一些示例性实施例中,存储器加载指令可以包括定制操作码,而一些示例性实施例可以提供存储器加载指令包括现有操作码和定制最终读取指示符(例如,位指示符)。在基于处理器的设备的处理元件(pe)的执行流水线接收到存储器加载指令后,与存储器加载指令的存储器地址相对应的条目在基于处理器的设备的系统存储器外部的中间存储器中被定位,并且被用以执行最终存储器加载操作。在一些示例性实施例中,中间存储器可以是缓冲器(例如,作为非限制性示例,存储缓冲器、写回缓冲器、预提交缓冲器或存储器控制器缓冲器),或者可以是高速缓存(例如,作为非限制性示例,数据高速缓存、统一高速缓存,或级别1(l1)、级别2(l2)、级别3(l3)或级别4(l4)高速缓存)。
19.在使用条目执行最终存储器加载操作之后,废弃逻辑电路(例如,作为非限制性示例,位于加载比较器或高速缓存控制器中)针对该条目设置废弃指示符的值,以指示在该条目的内容被写入系统存储器之前该条目可以被重新使用。例如,废弃指示符可以是有效性指示符(在中间存储器是缓冲器或高速缓存的实施例中)或脏指示符(在中间存储器是高速缓存的实施例中)。然后,由基于处理器的设备执行的传统缓冲器和/或高速缓存维护操作可以在该条目的内容被写入系统存储器之前释放该条目以用于重新使用。在一些实施例中,基于处理器的设备还可以取消由存储器加载指令之前的存储器存储指令发起的待决存储器存储操作。
20.就此而言,图1示出了提供用于提供快速存储器废弃的处理元件(pe)102的示例性基于处理器的设备100。pe 102可以包括具有一个或多个处理器核的中央处理单元(cpu),或者可以包括单个处理器核,该单个处理器核包括逻辑执行单元以及相关联的高速缓存和功能单元。此外,在一些实施例中,pe 102可以是基于处理器的设备100的多个类似配置的pe(未示出)中的一个类似配置的pe。
21.在图1的示例中,pe 102通信地耦合到互连总线104,在一些实施例中,互连总线
104可以包括附加构成元件(例如,作为非限制性示例,总线控制器电路和/或仲裁电路),为清楚起见未在图1中示出。pe 102还经由互连总线104通信地耦合到存储器控制器106,存储器控制器106包括存储器控制器缓冲器107,并且控制对系统存储器108的访问并管理去往和来自系统存储器108的数据流。系统存储器108提供用于基于处理器的设备100的数据存储的可寻址存储器,并且因此可以包括,作为非限制性示例,同步动态随机存取存储器(sdram)。图1的示例中的pe 102还经由互连总线104通信地耦合到级别2(l2)高速缓存110和级别3(l3)高速缓存112,其中每个高速缓存表示分层高速缓存结构中的层,其由基于处理器的设备100使用以高速缓存被频繁访问的数据以用于更快取回(与从系统存储器108取回数据相比)。
22.图1的pe 102包括执行流水线114,该执行流水线114包括被配置为执行计算机可执行指令的指令流的电路,计算机可执行指令诸如示例性存储器存储指令(“mem store”)116和后续存储器加载指令(“mem load”)118。在图1的示例中,执行流水线114包括用于取回指令以用于执行的提取阶段120、用于将所提取指令转换为控制信号以用于指令执行的译码阶段122、用于实际执行指令执行的执行阶段124、以及用于执行由指令执行产生的存储器访问操作(例如,存储器加载操作和/或存储器存储操作)的存储器访问阶段126。应当理解,在一些实施例中,执行流水线114可以包括比图1的示例中所示的那些阶段更少或更多的阶段。
23.在图1的示例中,pe 102还包括通用寄存器堆(“gprf”)128,其提供多个寄存器以用于由硬件和软件使用,以用于存储可以对其执行算术和逻辑运算的操作数。图1的pe 102还包括数据高速缓存130,该数据高速缓存130由高速缓存控制器132管理,并且可以被用以在pe 102内高速缓存被频繁访问的数据的本地副本,以用于执行流水线114的存储器访问阶段126更快地访问。
24.在传统操作中,执行流水线的执行阶段124可以访问gprf 128以取回操作数和/或存储算术或逻辑操作的结果。最终将提交给系统存储器108的存储器存储操作的结果可以在可选地被高速缓存在数据高速缓存130中之前,首先被临时存储在存储缓冲器134中。然后,来自存储缓冲器134和/或数据高速缓存130的数据值可以在被写入系统存储器108之前,移动到写回缓冲器136,并随后移动到预提交缓冲器138。
25.如上所述,一些传统的isa支持存储到加载转发,这使得引用存储器地址140并且在引用相同存储器地址140的较早存储器存储指令116之后(即,在程序顺序上在存储器加载指令118之前)的诸如存储器加载指令118的存储器加载指令,能够在存储器存储指令116已经将其值写入系统存储器108之前(即,在由存储器存储指令116发起的待决存储器存储操作完成之前)被执行。这可以通过在将该值发送到系统存储器108之前,从例如存储缓冲器134、写回缓冲器136或预提交缓冲器138取回由存储器存储指令116写入的值来实现。因此,在图1的示例中,执行流水线的存储器访问阶段126包括一个或多个加载阶段(“load”)。在尝试访问系统存储器108以取回用于存储器加载指令118的数据之前,(多个)加载阶段142可以使用加载比较器144(0)-144(2)(分别与存储缓冲器134、写回缓冲器136和预提交缓冲器138相对应)来确定相应缓冲器是否包含对应于存储器加载指令118的存储器地址140的条目。如果是,则该条目可用于执行存储器加载操作,而无需等待存储器存储指令116的结果被提交给系统存储器108。
26.图1的基于处理器的设备100可以包括已知的数字逻辑元件、半导体电路、处理核和/或存储器结构中的任何一项,以及其他元件或其组合。本文描述的实施例不限于元件的任何特定布置,并且所公开的技术可以容易地扩展到半导体插槽或封装上的各种结构和布局。应当理解,基于处理器的设备100的一些实施例可以包括比图1所示更多或更少的元件。例如,pe 102还可以包括更多或更少的存储器设备执行流水线阶段,和/或控制器电路。具体地,在一些实施例中,附加于或代替图1所示的高速缓存,基于处理器的设备100还可以包括缓冲器和高速缓存(例如,作为非限制性示例,l1高速缓存、l4高速缓存和/或统一高速缓存)。
27.如上所述,诸如存储器存储指令116和存储器加载指令118的指令的一种用途是临时保存寄存器的值,然后在稍后恢复(例如,在gprf 128内),以允许那些寄存器用于基于处理器的设备100内的其他目的。因此,一旦已经执行了存储器加载指令118,则被读取的值可以不再需要继续驻留在系统存储器108中。这种值可以被认为是“废弃”的,因为没有后续指令需要为了获取其值而引用系统存储器108中的该存储位置。然而,基于处理器的设备的传统实施例可能需要维护这种值,即使在值被后续存储器存储操作覆写之前,没有存储器加载操作将再次尝试读取该值的情况下。此外,在上述存储到加载转发场景中,如果从例如存储缓冲器134、写回缓冲器136或预提交缓冲器138读取的值没有被后续存储器加载操作再次访问,则在该值到达系统存储器108之前,该值可以被认为是废弃的。结果,存储缓冲器134、写回缓冲器136和预提交缓冲器138内的条目可能通过被用以存储废弃数据而浪费,并且随着废弃数据移动通过缓冲器到系统存储器108,系统资源可以被浪费在维护废弃数据上。
28.就此而言,基于处理器的设备100被配置为提供快速存储器废弃。具体地,由基于处理器的设备100的isa提供的存储器加载指令118指示来自存储器地址140的最终存储器加载操作(即,指示存储器加载指令118之后的存储器加载指令将不会再次访问存储在存储器地址140处的当前内容)。因此,在处理元件102的执行流水线114接收到存储器加载指令118之后,与存储器地址140相对应的条目在基于处理器的设备100的中间存储器146内被定位。如下面更详细讨论的,中间存储器146可以包括基于处理器的设备100的一个或多个缓冲器(例如,作为非限制性示例,存储缓冲器134、写回缓冲器136、预提交缓冲器138和/或存储器控制器缓冲器107)和/或高速缓存(例如,作为非限制性示例,数据高速缓存130、l2高速缓存110和/或l3高速缓存112)。
29.使用该条目来执行最终存储器加载操作(例如,作为非限制性示例,使用传统的存储到加载转发来从缓冲器或通过从高速缓存访问高速缓存的数据来读取),然后设置该条目的废弃指示符的值以指示在该条目的内容被写入系统存储器108之前该条目可以被重新使用。因为中间存储器146可以包括基于处理器的设备100内的一个或多个缓冲器和/或高速缓存,所以用于设置废弃指示符的值的逻辑可以通过高速缓存控制器132、加载比较器144(0)-144(2)、l2高速缓存110(或其高速缓存控制器)、l3高速缓存113(或其高速缓存控制器)和/或存储器控制器缓冲器107中的一项或多项中的废弃逻辑电路(“log cir”)148来实现。如下面参考图3a和图3b更详细地讨论的,在中间存储器146是缓冲器或高速缓存的实施例中,废弃指示符可以是有效性指示符,其值被设置为指示该条目不再有效(例如,作为非限制性示例,通过将有效性指示符的值设置为“假”或零(0))。中间存储器146是高速缓存
的实施例可以提供废弃指示符是脏指示符,其值被设置为指示该条目的内容尚未被修改。因此,在后一实施例中,设置废弃指示符的值可以包括将脏指示符的值设置为“假”或零(0),使得高速缓存线的内容将不会被写入系统存储器108。
30.在一些实施例中,在条目的废弃指示符的值被设置之后,基于处理器的设备100可以检测废弃指示符指示该条目可以被重新使用,并且可以在该条目的内容被写入系统存储器108之前释放该条目以用于重新使用。例如,在中间存储器146是缓冲器或高速缓存并且废弃指示符是缓冲器条目的有效性指示符的实施例中,基于处理器的设备100可以检测缓冲器或高速缓存条目不再有效,并且可以重新使用该缓冲器或高速缓存条目。类似地,在中间存储器146是高速缓存并且废弃指示符是高速缓存条目的脏指示符的实施例中,基于处理器的设备100可以检测到高速缓存条目不脏(即,不包含经修改的数据),并且可以避免将该高速缓存条目的内容写入系统存储器108。
31.根据pe 102是基于处理器的设备100的多个pe中的一个pe的一些实施例,在检测到废弃指示符指示该条目可以被重新使用之后,基于处理器的设备100可以被配置为取消从第一pe(例如,pe 102)到基于处理器的设备100的多个pe中的一个或多个其他pe的、与存储器地址140相对应的一致性操作。例如,传统上,pe 102可以被配置为更新基于处理器的设备100的其他pe,以指示作为对存储器地址140的存储器存储操作的结果,高速缓存的高速缓存条目已改变状态(例如,作为非限制性示例,已被修改或已宣布为无效)。因此,传统上,pe 102可以被配置为执行一致性操作,以将状态改变通知给基于处理器的设备100的其他pe。然而,执行本文所描述的最终存储器存储操作可以使这种一致性操作变得不必要,因此当执行最终存储器存储操作时,pe 102可以取消与存储器地址140相对应的这种一致性操作。
32.基于处理器的设备100的实施例还可以被配置为在设置该条目的废弃指示符的值之后,在存储器存储指令116的结果被提交到系统存储器108之前,取消对存储器地址140的存储器存储指令116(即,将数据写入用于执行最终存储器加载操作的中间存储器146内的条目的存储器存储指令116)。这可以节省原本在完成存储器存储指令116的处理中消费的系统资源,即使存储器加载指令118已经使基于处理器的设备100知道要存储在存储器地址140处的内容将不会被任何后续的存储器加载指令访问。基于处理器的设备100的一些实施例可以通过被配置为在执行由存储器加载指令118指示的存储器加载操作之后覆写该条目的内容来提供进一步的安全性。
33.为了示出与用于指示最终存储器加载操作的图1的存储器加载指令118相对应的示例性存储器加载操作,提供了图2a和图2b。图2a示出了在功能上与图1的存储器加载指令118相对应的存储器加载指令200。在图2a的示例中,存储器加载指令200包括定制操作码202(即,由底层isa专门提供的用于明确指示存储器废弃的操作码)。相反,图2b示出了包括现有操作码206和定制最终读取指示符208的存储器加载指令204。现有操作码206对应于由isa提供的用于传统存储器加载操作的操作码,而定制最终读取指示符208包括可以被设置为指示要被执行的存储器加载操作是到指定存储器地址的最终存储器加载操作的附加指示符(例如,位指示符)。
34.图3a和图3b分别示出了可以在其上执行快速存储器废弃操作的图1的中间存储器146的示例性缓冲器和高速缓存实施例。在图3a的示例中,中间存储器146包括缓冲器300,
其可以对应于例如,作为非限制性示例,图1的存储缓冲器134、写回缓冲器136、预提交缓冲器138和/或存储器控制器缓冲器107。缓冲器300包括多个条目302(0)-302(b),每个条目与指示关联的条目302(0)-302(b)是否处于有效状态的对应的有效性指示符304(0)-304(b)相关联。如上所述,对于中间存储器146是诸如缓冲器300的缓冲器的实施例,有效性指示符304(0)-304(b)中的每个有效性指示符可以被认为是关联的条目302(0)-302(b)的废弃指示符306。
35.在图3b中,中间存储器146包括高速缓存308,其可以对应于例如,作为非限制性示例,图1的数据高速缓存130、l2高速缓存110和/或l3高速缓存112。如图3b所示,高速缓存308包括多个条目310(0)-310(c),每个条目与指示关联的条目310(0)-310(c)是否包含脏的(即,经修改的)数据的对应的脏指示符312(0)-312(c)相关联。多个条目310(0)-310(c)中的每个条目还与指示关联的条目310(0)-310(c)是否处于有效状态的对应的有效性指示符314(0)-314(c)相关联。因此,对于中间存储器146是诸如高速缓存308的高速缓存的一些实施例,脏指示符312(0)-312(c)中的每个脏指示符可以被认为是关联的条目310(0)-310(c)的废弃指示符306,在同时一些实施例可以使用有效性指示符314(0)-314(c))中的每个有效性指示符作为关联的条目310(0)-310(c)的废弃指示符306。
36.图4a和图4b示出了用于由图1的基于处理器的设备100提供快速存储器废弃的示例性操作400。为了清楚起见,在描述图4a和图4b时参考了图1、图3a和图3b的元件。根据一些实施例,图4a中的操作400开始于基于处理器的设备100的pe 102的执行流水线114接收包括存储器地址140的存储器加载指令118,存储器加载指令118指示来自存储器地址140的最终存储器加载操作(框402)。基于处理器的设备100在基于处理器的设备100的系统存储器108外部的中间存储器146的多个条目302(0)-302(b)、310(0)-310(c)中定位与存储器地址140相对应的条目(例如,图3a和图3b的条目302(0)或310(0)中的一个条目)(框404)。然后,基于处理器的设备100使用条目302(0)、310(0)执行最终存储器加载操作(框406)。
37.接下来,基于处理器的设备100设置条目302(0)、310(0)的废弃指示符306的值,其中条目302(0)、310(0)的废弃指示符306指示在条目302(0)、310(0)的内容被写入系统存储器108之前条目302(0)、310(0)可以被重新使用(框408)。在一些实施例中(例如,在中间存储器146是缓冲器或高速缓存的情况下),框408用于设置废弃指示符306的值的操作可以包括例如,设置条目302(0)的有效性指示符304(0)的值以指示条目302(0)不再有效(框410)。一些实施例(例如,在中间存储器146是高速缓存的情况下)可以提供,框408用于设置废弃指示符306的值的操作可以包括例如,设置条目310(0)的脏指示符312(0)的值以指示条目310(0)的内容尚未被修改(框412)。在一些实施例中,处理可以在图4b中继续。
38.现在参考图4b,示出了可以由基于处理器的设备100执行的进一步操作。在一些实施例中,接下来,基于处理器的设备100可以取消由存储器存储指令116向存储器地址140发起的待决存储器存储操作,存储器存储指令116在程序顺序中在存储器加载指令118之前(框414)。一些实施例可以提供,基于处理器的设备100检测条目302(0)、310(0)的废弃指示符306指示条目302(0)、310(0)可以被重新使用(框416)。响应于检测到废弃指示符306指示条目302(0)、310(0)可以被重新使用,基于处理器的设备100可以在条目302(0)、310(0)的内容被写入系统存储器108之前释放条目302(0)、310(0)以用于重新使用(框418)。
39.根据一些实施例,基于处理器的设备100可以检测条目302(0)、310(0)的废弃指示
符306指示条目302(0)、310(0)可以被重新使用(框420)。响应于检测到废弃指示符306指示条目302(0)、310(0)可以被重新使用,在pe 102是多个pe中的一个pe的实施例中,基于处理器的设备100可以取消从第一pe(例如,pe 102)到基于处理器的设备100的多个pe中的一个或多个其他pe的、与存储器地址140相对应的一致性操作(框422)。一些实施例可以提供,基于处理器的设备100可以覆写条目302(0)、310(0)的内容(框424)。
40.图5是提供快速存储器废弃的诸如图1的基于处理器的设备100的示例性基于处理器的设备500的框图。基于处理器的设备500可以是包括在电子板卡中的一个或多个电路,诸如印刷电路板(pcb)、服务器、个人计算机、台式计算机、膝上型计算机、个人数字助理(pda)、计算板、移动设备或任何其他设备,并且可以表示例如服务器或用户的计算机。在该示例中,基于处理器的设备500包括处理器502。处理器502代表一个或多个通用处理电路,诸如微处理器、中央处理单元等,并且可以对应于图1的pe 102。处理器502被配置为执行指令中的处理逻辑,以用于执行本文讨论的操作和步骤。在该示例中,处理器502包括用于指令的临时、快速访问存储器存储的指令高速缓存504和指令处理电路510。从存储器,诸如通过系统总线506从系统存储器508,提取或预提取的指令被存储在指令高速缓存504中。指令处理电路510被配置为处理提取到指令高速缓存504中的指令,并处理指令以供执行。
41.处理器502和系统存储器508耦合到系统总线506(对应于图1的互连总线104),并且可以互耦合包括在基于处理器的设备500中的外围设备。众所周知,处理器502通过在系统总线506上交换地址、控制和数据信息来与这些其他设备通信。例如,处理器502可以将总线事务请求传送到作为外围设备的示例的系统存储器508中的存储器控制器512。尽管未在图5中示出,但是可以提供多个系统总线506,其中每个系统总线构成不同的结构。在该示例中,存储器控制器512被配置为向系统存储器508中的存储器阵列514提供存储器访问请求。存储器阵列514由用于存储数据的存储位单元的阵列组成。系统存储器508可以是只读存储器(rom)、闪存、动态随机存取存储器(dram)(诸如同步dram(sdram)等),以及静态存储器(例如,闪存、静态随机存取存储器(sram)等),作为非限制性示例。
42.其他设备可以连接到系统总线506。如图5所示,这些设备可以包括系统存储器508、一个或多个输入设备516、一个或多个输出设备518、调制解调器524和一个或多个显示控制器520,作为示例。(多个)输入设备516可以包括任何类型的输入设备,包括但不限于输入键、开关、语音处理器等。(多个)输出设备518可以包括任何类型的输出设备,包括但不限于音频、视频、其他视觉指示器等。调制解调器524可以是被配置为允许向和从网络526交换数据的任何设备。网络526可以是任何类型的网络,包括但不限于有线或无线网络、专用或公共网络、局域网(lan)、无线局域网(wlan)、广域网(wan)、蓝牙tm网络和因特网。调制解调器524可以被配置为支持所需的任何类型的通信协议。处理器502还可以被配置为通过系统总线506访问(多个)显示控制器520以控制发送到一个或多个显示器522的信息。(多个)显示器522可以包括任何类型的显示器,包括但不限于阴极射线管(crt)、液晶显示器(lcd)、等离子显示器等。
43.图5中的基于处理器的设备500可以包括指令集528,其可以用基于到达的显式消费者命名模型来编码,以由处理器502针对根据指令期望的任何应用来执行。指令528可以存储在系统存储器508、处理器502和/或指令高速缓存504中,作为非瞬态计算机可读介质530的示例。指令528还可以在其执行期间完全或至少部分地驻留在系统存储器508内和/或
处理器502内。指令528还可以经由调制解调器524在网络526上发送或接收,使得网络526包括计算机可读介质530。
44.虽然在示例性实施例中计算机可读介质530被示为单个介质,但术语“计算机可读介质”应被视为包括存储一个或多个指令集528的单个介质或多个介质(例如,集中式或分布式数据库,和/或相关联的高速缓存和服务器)。术语“计算机可读介质”还应被视为包括能够存储、编码或携带指令集以供处理设备执行并且使处理设备执行本文公开的实施例的任何一个或多个方法的任何介质。因此,术语“计算机可读介质”应被视为包括但不限于固态存储器、光介质和磁介质。
45.本文公开的实施例包括各种步骤。本文公开的实施例的步骤可以由硬件组件形成,或者可以实施在机器可执行指令中,机器可执行指令可用于使利用指令编程的通用或专用处理器执行这些步骤。备选地,这些步骤可以通过硬件和软件的组合来执行。
46.本文公开的实施例可以作为计算机程序产品或软件来提供,该计算机程序产品或软件可以包括其上存储有指令的机器可读介质(或计算机可读介质),该指令可用于对计算机系统(或其他电子设备)进行编程以执行根据本文公开的实施例的过程。机器可读介质包括用于以机器(例如,计算机)可读的形式存储或传输信息的任何机制。例如,机器可读介质包括:机器可读存储介质(例如,rom、随机存取存储器(“ram”)、磁盘存储介质、光存储介质、闪存设备等)等。
47.除非另有特别说明并从前面的讨论中明显看出,否则可以理解,在整个说明书中,利用诸如“处理”、“计算”、“确定”、“显示”等的术语的讨论指的是计算机系统或类似的电子计算设备的动作和过程,其将表示为计算机系统的寄存器内的物理(电子)量的数据和存储器操纵和转换成类似地表示为计算机系统存储器或寄存器或其他这种信息存储、传输或显示设备内的物理量的其他数据。
48.本文呈现的算法和显示并不固有地与任何特定的计算机或其他装置相关。根据本文的教导,各种系统可以与程序一起使用,或者可以证明构造更专门的装置来执行所需的方法步骤是方便的。各种系统所需的结构将从上面的描述中看出。此外,本文描述的实施例不参考任何特定编程语言来描述。应当理解,可以使用各种编程语言来实现本文描述的实施例的教导。
49.本领域技术人员将进一步认识到,结合本文公开的实施例描述的各种说明性逻辑块、模块、电路和算法可以被实现为电子硬件、存储在存储器或另一计算机可读介质中并由处理器或其他处理设备执行的指令、或两者的组合。本文描述的分布式天线系统的组件可以在任何电路、硬件组件、集成电路(ic)或ic芯片中使用,作为示例。本文公开的存储器可以是任何类型和大小的存储器,并且可以被配置为存储所需的任何类型的信息。为了清楚地说明这种可互换性,各种说明性组件、框、模块、电路和步骤已在上面总体上根据它们的功能进行了描述。如何实现这种功能取决于对整体系统施加的特定应用、设计选择和/或设计约束。技术人员可以针对每个特定应用以不同的方式实现所描述的功能,但是这种实现决定不应被解释为导致偏离本实施例的范围。
50.结合本文公开的实施例描述的各种说明性逻辑块、模块和电路可以利用被设计为执行本文描述的功能的处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或其他可编程逻辑器件、分立门或晶体管逻辑、分立硬件组件或其任何组合
来实现或执行。此外,控制器可以是处理器。处理器可以是微处理器,但备选地,处理器可以是任何传统处理器、控制器、微控制器或状态机。处理器还可以被实现为计算设备的组合(例如,dsp和微处理器的组合、多个微处理器、一个或多个结合dsp核的微处理器或任何其他这种配置)。
51.本文公开的实施例可以实施在硬件中和存储在硬件中的指令中,并且可以驻留在例如ram、闪存、rom、电可编程只读存储器(eprom)、电可擦除可编程只读存储器(eeprom)、寄存器、硬盘、可移动盘、cd-rom或本领域中已知的任何其他形式的计算机可读介质中。示例性存储介质被耦合到处理器,使得处理器可以从存储介质读取信息以及向存储介质写入信息。备选地,存储介质可以集成到处理器。处理器和存储介质可以驻留在asic中。asic可以驻留在远程站中。备选地,处理器和存储介质可以作为分立组件驻留在远程站、基站或服务器中。
52.还应注意的是,描述了在本文的任何示例性实施例中描述的操作步骤以提供示例和讨论。所描述的操作可以以除所示序列之外的许多不同的序列来执行。此外,在单个操作步骤中描述的操作实际上可以在多个不同的步骤中执行。此外,可以组合在示例性实施例中讨论的一个或多个操作步骤。本领域技术人员还将理解,可以使用各种科技和技术中的任何一种来表示信息和信号。例如,可以在整个上述描述中引用的数据、指令、命令、信息、信号、位、符号和芯片可以由电压、电流、电磁波、磁场或粒子、光场或粒子或其任何组合来表示。
53.除非另有明确说明,否则本文提出的任何方法不会被解释为要求按特定顺序执行其步骤。因此,在方法权利要求实际上没有记载其步骤要遵循的顺序的情况下,或者在权利要求或说明书中没有另外明确地声明这些步骤将被限制在特定顺序的情况下,不旨在暗示任何特定顺序。
54.对于本领域技术人员而言显而易见的是,在不背离本发明的精神或范围的情况下可以进行各种修改和变化。由于本领域技术人员可能会想到包含本发明精神和实质的所公开实施例的修改、组合、子组合和变化,因此本发明应当被解释为包括所附权利要求及其等同形式的范围内的一切。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献