在处理器中配置功率管理功能的制作方法

文档序号:11250429阅读:1312来源:国知局
在处理器中配置功率管理功能的制造方法与工艺
本申请是针对pct国际申请号为pct/us2013/048042、国际申请日为2013年6月27日、进入中国国家阶段的申请号为201380040201.8,题为“在处理器中配置功率管理功能”的发明专利申请的分案申请。各实施例涉及集成电路的功率管理。
背景技术
:半导体处理和逻辑设计的进步可使集成电路设备上可以存在的逻辑量增大。结果,计算机系统配置从系统中的单一或多个集成电路发展到单个集成电路上的多个硬件线程、多个核、多个设备和/或完整的系统。另外,随着集成电路的密度增长,计算系统(从嵌入式系统到服务器)的功率要求也逐步升高。此外,软件低效率以及其对硬件的要求也导致计算设备能源消耗的增大。事实上,某些研究指出,计算设备消耗诸如美国之类的国家的全部电力供应的相当大的百分比。结果,迫切需要与集成电路相关联的能量效率和节省。随着服务器、台式计算机、笔记本、超极本、平板电脑、移动电话、处理器、嵌入式系统等等变得越来越流行(从包括在典型的计算机中、汽车,以及电视机到生物技术),这些需要将增大。功率和热管理问题是在基于计算机的系统中的所有部分中都需要考虑的问题。在服务器领域,电力的成本驱动对低功率系统的需求,而在移动系统中,电池寿命以及热限制使这些问题相关。优化系统以便在最小功耗下取得最大性能通常是使用操作系统(os)或系统软件来控制硬件元件来完成的。最现代的os使用高级配置和电源接口(acpi)标准(例如,2006年10月10日发布的rev.3.0b)来优化这些领域的系统。acpi实现允许处理器核处于不同的节能状态或c状态(也被称为低功率或闲置状态),一般被称为c0到cn状态,c0是活动状态,较高的是较深的睡眠状态。除节能状态之外,在acpi中还提供性能状态或所谓的p状态。这些性能状态可以允许当核处于活动状态(c0)时对性能-功率级别进行控制。一般而言,可以有多个p状态可用,从p0-pn。可以有一般被称为超频(turbo)模式的一系列较高频率/性能状态。附图说明图1是根据本发明的一实施例的系统的一部分的框图。图2是根据本发明的一个实施例的用于处理从多核处理器内的线程接收到的性能状态请求的方法的流程图。图3是根据本发明的另一实施例的处理器的框图。图4是根据本发明的一个实施例的通信量传感器的框图。图5是根据本发明的一个实施例的处理器的框图。图6是根据本发明的一个实施例的处理器核的框图。图7是根据本发明的另一实施例的多核处理器的框图。图8是根据本发明的一个实施例的系统的框图。具体实施方式各实施例提供有效率地并且可配置地以动态功率/性能级别操作处理器的技术,以允许在系统内细微地调整处理器,以解决对于其中配置了处理器的给定类型的平台的问题。各实施例可以特别适用于多核处理器,其中,多个核中的每一个都可以在独立电压和频率点操作。如此处所使用的,术语“域”被用来表示在相同电压和频率点操作的硬件和/或逻辑的集合。另外,多核处理器还可以包括其他非核处理引擎,诸如固定功能单元、图形引擎等等。这样的处理器可包括核之外的独立域,诸如与图形引擎相关联的一个或多个域(此处被称为图形域),以及与非核电路相关联的一个或多个域,此处被称为非核或系统代理。虽然可以在单一半导体管芯上形成多域处理器的许多实现,但是,其他实现可以通过其中不同的域可以存在于单一封装的不同的半导体管芯上的多芯片封装来实现。如此处所使用的,术语“硬件线程”、“线程”,以及逻辑核全部都可互换地使用。根据基于os的acpi机制,处理器还可以在各种功率和性能状态或级别操作。相对于功率状态,acpi指定不同的功率消耗状态,一般被称为c状态,c0,c1到cn状态。当核活跃时,它在c0状态运行,而当核空闲时,它可以被置于核低功率状态,也叫做核非零c状态(例如,c1-c6状态)。当多核处理器的所有核都处于核低功率状态时,可以将处理器置于封装低功率状态,诸如封装c6低功率状态。除这些功率状态之外,处理器还可以被配置成在多种性能状态,p状态,即,从p0到pn中的一种状态下操作。一般而言,p1性能状态可以对应于可以由os请求的最高保证的性能状态。除此p1状态之外,os还可以请求较高性能状态,即,p0状态。如此,此p0状态可以是机会性状态,其中,当有功率和热预算可用时,处理器硬件可以配置处理器或其至少一些部分,以便以高于保证的频率操作。在许多实现中,处理器可包括多个高于此p1频率的所谓的元频率(binfrequency),此处也被称为超频模式频率。最高这样的频率可以对应于最大超频频率(p01),这是域可以操作的最高频率。如此,此最大超频频率是大于p1频率的多个超频模式频率的最高端,并对应于能够实现的最大非保证的最高性能级别。如此处所描述的,可以跨所有核或基于每个硬件线程地启用/禁用超频。各实施例提供配置机制,以与处于数据封装级别和单个核级别(通过硬件线程)的超频控制一起操作。注意,术语“性能状态”或“p状态”可以与术语“操作频率”(或更一般而言“频率”)可互换地使用,因为核的操作频率与其性能具有直接关联。因此,如此处所使用的,较高性能状态与较高操作频率相互关联。根据本发明的一个实施例的处理器可以包括完全集成电压调节(fivr),以便可以提供每核p状态(pcps)。如此,可以在彼此独立的频率操作核。虽然参考特定集成电路(诸如在计算平台或处理器中)描述了下列实施例,但其他实施例也适用于其他类型的集成电路和逻辑设备。可以将此处所描述的各实施例的类似的技术和教示应用于也可以得益于更好的能量效率和能量节约的其他类型的电路或半导体器件。例如,所公开的各实施例不仅限于任何特定类型的计算机系统,也可以用于诸如手持式设备、片上系统(soc)设备以及嵌入式应用之类的其他设备中。手持式设备的某些示例包括蜂窝电话、网际协议设备、数码相机、个人数字助理(pda)以及手持式pc。嵌入式应用通常包括微控制器、数字信号处理器(dsp)、网络计算机(netpc)、机顶盒、网络中枢、广域网(wan)交换机,或能够执行下面所描述的功能和操作的任何其他系统。此外,此处所描述的设备、方法,以及系统也不仅限于物理计算设备,但是,也可以涉及对于节能和效率的软件优化。如在下面的描述中显而易见地看出,此处所描述的方法、设备以及系统的各实施例(无论引用硬件、固件、软件或其组合)为未来的“绿色技术”所不可缺少的,诸如,用于涵盖美国经济的大部分的产品中的电能节省和能量效率。虽然处理器可以具有各种动态功率/性能特征,但是,各实施例可以被用来提供这样的特征中的某些或全部的可配置性。为了此处的说明,将详细地描述三个动态功率/性能特征:每个核p状态(pcps)、非核频率调整(ufs)以及有能量效率的超频(eet)。pcps特征允许多核处理器的单个核在总体功率、电气、热以及库存单位(sku)约束内以不同频率并行地操作。ufs特征使用传感器值来动态地调整非核互连频率,以在核和非核互连之间更好地分配功率,以提高性能,在空闲情况下节省功率。eet特征基于核停止(例如,当在核上执行的一个或多个线程正在等待负载或存储时),在核的超频范围内动态地调整频率。因为无论由于工作负荷混合还是应用存储器访问模式导致停止的核不是频率友好的并且不能从提高的操作频率提供改善的性能,所以eet操作可以改善处理器中的功率/性能折衷。在各实施例中,可以提供可配置参数,以允许用户混合并匹配上述特征(和/或其他功率/性能特征)。另外,还可以使这些特征是可配置的,允许对系统进行微调,满足不同的市场细分的需求,包括但不限于云计算、高性能计算、数据中心以及存储等等。如此,单一处理器可以提供可以利用跨计算连续性的微分的选择实现的功率和性能特征,带有范围广泛的使用模型。在各实施例中,pcps基于与物理核相关联的逻辑核上的os请求的性能,允许单个物理核在不同的电压/频率点并行地操作。即,可以独立于其他核(在整个系统功率和热约束内)配置每一个核的操作点。在本发明的一个实施例中,由于集成在处理器中的完全集成的电压调节器(fivr),pcps是可行的。此调节器允许每一个核的独立配置,其中配置包括但不仅限于,电压设置、频率设置及影响每一个核的功率消耗的其他参数。与在共同的电压/频率点(跨所有逻辑核,os请求的性能的最大值)操作多核处理器的所有核相比,pcps可以通过只在os确定为合适的高度运行物理核来实现电能节省。各实施例可以通过只向寻求功率的核分配多余功率预算来提高性能,允许它们更快地运行,并提高系统性能。在本发明的一个实施例中,处理器具有多个处理核和与多个处理核中的每一个耦合的功率控制模块。功率控制模块促进每一个核在独立于其他核的性能状态的性能状态下操作,其中,不违犯封装或系统的总体热和电气约束。如此,可以实现对功率消耗和性能更好的控制。例如,在多核处理器中,在热约束的环境中,只有几个核可以被允许在较高核频率下运行,从而允许所希望的工作负荷的执行,同时降低功率消耗,并因此降低温度。在其中处理器内的每一个核都具有其自己的电压调节器的fivr实现中,可以提供一个或多个附加电压调节器,用于与诸如非核逻辑、存储器控制器逻辑、功率控制单元等处理器内的其他组件一起使用。当然,在某些实施例中,单一电压调节器可以与处理器的一个或多个核和/或其他组件相关联。在一个实施例中,可以为处理器的非核电路提供专用的电压调节器,这将允许非核在不同的电压和频率下运行。对于以计算为中心的工作负荷,非核可以在较低的电压和频率下运行,导致在插槽级别朝向较高核频率应用功率节省。对于存储器和io密集型工作负荷,非核可以在较高电压和频率下运行,而核可以在较低的电压/频率下运行,补偿了非核中的较高功率消耗。在某些实施例中,可以扩展acpi表,以包括关于这些单个集成的电压调节器的信息,以允许每个核p状态控制。例如,可以使用4比特字段来传递p状态信息,并将它映射到每一个调节器的控制电压逻辑。如此,通过使用本发明的各实施例,可以控制每一个核,对于非对称的工作负荷,在不同的频率和/或电压操作。作为一个示例,可以控制多个核中的一个或几个在较高频率和/或电压下操作,而同时控制其余核在较低的电压/频率组合下操作,因此保持在给定热设计功率(tdp)范围内。如此,对于给定工作负荷,可以实现确定性的并且最佳性能能力选择。例如,寻求较高性能级别以便以第一方式处理数据的核可以在较高电压/频率下操作(这样的核可以执行诸如数据处理使用之类的任务,诸如数据-复制服务、数据分析、奇偶校验计算等等),而执行例如管理任务的核可以在较低的电压/频率下运行,以为tdp约束的环境提供最佳混合。如此,给定了热或tdp预算,并非当可能时机会主义地以较高频率运行所有核,而是各实施例以单个核为基础提供确定性的行为。现在参考图1,所示是根据本发明的实施例的系统的一部分的框图。如图1所示,系统100可以包括各种组件,包括处理器110,如图所示,该处理器110是多核处理器。处理器110可以通过外部电压调节器160耦合到电源150,调节器160可以执行第一电压转换,以向处理器110提供主要被调节的电压。可以看出,处理器110可以是包括多个核120a-120n的单管芯处理器。另外,每一个核还可以与单个电压调节器125a-125n相关联。相应地,可以提供fivr实现,以允许对每一个单个核的电压进行细粒度的控制,因而对功率和性能进行细粒度的控制。如此,每一个核都可以在独立电压和频率下操作,允许大灵活性,并提供用于平衡功率消耗与性能的广泛的机会。仍参考图1,根据本发明的一个实施例,除可以提供用于执行对处理器的多个功率管理特征的动态控制的信息之外,每一个核都还可包括各种硬件传感器及其他电路。更具体而言,如图1所示,每一个核都可包括核活动传感器122和核停止传感器124。在一个实施例中,核停止传感器124可以被配置成确定核的对应于等待存储/负载的度量的停止速率。可以以各种方式来确定此停止速率,从核被停止的i周期的简单计数到比较复杂的方式。在一个实施例中,核活动传感器122可以被配置成确定核的活动率。可以以各种方式来确定此活动率,从核活跃的的i周期的简单计数到比较复杂的方式。在一个实施例中,核活动传感器122可以被配置成计数其中核上的一个或多个线程处于活跃的c0状态的周期。不失一般性,假设一个物理核与两个逻辑处理器或硬件线程相关联,那么,该核具有等于当一个或多个相关联的逻辑核是活跃时(即,在观察窗口,在c0状态下)的时间活跃的或c0值。仍参考图1,额外的组件可以存在于处理器内,包括输入/输出接口132、另一接口134以及集成的存储器控制器136。可以看出,这些组件中的每一个都可以由另一集成的电压调节器125x来供电。在一个实施例中,接口132可以符合快速路径互连(qpi)协议,该协议在高速缓存一致性协议中提供点对点(ptp)链路,该高速缓存一致性协议包括多个层,包括物理层、链路层以及协议层。接口134又可以符合外围组件互连快速(pcietm)规范,例如,pciexpresstm规范基础规范版本2.0(2007年1月17日)。尽管为便于说明未示出,但是,可以理解,额外的组件可以存在于处理器110内,诸如非核逻辑、功率控制单元、及其他组件,诸如内部存储器,例如,一个或多个级别的缓存存储器层次结构等等。此外,尽管在图1的实现中是利用集成的电压调节器示出的,但是,各实施例不是限制性的。在各实施例中,pcps基于与物理核相关联的逻辑核上的os请求的性能,允许单个物理核在不同的电压/频率点并行地操作。与在共同的电压/频率点(跨所有逻辑核,os请求的性能的最大值)操作多核处理器的所有核相比,pcps可以通过只在os确定为合适的高度运行物理核来实现电能节省。各实施例可以通过只向寻求功率的核分配多余功率预算来提高性能,允许它们更快地运行,并提高系统性能。相应地,pcps配置允许将所有核组合为单一功率域或每个核具有功率域。功率域的数量又影响某些旧式p状态行为的实现,即,某些acpi参数,包括sw_any控制参数,如下面所描述的。基本输入输出系统(bios)对于pcps的支持包括配置标志和表条目。更具体而言,单一功率域(spd)指示符或标志可以存在于配置和状态寄存器(csr)中,例如,作为寄存器的比特。可以锁住此比特,在系统重新启动/复位时,只读一次。在一个实施例中,当此比特被置位时,它是处理器将充当用于功率目的的单一域的指示(如此,所有核都在单一p状态下操作)。相反,当此比特被复位时,它是处理器的每一个核都将充当用于功率目的的单一域的指示(如此,每一个核都可以在独立p状态下操作)。pcps支持还可以通过每个功率域的bios中的acpi表条目来实现。为在n物理核系统中的实现pcps,可以指定n个acpi功率域条目。为将所有核视为映射到单一功率域,可以指定这些多个条目中的单一条目。可以提供单独的条目,以便当所有核映射到单一功率域时使用。在系统重新启动时,acpi表和spd标志被读取一次。如果有多个功率域条目,并且spd标志没有置位,则可以使pcps的全部特征透明地对利用没有对于pcps的支持的旧式操作系统部署的系统可用。根据acpi规范,不同的功率管理模式是可能的,每一个模式都指出来自线程的性能状态变化请求对功率域具有什么影响。一般而言,有三个不同的功率管理模式可用,即,hw_all,sw_all和sw_any。一般而言,hw_all和sw_all类似地操作,因为给定功率域内的活跃的线程的最高请求的性能状态被选为要向该功率域施加的性能状态。相反,sw_any功率管理模式将导致功率域的性能状态是由该域上活跃的线程最近请求的性能状态。现在参考表1,所示是使用此spd标志以及单一功率控制(pctl)标志来支持hw_all、sw_all、sw_any的acpi模式的行为,该标志也可以在杂项功率管理机特定的寄存器(msr)上可用(例如,misc_pwr_mgmt(msr0x1aa)),并且取决于标志的状态,一般提供单一功率控制或多个域功率控制的配置。表1表2基于是否提供支持pcps的bios,示出了旧式os的行为的图示。表2注意,在上面的表2中,x是无关紧要的,n对应于处理器中的核的数量。现在参考表3,所示是根据本发明的一个实施例的利用pcps的可配置性的p状态处理的伪代码。表3事件:在任意逻辑核上的ospstate或cstate请求(即,硬件线程),即t,pstate(t)//如果cstate是c0,表示逻辑核活跃,因此其pstate被考虑//如果cstate>0,即非活跃,相关联的pstate被忽视if(single-power-domain){//spdif(sw_anymode){//single_pctl标记/比特new_pstate=pstate(t);//在io_firmconfig_msr上可用}else{//sw_all&hw_allnewpstate=max(处于cocstate的所有逻辑核的pstate(也称为活跃));//跨越与物理核相关联的多个逻辑核的最大pstate的硬件合并对此加速,与跨所有的//物理核上的固件计算不同。}else{//sw_all&hw_all&sw_any//在硬件中实现且可用作物理核级io寄存器中的字段new_pstate=max(在c0cstate中相关联的物理核上所有兄弟逻辑核的pstate);}if(new_pstate!=old_pstate){//发起核操作点变化流}如表3所示,用户可以在bios中定义多个功率域,并禁用spd标志以获得pcps功率和性能优点,相应地,进一步设置单一pctl标志,以判断所有活跃的线程或最近请求的线程p状态是否确定核p状态。当支持包括hw_all和sw_all的acpi模式时,其他用户可以使用pcps。此外,带有旧式os的部署可能禁用spd标志,并每个物理核地枚举功率域。对于试图始终在相同频率运行所有它们的核的部署,诸如其中寻求简化客户端记帐的云服务环境,不管os(旧式还是新的),可以设置spd标志,确保所有核都在相同电压/频率点操作,并在这方面平均地使用资源。作为示例,当云服务提供商安装较聪明的测量系统时,可以启用pcps,更多性能和电能节省是可获得的,可以相应地对用户进行计费。在其中希望较大的单个线程性能的域中,带有复位了的spd标志的pcps可以是最佳部署。试图得益于新的处理器硬件而没有时间利用pcps进行试验的消费者可以利用置位的spd标志来运行系统。现在参考图2,所示是用于处理从多核处理器内的线程接收到的性能状态请求的方法的流程图。可以看出,方法200从接收来自线程的功率和/或性能状态请求开始(框210)。注意,此线程可以是硬件线程或逻辑核,且请求可以是在处理器的诸如功率控制单元(pcu)之类的功率控制器中被接收。可另选地,可以在处理器的pcps算法在其上面执行的核内接收请求。仍参考图2,在菱形220,可以判断正在执行此线程的核是否处于低功率状态。如果是,则可以忽略请求,控制进入菱形222,在那里,可以判断封装中的所有核是否都处于低功率状态。如果是,则控制进入框225,在那里,封装可以进入睡眠状态。如果相反在菱形222,判断封装中的所有核并非都处于低功率状态,则控制进入框228,在那里,此核可以进入睡眠状态以节省功率。注意,给定核上的所有线程都处于低功率状态,如此,核可以被置于睡眠或其他低功率状态,以允许将功率重新分布到处于更活跃状态的其他核。如此,当核进入低功率状态时,可以收获否则分配给该核的功率,用于在其他核之间分配,例如,允许核中的一个或多个进入超频模式。如果相反封装中的所有核都处于睡眠状态,则可以将整体封装置于睡眠状态,以降低功率消耗。如果核不处于低功率状态,则控制进入菱形230,在那里,可以判断处理器是否被配置成在单一功率域模式下操作。在一个实施例中,此判断可以基于,例如,存在于处理器的控制寄存器中的spd指示符。仍参考图2,如果在菱形230判断处理器正在在单一功率域模式下操作,则控制进入菱形240,在那里,可以判断第一功率管理模式是否是活跃的。在一个实施例中,此第一功率管理模式可以对应于sw_any的acpi模式。在一个实施例中,可以从msr的字段中获取关于处理器正在哪种功率模式下操作的的判断。接着,可以通过os行为确定包括hw_all模式和sw_all模式的其他功率模式,该os行为在高级别跟踪应用行为和策略,是每个线程地设置p状态变化的寄存器值的主控。如此,在菱形240,如果判断第一功率管理模式是活跃的,则控制进入框260,在那里,所有核的候选性能状态都可以被设置为请求的性能状态。即,在此第一功率模式下,最近性能状态请求正在控制,如此,所有核都可以共同地被设置在此请求的性能状态下。如果相反在菱形240判断第一功率管理模式不活跃,则控制进入框250,在那里,所有核的候选性能状态都可以被设置为所有活跃的核的最大请求的性能状态。在此情况下,可以跨所有核的活跃的线程扫描,如此,确定最大请求的性能状态,并允许处理器的控制进入此性能状态。如果判断处理器正在在单一功率域模式下操作,则控制进入框270,在那里,可以判断第一功率管理模式是否是活跃的。如果是,则控制进入框272,在那里,核的候选性能状态可以被设置为请求的性能状态。否则,如果第一功率管理模式不活跃,则控制进入框274,在那里,核的候选性能状态都可以被设置为核上的所有活跃的线程的最大请求的性能。如此,可以实现每个核性能状态操作,每一个核都可以在独立性能状态下执行。如此,可以实现更大的性能,同时尽可能地节省功率。从全部框250、260、272以及274,控制接下来转到菱形280,以判断新设置的候选性能状态是否不同于以前的活跃的性能状态。如果不,方法可以结束。否则,如果存在性能状态的差异,则控制进入框290,在那里,功率控制器可以执行更改,如此,将合适的功率域操作移动到新设置的性能状态。虽然在图2的实施例中以此高级别示出的,但是,可以理解,本发明的范围在这方面不受限制。如上文所描述的,ufs允许对非核互连频率进行动态控制,以在核和非核之间更好地分配功率,以提高性能。各实施例可以监测各种信息,包括但不限于,互连流量、核活动级别,及确定处理器的非核电路的使用,检测拥挤和利用不足的其他信息。此信息可用于使这样的电路的操作频率适应变化的工作负荷特征,如此,获得功率和性能优点。注意,此非核电路可包括互连结构,以将核耦合到缓存及其他芯片内和芯片外电路,一个或多个缓存存储器,以及诸如pcu之类的某些非核逻辑电路等等。当处理器封装处于闲置状态时,即,当全部核都处于低功率状态时,仅有的通信量源于附接的输入/输出(io)设备和多插槽系统中的兄弟插槽。在这样的情况下,可以将互连操作频率降低到足以充裕地满足io和插槽间通信量需求的值,该值此处被称为io流量阈值频率。虽然本发明的范围在这方面不受限制,但是,在某些实施例中,此阈值频率可以在大致1.2和4.0千兆赫(ghz)(作为示例)之间。在确定用于操作非核的适当的频率时,可以评估涉及互连的实际使用的不同的信息。在一个实施例中,可以从各种传感器和检测器(包括上文所描述的核活动传感器和核停止传感器)中获取这样的信息。通过使用来自这些传感器的信息,可以识别涉及非核竞争、共享缓存中的压力或带宽限制的信息。然而,核停止不提供对沿着互连的局部的拥挤的可见性,也不确定性地指出利用不足,关于这两者的信息对更好的功率利用和性能可能是有价值的。为此,各实施例还可以提供一组分布式的可配置的通信量传感器,这些传感器可用于测量非核电路内的各点处的通信量。在一个实施例中,这样的传感器可以位于耦合到互连的每一个接口单元处,例如,在每一个互连停止处,在那里,互连被配置为环形互连。然而,其他拓扑可以是环形、网格、星形、树形,等等。可以使用通信量传感器来测量沿着每一种数据类型的每一个方向,以及沿着每一个互连段的通信量。如此,各实施例可以监测互连的使用来检测通信量拥挤、利用不足以及非核竞争。pcu接收所有传感器数据,且可以使用pcu的非核频率控制逻辑来分析数据,以根据需要,使非核频率适应。根据本发明的一个实施例的非核频率调整算法的目标是在核和互连功率平面之间分配功率,以提高总体系统性能,并可能节省功率。在每一个功率平面,可以修改电压和频率。现在参考表4,所示是根据本发明的一个实施例的非核频率调整算法的伪代码。表4在所示出的代码中,uncore_floor是服务质量(qos)最低值设置,表示允许的最低非核频率,而io_plimit是从多插槽组件和/或附接的io设备中的兄弟插槽舒服地维持通信量的适当的最低值。此参数可以是基于来自这些组件的通信量的动态量。现在参考图3,所示是根据本发明的另一个实施例的处理器的框图。如图3所示,处理器300可以包括多个代理3100-310n。这些代理中的每一个都可以对应于给定通信量代理,该给定通信量代理可以充当通过互连315在代理之间传递的通信量的接收器和源,互连315在图3所示出的实施例是环形互连。虽然本发明的范围在这方面不受限制,但是,可以存在许多不同类型的代理,包括核、处理引擎,固定功能单元、io连接、存储器,插槽间连接等等。为传递用于非核频率控制的通信量信息,可以在每一个代理310和pcu320之间提供进一步的互连330a-330n。可以看出,可以存在双向路径,以便可以传递,例如,配置与每一个互连停止相关联的通信量传感器的控制信息。另外,还可以提供轮询或推信息的控制信号。接着,将对应的通信量传感器数据传递到pcu320。注意,图3中的各种代理310的例图一般被理解为包括互连逻辑(一般被称为接口单元)的小部分,包括缓冲器、控制逻辑等等,以允许通过在给定代理和互连315之间连接的互连停止在代理之间传递信息。另外,这些互连停止中每一个都可以包括一个或多个通信量传感器。虽然在某些实施例中位于此位置,但是,可以理解,通信量传感器可以位于别处,诸如位于代理本身的接口处,或沿着互连的其他部分。现在参考图4,所示是根据本发明的实施例的通信量传感器的框图。如图4所示,通信量传感器370可以是位于互连停止处或与互连相关联的其他接口逻辑处的单一通信量传感器。一般而言,根据本发明的一个实施例,通信量传感器370可以包括各种存储器以提供传感器的控制和配置,以及允许维护通信量测量值。如图4所示,通信量传感器370可以包括控制寄存器380。在各实施例中,控制寄存器380可以包括多个字段,其中每一个字段都可以在,例如,pcu逻辑的控制之下设置。可以看出,控制寄存器380可包括互连上的每一种类型的可能的通信的通信量类型字段372,包括控制字段、地址字段、数据字段以及确认字段。另外,控制寄存器370可以包括复位读取(reset-on-read)字段375、索引字段377以及写入字段378。一般而言,通信量类型字段372(例如,控制、地址、数据和确认字段)中每一个都可包括多个比特,每一个比特都指出是否计数特定方向的通信量。相应地,这些通信量类型字段可以充当过滤器,以便通信量传感器只计数某些方向的通信量,例如,用于效率和功率消耗目的。在一个实施例中,可以控制方向的三维,即,北/南、东/西,进/出。在一个实施例中,这些字段中的任何一个的给定比特的逻辑高值表示将计数沿指示的方向的对应的类型的通信量。注意,可以通过增大多个计数器3900-390m中的对应的计数器中的值,进行计数操作本身。每一个这样的计数器都可以维护沿着给定方向元组的数据类型的计数。回头参考控制寄存器370,可以设置复位读取字段375,以指出应该在读取操作时复位计数器390。接着,可以使用索引字段377来索引单个计数或所有计数中的最大值。即,在一个实施例中,一组比特值可以对应于要被读取的计数器。例如,对于6个不同的计数器(例如,一种通信量类型,上/下、进/出,左/右),3个比特可以唯一地索引计数器中的一个。相反,如果索引字段377被设置为全部为零,则可以提供所有计数中的最大值。最后,可以响应于轮询请求,设置写入字段378,以便可以将指出的计数器(例如,根据索引字段377)写入到状态寄存器385中。在各实施例中,如此,状态寄存器385可以包含要被读取或被写入的值,其大小可以确定为保存可能的最大通信量计数。不失一般性,通信量可以被确定为每一种类型和方向的通信量的函数。如此,通信量的变化的组合是可能的,诸如确认之外的加权数据。如此,为实现控制寄存器370的写入,pcu可以提供要被存储在状态寄存器385中的值,然后,在写入操作时,例如,如由写入字段379所指示的,可以将状态寄存器385中的值存储到控制寄存器370中。这样一来,通信量传感器的灵活的彼此独立的配置是可能的。虽然在图4的实施例中以此高级别示出的,但是,可以理解,本发明的范围在这方面不受限制。此外,还可以理解,可以在每一互连停止上复制图4所示出的通信量传感器370。在许多实施例中,单一通信量传感器可以与每一个互连停止相关联,例如,位于输入端口或输出端口处的,但是,各实现可以避免每个互连停止,提供两个这样的通信量传感器,以便缩小有效面积和功率消耗。进一步地,可以理解,pcu(例如,图3的pcu320)可以包括传感器掩码,以存储有选择地控制传感器的操作的信息。在一个实施例中,此掩码可以包括多个比特,每一个比特都与给定通信量传感器相关联。如此,可以关闭与互连停止相关联的传感器,以节省功率和处理时间。例如,第一(例如,高)状态的比特可以启用对应的传感器,第二(例如,低)状态的比特可以禁用对应的传感器。如此,可以禁用充当中继的互连停止(或不那么关键的停止)。如此,在一个实施例中,可以提供多个通信量传感器,每一个都测量代理被耦合到的互连的点处的通信量。在这样的实施例中,传感器可包括控制存储器以存储控制信息,以指出要被测量的通信量的方向和类型,状态存储器以存储通信量测量值并响应于请求向控制器提供测量值,以及多个计数器,每一个计数器都存储对于方向和通信量类型的通信量测量值。注意,控制器可以被包括到pcu中,其中控制器可以用于设置控制存储器并读取或被传递来自状态存储器的流量测量值。控制器还可以包括传感器掩码以存储一组指示符,每一个指示符都与传感器相关联,并具有禁用对应的传感器的第一值以及启用传感器的第二值。根据各实施例,可以使用csr寄存器中的ufs启用/禁用标志,来配置ufs控制,该标志在系统重新启动时可以只读取一次。注意,此csr可以是存储spd标志的相同csr,或者也可以是不同的csr。另外,用户还可以配置ufs适应周期性,在一个实施例中,该适应周期性可以以毫秒为单位来设置,还可以存储在诸如系统代理功率管理寄存器之类的csr中。为执行ufs,功率控制电路使用存储在msr中的数据,该msr提供用于非核频率的最高和最低值。如此,用户可以配置他是否希望:带有其相关联的功率/性能优点的完整的ufs(并进一步提供控制ufs适应周期性的能力);让非核互连在核频率下操作(假如启用了单一功率域操作);或固定频率非核。具有可接受的性能(当前部署购买新的服务器硬件)的消费者可以选择跟随核频率的非核互连,以便这些消费者将立即得益于更快的处理器硬件。对存储器延迟、数据检索时间等等敏感的消费者/应用,诸如搜索引擎应用可以选择禁用ufs,并设置最低值和最高值非核频率,以获取固定的非核频率。某些用户可以选择实验,以确定满足给定服务质量(qos)度量的理想最低值。利用适当地设置的最低值频率,启用ufs特征将带来额外的功率/性能优点。对于带有已知应用程序设置的特征的市场部分,通过设置观察窗口长度,也可以进行ufs适应周期性调节,观察窗口长度,在一个实施例中,可以作为如上文所描述的控制寄存器的字段来存储。在一个实施例中,此周期性调节字段可以具有以毫秒的整数倍设置的值。选择的观察窗口长度越长,非核频率控制对应用设置的行为中的变化的响应性越低。另一方面,非常短的窗口可能会通过颠簸,妨碍给定工作负荷的进度。现在参考表5,所示是根据本发明的一个实施例的用于实现可配置的ufs控制的伪代码。表5在上面的表5的代码中,如果ufs标志被禁用,则非核频率可以跟随核频率的值(假设单一功率域实现),以便在每次更新时非核频率被更新到核频率。否则,如果非核最低和最高值的配置的设置不相同,并且满足适应时段,则可以对各种信息进行分析,包括非核互连通信量、核停止、io通信量以及插槽间通信量,还有其他信息。如果这样的分析判断应该缩小非核频率,则这样的频率降低可以发生。相反,如果基于分析判断应该发生增大,则这样的增大可以发生。注意,在最低和最高值相等的情况下,可以提供固定的非核频率。当处理器在超频范围内操作时,功率与频率是非线性的。除非性能改善是通过在超频范围内操作来获得的,增大的功率消耗是不正当的。各实施例可以使用有能量效率的超频(eet)来帮助基于核度量信息,诸如核停止(与数据负载或存储的物理核相关联的所有逻辑线程的等待的程度),确定超频范围中的核操作频率。停止是在核上运行的应用的工作负荷混合和缓存/存储器访问模式的函数。缓存友好的应用是其全部工作集容纳在缓存中的那些。相比之下,缓存流式传送或超负荷应用不断地寻求新的数据并扫过缓存。增大的停止表示应用程序不太可能得益于以较高频率运行,而不会有停止中的相应的缩小。eet算法试图将寻求超频的核向对于存储器的其停止是可容忍的有效率地操作的频率(如由可配置的阈值确定的)倾斜,以便燃烧的功率与获得的性能成比例。此外,该算法还考虑任何用户/os指定的能量性能偏向(epb)。在一个实施例中,epb可以基于向基于os的用户偏好菜单的用户输入,以指出用户的关于功率/性能折衷的偏好。利用性能偏向,在没有停止的核上运行的应用可以被授予最大超频频率,但是,利用能量偏向,核可以将其频率增大一个单位阶跃。为实现eet算法,各实施例可以检测核停止和核活跃的循环,例如,通过核活动传感器和核停止传感器,以确定核被停止的循环与它处于活跃的状态的循环的比例,被称为以核为中心的非产出时间。此以核为中心的非产出时间可以是有意义的,并且可靠的,不管实际核和非核互连操作频率如何,如此,使用单一阈值将核分类为停止或不停止是很好的。在各实施例中,此阈值可以是可配置的,并可以是系统epb的函数。eet算法周期性地分析所有核允许的超频模式,以基于在观察时间间隔内核是否被分类为停止,判断是否应该增大、降低它们的频率或使其保持不变。运行在连续的观察循环上将内容纳在它们的专用缓存中的应用的核(假设存在功率预算,没有违犯电气、热或其他约束)将到达最大超频频率。在工作负荷混合变化并且缓存竞争增大的情况,随着时间的推移,受影响的核的超频频率将缩小,例如,在系统被配置成用于能量偏向时,急剧地缩小,或在利用性能偏向配置时,比较慢地缩小。各实施例可以以诸如处理器的pcu的固件之类的固件来实现eet算法。此算法可以将涉及核停止和核活跃的周期的硬件传感器数据以及任何用户/操作系统配置的能量性能偏置作为输入,以适应核操作点。还可以理解,eet算法可以具有广泛的灵活性,因为它使用可配置的阈值以及它用来再访问超频允许的核的周期性。进一步地,配置可以是指定的能量性能偏置的函数。用于适应核频率的算术表达式可以是核停止的函数。只要函数满足下列警告,它就是合理的:在有利的停止状态下,核频率单调地上升,在不利的停止状态下,单调地下降。至于阈值,假设带有包括根据本发明的一个实施例的处理器以及给定os的计算机系统的消费者运行他们自己的应用程序并具有他们自己的功率,性能以及服务质量需求。这些值将是用户/os控制的epb的函数。在某些实施例中,可以有基于epb来设置这些阈值的图形用户界面(例如,仪表板)或其他挂钩(hook)。注意,每一个物理核都可以具有对应于其逻辑核epb的最小值的epb。现在参考表6,所示是不同的epb的示例阈值。注意,可以使用基准,在硅工艺之后调整这些值。表6epb值活跃的阈值拒绝阈值(第一)允许阈值(第二)能量205010平衡的205010性能206020在某些实施例中,处理器可以为性能、平衡的以及能量性能偏向提供预定值。在某些实施例中,第二(允许)阈值可以比第一(拒绝)阈值小2到8倍或更多。在一个实施例中,这些是实数,表示观察窗口时间的一小部分。不失一般性,下面的表7是根据本发明的一个实施例的eet算法的实现的伪代码。表7注意,在表7中,在确定候选性能状态(new_pstate)之后,应用最小函数,该最小函数包括电气设计点考虑,最后应用该最小函数是因为这取决于寻求超频的核的数量以及它们的超频的度。最小函数的另一参数是热约束,因为过去的活动和环境影响处理器温度,因此影响核可以在多大程度上超频,而不会熔化。根据一实施例,可以使eet只在pcps的上下文中可用,并可以使用可配置参数来启用或禁用。在一个这样的实现中,诸如bios设置的eet标志之类的eet启用指示符可用于启用/禁用eet。当eet被启用时,当处理器在超频范围内操作时,单个核可以在不同的,独立的频率操作,取决于给定核遇到的停止。相比之下,当eet被禁用时,超频预算被均匀地分布到寻求在超频模式频率下操作的所有核。作为进一步的可配置参数,可以通过设置适应时段长度(在一个实施例中,该适应时段长度可以存储在控制寄存器的字段中),可以提供eet适应时段作为用户控制的参数。在一个实施例中,此适应时段字段可以具有以毫秒的整数倍设置的值。作为这些eet可配置参数的使用情况的示例,云服务器部署可以选择关闭eet,这样一来,在所有运行的应用间均匀地分配所有超频预算(并可以可任选地禁用所有超频操作,允许核至多在最大保证的频率下运行,以使冷却成本低)。在其中可以基于核频率来记帐的部署中,可以打开超频模式操作,以允许在滑动标尺的基础上记帐,对于在超频模式下操作的用户,按指数规律地更多地计费。作为其他示例,在线电子商务中心,诸如银行、航空公司或娱乐流式传送可以选择启用eet,并在可以动态地满足峰值负载时获得提高的超频性能。在希望限制冷却和功率需求的系统中,可以禁用超频模式,在这样的情况下,eet也被禁用。参考现在表8,所示是根据本发明的实施例的用于执行eet控制的伪代码。表8如此,在上面的表8的代码中,当系统不处于单一功率域模式并且eet操作根据禁用的eet标志而被禁用时,可以通过确定多余功率预算,并将此多余功率预算除以寻求超频操作的核的数量,将超频功率预算均匀地分布到寻求超频操作模式的所有核。这允许每一个这样的核在高于保证的操作频率的共同频率下操作。否则,如果eet被启用,并且发生了适应时段;对于试图在超频操作模式下操作的每一个核,可以基于给定能量效率策略和诸如核停止信息之类的各种信息,调整核操作频率。在一个实施例中,可以,例如,使用上面表7中所示出的伪代码,设置这样的分析和超频模式频率。现在参考图5,所示是根据本发明的实施例的处理器的框图。如图5所示,处理器400可以是包括多个核410a-410n的多核处理器。在一个实施例中,每一个这样的核都可以被配置成在多个电压和/或频率下操作。另外,还可以独立地控制每一个核以在选择的电压和/或频率下操作,如上文所讨论的。为此,每一个核还可以与对应的电压调节器412a-412n相关联。尽管为便于说明未示出,但是,可以理解,每一个核410都可包括核活动传感器和核停止传感器。各种核都可以通过互连415而耦合到包括各种组件的非核或系统代理逻辑420。可以看出,非核420可以包括作为末级高速缓存的共享高速缓存器430。另外,非核还可以包括集成的存储器控制器440、各种接口450和功率控制单元455以及上文所描述的分布式流量传感器。在各实施例中,功率控制单元455可以与os功率管理代码进行通信,受向msr的os写入的影响,每个逻辑处理器一个。例如,基于从os接收到的请求和关于正在由核处理的工作负荷的信息,功率控制单元455可以使用包括的功率管理配置控制逻辑457,在一个实施例中,该逻辑457可以执行固件,以允许用户根据本发明的一个实施例控制多个功率管理特征的实现。基于上文所描述的信息,功率控制单元455可以在考虑到核的活动级别的情况下,动态地并且独立地控制一个或多个核的频率和/或电压。进一步参考图5,处理器400可以,例如,通过存储器总线,与系统存储器460进行通信。另外,通过接口450,可以连接到诸如外围设备、大容量存储器等各种芯片外组件。尽管在图5的实施例中利用此特定实现示出的,但是,本发明的范围在这方面不受限制。现在参考图6,所示是根据本发明的一个实施例的处理器核的框图。如图6所示,处理器核500可以是多级流水线化的无序处理器。如图6所示,核500可以由于集成的电压调节器509,而在各种电压和频率下操作。在各实施例中,此调节器可以接收例如从外部电压调节器传入的电压信号,还可以进一步例如从耦合到核500的非核逻辑接收一个或多个控制信号。如图6所示,核500包括前端单元510,该前端单元510可以被用来获取要被执行的指令并准备它们供以后在处理器中使用。例如,前端单元510可以包括获取单元501、指令缓存503以及指令解码器505。在某些实现中,前端单元510还可以包括跟踪缓存,以及微代码存储器以及微操作存储器。获取单元501可以例如从存储器或指令缓存503获取宏指令,并将它们馈送到指令解码器505,以将它们解码为基元,即,用于由处理器执行的微操作。在前端单元510和执行单元520之间耦合了无序(ooo)引擎515,该引擎515可以被用来接收微指令并准备它们以供执行。更具体而言,ooo引擎515可以包括各种缓冲器以重新排序微指令流,并分配执行所需的各种资源,以及将逻辑寄存器的重命名提供到诸如寄存器组530和扩充寄存器组535之类的各种寄存器组内的存储位置。寄存器组530可以包括用于整数和浮点运算的分开的寄存器组。扩展寄存器组535可以提供用于矢量大小的单元的存储器,例如,每个寄存器256或512比特。在执行单元520中可以存在各种资源,包括,例如,各种整数、浮点以及单指令多数据(simd)逻辑单元,以及其他专门的硬件。例如,这样的执行单元可以包括一个或多个算术逻辑单元(alu)522以及其他这样的执行单元。可以向回退逻辑,即,重新排序缓冲器(rob)540,提供来自执行单元的结果。更具体而言,rob540可以包括各种阵列和逻辑以接收与执行的指令相关联的信息。然后,由rob540检查此信息,以判断是否可以有效地回退指令,结果数据被提交到处理器的架构状态,或是否发生了阻止指令的适当的回退的一个或多个异常。当然,rob540也可以处理与回退相关联的其他操作。如图6所示,rob540耦合到缓存550,缓存550在一个实施例中可以是低级别缓存(例如,l1缓存),虽然本发明的范围在这方面不受限制。此外,执行单元520还可以直接耦合到缓存550。从缓存550,可以与较高级别的缓存,系统存储器等等发生数据通信。尽管在图6的实施例中以此高级别示出的,但是,可以理解,本发明的范围在这方面不受限制。例如,尽管图6的实现是对于诸如所谓的x86指令集架构(isa)之类的无序机器,但是,本发明的范围在这方面不受限制。即,其他实施例可以在有序处理器、精简指令集计算(risc)处理器,诸如基于arm的处理器,或可以通过仿真引擎和相关联的逻辑电路来模仿不同的isa的指令和操作的另一种类型的指令集架构(isa)的处理器中实现。现在参考图7,所示是根据本发明的另一个实施例的多核处理器的框图。如图7的实施例所示,处理器600包括多个域。具体而言,核域610可包括多个核610a–610n,图形域620可包括一个或多个图形引擎,还可以进一步存在系统代理域650。在各实施例中,系统代理域650可以处理功率控制事件和功率管理,以便可以控制域610和620的单个单元(诸如核和/或图形引擎),以在考虑到在给定单元中发生的活动(或不活动)的情况下,在合适的超频模式频率,独立地动态地操作。域610和620中的每一个都可以在不同的电压和/或功率下操作,此外,域内的单个单元中的每一个都还可以基于如此处所描述的功率管理特征的用户配置,在独立频率和电压下操作。注意,尽管只利用三个域示出,但是,应理解,本发明的范围在这方面不受限制,在其他实施例中可以存在于更多的域。一般而言,除各种执行单元和另外的处理元件之外,每一个核610都还可以包括低级别缓存。各种核又可以彼此耦合并耦合由llc6400-640n的多个单元构成的共享缓存存储器。在各实施例中,可以在核和图形引擎,以及各种媒体处理电路之间共享llc640。可以看出,如此,环形互连630将核耦合在一起,并在核、图形域620和系统代理电路650之间提供互连。在一个实施例中,互连630可以是核域的一部分。然而,在其他实施例中,环形互连可以是其自己的域,并可以基于此处所描述的可配置的ufs控制,对其进行控制,以在独立或依赖的频率下操作。进一步可以看出,系统代理域650可以包括显示控制器652,该显示控制器652可以提供对相关联的显示器的控制以及到它的接口。进一步可以看出,系统代理域650可以包括功率控制单元655,该功率控制单元655可包括根据本发明的一个实施例的超频控制逻辑659,以基于对应的核的活动信息和eet配置,独立地或在共同的超频模式频率下,控制核的超频模式频率。在图7中进一步可以看出,处理器600还可以包括集成的存储器控制器(imc)670,该imc670可以提供到诸如动态随机存取存储器(dram)之类的系统存储器的接口。可以存在多个接口6800-680n,以在处理器及其他电路之间实现互连。例如,在一个实施例中,可以提供至少一个直接媒体接口(dmi)接口以及一个或多个外围组件互连快速(pcietm)接口。更进一步,为在诸如额外的处理器或其他电路之类的其他代理之间提供通信,也可以提供符合快速路径互连(qpi)协议的一个或多个接口。虽然在图7的实施例中以此高级别示出的,但是,可以理解,本发明的范围在这方面不受限制。各实施例可以以许多不同的系统类型来实现。现在参考图8,所示是根据本发明的实施例的系统的框图。如图8所示,多处理器系统700是点对点互连系统,并包括通过点对点互连750耦合的第一处理器770和第二处理器780。如图8所示,处理器770和780中的每一个都可以是多核处理器,包括第一和第二处理器核(即,处理器核774a和774b,处理器核784a和784b),虽然潜在地更多核可以存在于处理器中。处理器中的每一个都可包括pcu或其他逻辑以基于发生的核活动,执行对大于保证的操作频率(独立地或在共同的超频模式频率)的准许的操作频率的动态控制,以有效率地消耗能量,如此处所描述的,以及允许单域功率控制或pcps功率控制。基于此处所描述的可配置的设置,处理器还可以进一步根据给定配置,控制非核频率。仍参考图8,第一处理器770还包括存储器控制器中枢(mch)772和点对点(p-p)接口776和778。类似地,第二处理器780包括mch782和p-p接口786和788。如图8所示,mch772和782将处理器耦合到相应的存储器,即,存储器732和存储器734,它们可以是本地连接到相应的处理器的系统存储器(例如,dram)的一部分。第一处理器770和第二处理器780可以分别通过p-p互连752和754来耦合到芯片组790。如图8所示,芯片组790包括p-p接口794和798。此外,芯片组790还包括接口792,接口792通过p-p互连739而将芯片组790与高性能图形引擎738耦合。芯片组790又可以通过接口796耦合到第一总线716。如图8所示,各种输入/输出(i/o)设备714可以耦合到第一总线716,以及将第一总线716耦合到第二总线720的总线桥接器718。各种设备可以耦合到第二总线720,包括,例如,键盘/鼠标722、通信设备726和数据存储单元728,数据存储单元730诸如磁盘驱动器或可以包括代码630的其他大容量存储设备。进一步地,音频i/o724可以耦合到第二总线720。各实施例可以被包括到其他类型的系统中,包括诸如智能蜂窝电话、平板电脑、上网本、ultrabooktm等等之类的移动设备。通过提供处理器性能特征的配置,并促进它们的混合并匹配,单一处理器可以更好地满足不同的市场部分的需要,而不会有sku的爆炸。通过提供如上文所描述的spd指示符,结合固件(硬件和软件支持),处理器可以无缝地作为前一代产品和新的完整功能的产品,并进一步可以允许基于旧式os的系统以对os不可见的方式利用pcps。通过提供对ufs的可配置的控制,互连系统可以在非核频率跟随核频率的情况下操作,或作为固定非核频率产品,或作为动态工作负荷敏感的自适应互连系统。另外,周期性参数还允许控制对工作负荷变化的系统响应速度。eet启用/禁用特征允许可用的超频预算在超频请求核之间平均分配,或更小心的控制,例如,基于应用存储器相关性特征。通过使用本发明的各实施例,延迟敏感的消费者可以将非核频率最低值设置得足够高,以满足qos需求,或将最低和最高值设置为相同值以关闭ufs。试图得益于新的硬件但不得益于新的功率特征的消费者可以关闭以上全部所描述的功率管理特征。可另选地,诸如云服务器使用模型之类的用户可以禁用这些特征,直到诸如支持基于使用来对它们的消费者/应用进行记帐的点可用。对于诸如室内的数据中心之类的其他用户,可以利用以上全部所描述的功率管理特征来获得功率/性能优点。最后,旧式os消费者可以使用这些特征,虽然它们不可见,并且不由os支持。各实施例可以用于许多不同类型的系统中。例如,在一个实施例中,通信设备可以被配置为执行此处所描述的各种方法和技术。当然,本发明的范围不仅限于通信设备,相反,其他实施例可以涉及其他类型的用于处理指令的设备,包括指令的一个或多个机器可读的介质,所述指令,响应于在计算设备上执行,导致设备执行此处所描述的方法和技术中的一个或多个。各实施例可以以代码来实现,并可以存储在在其上存储了指令的非瞬时的存储介质上,指令可以被用来对系统进行编程以执行指令。存储介质可以包括,但不仅限于,任何类型的磁盘,包括软盘、光盘、固态驱动器(ssd)、光盘只读存储器(cd-rom)、光盘可重写(cd-rw),以及磁光盘、诸如只读存储器(rom)之类的半导体器件、诸如动态随机存取存储器(dram)、和静态随机存取存储器(sram)之类的随机访问存储器(ram)、可擦除编程只读存储器(eprom)、闪存、电可擦除编程只读存储器(eeprom)、磁卡或光卡,或适于存储电子指令的任何其他类型的介质。尽管是参考数量有限的实施例来描述本发明的,但是,那些精通本技术的人将从其中理解很多修改和变体。所附权利要求书涵盖所有这样的修改和变体都将在本发明的真正的精神和范围内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1