发明内容
因此,本发明的一个目标是提供一种简单的具有低面积开销的自适应控制方案,用于对集成电路的电气隔离的岛提供电源的独立控制。
该目标通过如权利要求1的电路设备和通过如权利要求21的控制方法来实现。
因此,提供一种用于功率控制的很简单的自主方案,其中,受控的电源电压可以作为不同参数例如工作负载、所需的电气隔离电路区域的电路性能等的函数而在较宽的范围内改变。采用用于调整单个电源的可变电阻器装置,与需要DC-DC转换器和其它专用电路的已知解决系统相比,提供了低面积开销的优点,并且能实现简单的数字控制和快速的瞬时反应。此外,如在DC-DC转换器的情况下一样,不需要附加的外部部件。基本上,所提出的控制系统感测岛的活动状态(activity)和操作条件并且相应地调整可变电阻器装置,以补偿岛即隔离电路区域的电阻变化。
可变电阻器装置可以包括串联连接在隔离电路区域和至少一个电源端子之间的晶体管装置。晶体管装置在隔离电路区域和他们的电源线之间增加另外的电阻,同时可以通过改变由晶体管装置引入的串联电阻值来控制电源电压。因此,在整个集成电路的整体功率网络中不需要任何改变。尤其是,晶体管装置可以包括连接在各个隔离电路区域的专用的一个隔离电路区域的第一电源输入与各电源端子的第一电源端子之间的第一晶体管,和连接在各个隔离电路区域的专用的一个隔离电路区域的第二电源输入与各电源端子的第二电源端子之间的第二晶体管,其中,配置局部控制装置,以向第一晶体管提供第一控制信号和向第二晶体管提供第二控制信号,并且其中,所述第一控制信号是所述第二控制信号的反转。这样,当第一和第二晶体管都关闭时,使每个隔离电路区域进入待机模式,从而使电路的功率消耗减小为最小值。
可以将晶体管装置分为多个晶体管段,将每个段或各段的子集连接到由所述局部控制装置设置的专用控制寄存器的位。从而可以引入电阻值的离散数字控制,其中,可以在运行时容易地对控制寄存器进行编程或再编程,以实现自适应电源电压控制。
局部控制装置包括用来补偿平均电压波动的第一控制功能,和用来补偿由于至少两个电气隔离电路区域的专用的一个电气隔离电路区域的活动状态改变的电压波动的第二控制功能。因此,在提供快的控制功能以补偿处理负载的变化的同时,可以提供较慢的控制功能用来补偿环境或特定芯片的变化。可以采用第一控制功能用来控制至少两个电气隔离电路区域的专用的一个电气隔离电路区域的时钟频率。因此,可以采用第一控制功能来修正用于所需的时钟频率的电源电压。
第一和第二控制功能适于将控制值设置到各自的第一和第二移位寄存器装置中,所述第一和第二移位寄存器装置被用来控制所述可变电阻器装置。然后可以提供仲裁装置,用于选择性地将所述第一和第二控制功能连接到所述第一和第二移位寄存器装置。通过采用仲裁装置,可以防止两个控制功能同时运算。作为替换,可以采用解码器装置响应控制值来控制可变电阻器装置。
此外,提供用来存储所述第一控制功能所需的值的查找表。通过存储在查找表中的操作频率和电压码字的值对,可以根据所需的性能来设置第一控制功能。
配置局部控制装置,以便通过执行改变所述控制信号的电压电平和转换所述控制信号的至少之一来控制传导率。因此,根据改变操作的类型能取得不同的各自的传导程度。另外,可以采用控制信号来动态改变可变电阻器装置的元件尺寸。
将调整的电源传递给时钟产生装置,用来单独调整提供给至少一个电气隔离电路区域的时钟。除了至少一个电气隔离电路区域外,电路可以具有一个或更多的不受控制的电路区域,例如用于CGU的电路区域。这样,可以将时钟产生装置放置在自主岛中,通过局部控制装置来控制自主岛的电源。
另外,配置局部控制装置,用来控制在至少两个隔离电路区域中提供的晶体管元件的背向偏置(back-bias)电压。因此,通过适当地偏置晶体管的体端子,可以单独控制隔离电路区域的性能,以便改变其阈值电压。
此外,配置所述局部控制装置,用来控制旁路装置,以便跳过至少两个隔离电路区域的处理管线的至少一个寄存器装置。这样,可以提供控制隔离电路区域的性能的另一种或其它方法,来实现有效的配置。
此外,提供连接到可变电阻器装置和用来向隔离电路区域提供调整的时钟信号的时钟发生器装置的移位寄存器装置,其中,基于由局部控制装置提供的二进制控制信号控制移位寄存器装置,并且其中,二进制控制信号定义移位到移位寄存器装置的至少一个二进制值,以便或者提高或者降低隔离电路区域的性能。该解决系统提供了可以基于至少一个简单的二进制控制方案或信号来容易地控制隔离电路区域的性能的优点。尤其是,可以采用移位寄存器装置的位值来单独旁路时钟发生器装置的延迟部分。这样,可以基于移位到移位寄存器装置的位值来直接控制时钟发生器装置的频率。
作为另一选择,配置局部控制装置,用来选择来自多个特征文件(profile)模式的预定的特征文件模式,每个特征文件模式定义所述隔离电路区域的一组性能参数之间的预定关系。这样,所选择的特征文件模式确保连续修改物理变化或性能参数以满足指定的性能。尤其是,可以将参数中的特定参数与其它参数关联,从而提供各个单独参数之间的耦合。尤其是,性能参数可以包括时钟频率、电源电压和阈值电压。可以将预定特征文件模式和性能参数存储在查找表中。另外,多个特征文件模式可以包括使电源电压和时钟频率保持为固定关系的特征文件模式。
在附属的权利要求中定义了具有进一步的优点的改进方式。
具体实施方式
现在将在被分为不同的岛的集成电路(IC)的基础上描述优选实施例。每个岛可以包含在三阱CMOS(互补金属氧化物半导体)技术的隔离的第三阱中。三阱CMOS技术允许第一类型的阱例如P-阱置于第二类型的阱例如N-阱内,得到三种类型的阱结构:第一类型的简单阱、第二类型的简单阱、和由第二类型的深阱内的第一类型的阱组成的第三类型的阱。通过在第二类型的深阱和衬底之间的反偏压,第三类型的阱用于将第三类型的阱内的电路与芯片上的其它部分隔离。根据一些参数,可以控制每个阱并且改变其工作条件。也可以根据其它参数来控制芯片的剩余部分。每个岛可以在一个或多个实用值下操作,并且第一岛的至少一个实用值与第二岛的相应的实用值不同。
图1表示根据本发明的优选实施例的控制方案的示意电路图,其中,在岛上提供的CMOS电路10通过电阻器电路或电阻器装置与电源电压端子(即参考电压端子例如接地端子GND或端子Vss、以及电源电压端子VDD)连接。集成电路可以被提供有监控功能或单元15,用于监控与集成电路的工作条件有关的至少一个工作参数,并且IC的至少一个岛被提供局部控制器件20,用于根据所监控的至少一个工作参数独立调整或控制用于至少一个岛的至少一个实用值。
一个或多个实用值包括一个或多个电源、晶体管阈值电压、晶体管背向偏压或时钟频率。可以通过在计算的岛中的一些晶体管(例如处理核或模块的晶体管)的体电压来确定晶体管阈值电压。与集成电路的所有工作条件有关的至少一个参数可以包括电路活动状态、电路延迟、电源噪声、逻辑噪声极限值、阈值电压值或时钟频率值的至少之一。性能的预设级别与集成电路的功率消耗或速度的任意一个或所有有关。
根据优选实施例,可变电阻器装置用作致动器,用来控制在岛上提供的CMOS电路10的电源电压。作为不同性能参数例如工作负荷或所需的电路性能等的函数,受控的电源电压可以在~Vth和VDD伏特之间的宽范围内改变。当推荐的电源电压致动器在SoC应用中被使用时,其具有许多优点,例如有源功率和能量消耗的自适应控制、泄漏电路的自适应控制、与DC-DC转换器相比的低面积开销、简单的数字控制和快速瞬时反应。此外,与在DC-DC转换器的情况下相同,不需要额外的外部元件例如电感L或电容C。
电源电压致动器可以实现为由局部控制设备或单元20控制的上述可变电阻器,将在以下对其进行详细描述。可以根据具有可控电阻器功能性或用作可控电阻的任一半导体电路或其它电路来实现可变电阻器。
根据第一优选实施例,致动器实现为PMOS晶体管M2和NMOS晶体管M1,PMOS晶体管M2和NMOS晶体管M1与岛的CMOS电路10串联连接。这些晶体管M1和M2在CMOS电路10和其电源线之间增加额外的电阻。例如,当电路需要其最大操作速度时,需要低电阻值来减小电压降。可以通过改变由晶体管M1和M2引入的串联电阻值来控制CMOS电路10的电源电压,即VDD-ΔV。采用这种方式,在芯片或IC由多个岛组成的情况下,不必对整个网络作出改变。
图2表示采用头部晶体管M2和脚部晶体管M1的示意电路图。通过控制信号nCTL来控制头部晶体管M2的状态,而通过控制信号CTL来控制脚部晶体管M1的状态。信号CTL是信号nCTL的反转,其中,可以根据方程VnCTL=VDD-VCTL从信号nCTL的电压VCTL获得信号CTL的电压VnCTL。在这种情况下,当头部晶体管M2和脚部晶体管M1都关闭时(VnCTL=VDD和VCTL=0),可以将CMOS电路10置于待机模式,以便将电路的功率消耗减少为最小值。在运行模式下,CMOS电路10的两个串联晶体管是导电的。可以通过动态改变控制信号nCTL和CTL的电压电平、应用转换(switching)的nCTL和CTL信号和测定串联晶体管M1和M2的几何尺寸的至少之一来实现不同程度的传导。可以通过局部控制单元20来启动这些控制功能。
正如从图2可推断的,将集成电路配置为包括四个核C0到C3的多核芯片设计,通过各自的配线系统将电源电压Vss和VDD应用于四个核C0到C3。图2中的电容器C表示电路的未转换部分的内部电容和内部去耦电容。由于电容C将电流峰值提供给电路10,流过两个串联晶体管M1和M2的电流主要与电路10消耗的平均电流相应,并且在两个串联晶体管M1和M2的电压降ΔV仍保持近似恒定。
这样,可以通过在第一优选实施例中的由两个晶体管M1和M2构成的电源电压致动器来实现不同的岛的电压源的隔离。电压岛的概念可以容易地与整体-异步-局部-同步(GALS)方案相融合,在整体-异步-局部-同步(GALS)方案中,各个岛以同步方式操作,而整个集成电路以异步方式操作。通过电源电压致动器来调整岛的独立的时钟,作为不同参数例如工作负荷或电路性能等的函数,即,时钟单元可以限制于岛的电源。但是,可以证实,通过适当地调整电源来使时钟频率适合于岛的速度。该动作对于各种岛能同时发生,采用推荐的电源电压致动器可以容易地完成该动作。
图3表示根据第一优选实施例的电源电压致动器的具体示例,其中,将串联晶体管M1和M2分为N段。可以通过来自各自专用的控制寄存器202、204的位来控制每个晶体管段或者段的子集。因此,可以通过分段的串联晶体管M1和M2来进行电阻值的离散控制。
根据图3,在N-MOS脚部晶体管的情况下,当各个控制寄存器的相应的控制位处于高电平时,段导电,而当控制位处于低电平时,段不导电。另一方面,在PMOS头部晶体管的情况下,当相应的控制位处于低电平时,段导电,而当控制位处于高电平时,段不导电。在运行时可以容易地对控制寄存器202、204编程或再编程,从而实现自适应电源电压控制。控制寄存器202、204的段的数量、几何尺寸和大小确定了电源电压控制的分辨率或步长以及范围。此外,需要准确测量未转换电路电容C的大小以便处理在头部和脚部晶体管段的电压波动ΔV。
显而易见,可以采用单个控制寄存器来可替换地实现图3所示的相同的控制功能,所述单个控制寄存器的输出与一个分段晶体管连接,而其反相输出与另一分段晶体管连接。
通过局部控制单元20来提供设置于控制寄存器202、204的控制值。这种在线修正可以由两个控制功能构成,即补偿平均电压波动的μ-控制和用于局部电压改变的跟踪控制。μ-控制补偿由于工艺可变性或其它环境或特定芯片影响的冷启动偏移。例如,如果岛位于快速处理角(corner),那么有点低的电源电压可以足够达到其目标操作频率。该电源偏移补偿可以基于实际的片上硅测量。由于制造工艺的可变性,在晶片上的每个芯片与其它芯片不同。一般来讲,晶片分为各种区域来生产慢、正常、快的晶体管。常规的设计方法利用最差情况的条件即慢的晶体管来进行设计。
考虑到由于例如温度梯度的运算漂移,周期性地执行μ-控制。另一方面,跟踪控制补偿由于动态改变的电压波动,导致在CMOS电路10中的输入流数据的更多或更少的处理操作。在根据周期到周期的基础上计算标准偏差的同时,在较长的时间周期调整平均值。
图4表示在局部控制单元20中提供的在线修正阶段的方框图。该电路需要绝对时钟频率、将由用于每个频率值的时钟产生单元CGU产生的计数Nf,i的数量、以及用来建立用于控制可变电阻器的电导的μ-移位寄存器μ-SR的一或零NVDD,i的数量的现有技术知识。可以在集成电路的设计阶段存储这些预置值。事实上,计数Nf,i的数量是电路的操作频率的数字表示。Nf,i的每个值与唯一NVDD,i值关联,其产生可以存储在相应的查找表LUT中的一组(Nf,i,NVDD,i)对。
将时钟产生单元CGU置于自主岛中,其电源由μ-移位寄存器μ-SR和O-移位寄存器O-SR来控制。此外,将受控的CMOS电路10置于不同的自主岛中,其电源由μ-移位寄存器μ-SR、O-移位寄存器O-SR和跟踪移位寄存器t-SR来控制。因此,防止了受σ-控制功能影响的时钟产生单元CGU的电源。
可以按照以下来执行电源的自适应控制过程。用户或例如电源管理单元(未示出)通过选择由计数Nf,i的数量表示的所需的频率来提供性能要求。μ-移位寄存器μ-SR采用必须具有以所需的频率fi操作的时钟产生单元CGU的NVDD,i加载。时钟发生器可以包括例如基于锁相环(PLL)或任何其它振荡电路的任何合适的时钟产生电路。μ计数器μ-CT适于计数在预定时间周期期间由时钟产生单元CGU产生的脉冲的数目,并且从而将其振荡频率转换为数字表示。在计数周期过去后,将μ计数器μ-CT的内容Nc加载入寄存器R并与μ比较器μ-C中所需的的计数Nf,i的数量比较。如果确定在μ比较器μ-C中,Nf,i大于Nc,这表示电路的硅较慢并且必须增大电源电压来使计数相等。另一方面,如果检测Nf,i小于Nc,必须减小电源电压来使计数相等。这通过改变O-移位寄存器O-SR的内容来实现。
在每次比较之后,通过μ比较器μ-C将重置信号提供给μ计数器μ-CT。在这里所提供的绝对时钟参考ACLK的正边沿能实现时钟产生单元CGU。例如,在产生二进制μ计数器μ-CT并保持10位μ-寄存器R的控制下,该时钟参考ACLK可以比电路的最大频率低得多。
另外,为了补偿由于CMOS电路10的局部活动状态的改变,提供第二且更快的控制功能。将该第二控制功能称作跟踪控制或跟踪环。跟踪控制操作如下。在相位-频率-检测器(PFD)单元t-CM中将时钟产生单元CGU的输出与从延迟线或延迟单元DL得到的其延迟的形式相比较。延迟单元DL可以是具有可能的安全边缘延迟的CMOS电路10的关键路径的复制。可以将该延迟单元DL嵌入要控制的CMOS电路10。如果PFD单元或跟踪比较器t-CM检测到从时钟产生单元CGU提供的原始信号不同步,那么通过改变跟踪移位寄存器t-SR的内容来调整该跟踪移位寄存器t-SR。如果延迟的信号具有小于一个时钟周期的延迟,必须减小电源电压。另一方面,如果延迟的信号具有高于一个时钟周期的延迟,必须增大电源电压。如果原始和延迟的信号是同步的,那么得到所需的电源电压。
另外,提供仲裁单元ARB来防止两个环同时操作。特别是,当两个控制功能想要同时更新他们的移位寄存器时,仲裁单元ARB执行控制以选择两个控制功能即慢的控制功能或快的控制功能中的一个更新其移位寄存器。因此,通过给予一个控制功能例如μ-控制较高的优先级,可以防止控制信号之间的冲突。
由于在不同的岛上提供时钟产生单元CGU的事实,没有受到受控的CMOS电路10的活动状态波动的影响。然而,时钟产生单元CGU和受控的CMOS电路10共享用于μ-移位寄存器μ-SR、O-移位寄存器O-SR相同的控制信号,而只将另外的跟踪移位寄存器t-SR的控制信号提供给受控的CMOS电路10。因此,二者都具有在他们的受控电源和共用电源之间的不同的晶体管段,这意味着没有共享他们的受控电源。可以将图3的控制移位寄存器202、204基本上分为几个部分,例如,与μ-移位寄存器μ-SR、O-移位寄存器O-SR和跟踪移位寄存器t-SR相应的三个部分。μ-移位寄存器μ-SR、O-移位寄存器O-SR涉及μ-控制功能,而跟踪移位寄存器t-SR涉及跟踪-控制功能。
由所需的性能即NVDD,i设置μ-移位寄存器μ-SR的数字码字。采用开环方法即无反馈控制来进行μ-移位寄存器μ-SR的更新。然而,当只工作在开环控制时,运算漂移、温度或工艺变化产生问题。因此,O-移位寄存器O-SR额外地被用于补偿这些运算漂移。μ控制功能的相应的慢环建立反馈控制系统以针对这些变化和/或漂移来调整串联晶体管的传导率。此外,在发生在周期基础上的任何活动状态波动的情况下,跟踪移位寄存器t-SR跟踪活动状态波动并采用反馈控制适当地修正。
从控制移位寄存器202、204由有限数量的元件构成的事实来看,他们只能在一定范围内控制串联晶体管M1、M2的电阻。如果需要超过该范围的电阻,会标出误差标记。这可以解释为控制移位寄存器202、204的溢出或下溢。
总而言之,时钟产生单元CGU与其自身的控制的VDDC关联。而受控的CMOS电路10由所有的控制功能控制并接收由时钟产生单元CGU产生的时钟频率。
图5表示关于跟踪-控制功能的波形的信号系统图,其中,信号从上到下是关于受控的电源电压VDD、时钟产生单元CGU的(参考)时钟频率REFCK、延迟时钟形式DELCK、表示是否应该减小电源电压的控制信号DN、用于脚部晶体管M1的二进制控制字的最低有效的位值F0、用于脚部晶体管M1的二进制控制字的最高有效的位值F31、表示是否应该保持电源电压为常数的控制信号JUST和表示是否应该增大电源电压的控制信号UP。可以根据从查找表LUT所获得的信息来通过μ控制功能设置受控电源电压VDD的初始值。然后,跟踪-控制功能将电源电压调整为箭头A所示的所需的值。在电源电压VDD达到所需值的期间,控制信号JUST设置为‘1’。从图5可以推断,将LSB F0连续设置为高电平‘1’,而将MSP连续设置为低电平‘0’。
以下,将描述第二优选实施例,其中,调整局部控制单元20来改变在受控CMOS电路10中提供的至少一个处理功能的管线(pipeline)深度。
现代处理器采用管线来串行并优化指令执行,以便改进其性能。然而,众所周知,优选的管线深度取决于运行应用、甚至其当前的部分。因此,建议允许局部控制单元20采用合并和跳过一些管线段来修改处理段的管线深度或者所控制的CMOS电路10的功能,这也将带来改变操作或时钟频率的必要性。因此,可以分别选择用于每个岛的管线深度,以便优化性能,例如,多媒体应用要求最大的管线深度,而实时应用可以采用居中的管线深度等等。任何管线都将受益于该方法,而其中两个寄存器库之间的逻辑具有相似延迟的均衡的管线将最受益。
图6表示根据本发明的第二优选实施例的可变深度的管线,其中,在各自的处理或逻辑单元中执行两个运算A和B。如果可以跳过中间寄存器RA,那么在一个时钟周期中执行运算A和B并将管线深度有效地改变为2。为了达到这一点,增加额外的逻辑PD(使管线失效),其允许选通中间寄存器RA的时钟。此外,增加旁路单元BP,其可以是多路转接器或其它选择开关电路,以便为逻辑或运算B选择合适的输入。通过对每个寄存器屏障增加这些结构,可以彻底地改变管线深度。
应用或局部控制单元20可以采用许多方式尝试并改变管线深度。一种方式是指定管线特征文件,管线特征文件规定了将跳过哪一个管线屏障并由上述μ-控制功能设置必要的操作频率。也可以根据软件程序的相应指令来使管线段有效或失效。
在图6的示例中,管线包括由寄存器RA跟随的运算A和由寄存器RB跟随的运算B。同时,运算A根据输入值IA计算输出值OA,运算B根据输入值IB计算输出值OB。输入值IB是前一个时钟周期内运算A的结果。
管线运算的缺点是等待时间增加。必须调整提供给管线的时钟周期T以便使最长的延迟时间出现在链中。这样,输出值OB为有效的等待时间可以表达为T+τB,通常比τA+τB长,其中,τA和τx分别是用于运算A和B的等待时间。
在第二优选实施例中,局部控制单元20控制旁路单元B,以实现跳过管线中的一个或多个寄存器。如果管线中的运算只是偶尔必须执行,那么跳过寄存器是有利的。可以通过将控制值设置到控制锁存器或触发器C0来执行该控制,同时将输入值IA提供给输入寄存器R0。这样,等待时间缩短,这对管线的总处理能力具有重大的作用。这里,总处理能力相应于在一定时间周期内能执行的指令的数量。当跳过一个或多个寄存器段时,等待时间减少但是总处理能力降低,因为在新的输入值能在两个阶段被处理前一定会产生等待时间。
接下来,结合第三优选实施例描述用于组合控制时钟频率和电源电压的改进的电源电压致动器。特别是,改进的致动器调整功能能够容易的控制图1的受控电路10的性能。
当性能要求低时,电源可以降低,提供降低的性能而具有实质上的功率减小。对于高性能要求,最高的电源电压以最快的设计操作频率提供最高的性能。此外,可以采用这种方法用于跟踪处理和温度变化。所有的具有如此执行该方法的方案都是基于接收一个或多个性能指标,其一般与所需的时钟频率和提供给受控系统的电源电压相对应。可以在所控制的电路10外部配置例如电源和操作频率等电气参数的智能处理。
根据第三优选实施例,致动器的基本构思是用简单要求更多或更少的性能来替代给定的性能指示的观点。这可以采用二进制信号即最多两位值来完成,并根据移位寄存器或先进先出(FIFO)存储器、用来产生用于受控电路10的受控电源电压的可变电阻,和线性可编程的时钟发生器很简单地实现。
图7表示该控制方案的一般实现方式。由局部控制单元20提供二进制控制信号UP和DN并指示是否需要更多或更少的性能。两个信号控制FIFO或移位寄存器31并被用作推入或弹出信号。作为替换,可以采用单个二进制控制信号,对其提供并将其分为非反向和反向形式以便获得UP和DN值。
将存储在移位寄存器31中的位发送到可变电阻器32和时钟发生器30。响应于此,时钟发生器30产生被调节的时钟RCLK,和可变电阻器32产生被调节的电源电压RSP。
图8表示时钟发生器30的示例的示意电路图。根据图8,时钟发生器30由包括反向器和多个延迟部分D1到D3的环组成,根据源于移位寄存器31的各个偶数位的控制信号C0,C2...,C2n使延迟部分D1到D3被旁路。由于时钟发生器30的环的总延时确定被调节的时钟频率RCLK的事实,可以根据存储在移位寄存器31中的位值来控制时钟频率。
图9表示连接在被调节电源端子RSP和未调节电源端子URSP之间的可变电阻器32的示例的示意电路图。可变电阻器32包含多个并联电阻器分支,其能根据从移位寄存器31的各个奇数位位置的逆或非获得的控制信号/C1,/C3...,/C2n+1来单独切换。当然,可以由图3所示的晶体管段代替图9的可控电阻器电路,其中,将控制信号提供给晶体管段的控制端子。
当在该图案中增大逻辑‘1’值的数目时,时钟发生器30的总延迟增加(由于图8中的有源延迟部分的数目减少)并且可变电阻器32的总电阻减少(由于图9中的开放电阻器分支的数目增加)。
控制方案工作如下:
最初,移位寄存器31在其第一位位置或时隙将具有逻辑‘1’,并将剩余位位置或时隙以逻辑‘0’填满,其导致图案‘100..000’。这保证可变电阻器位于其最小值(所有电阻器分支连接或关闭)并且时钟发生器提供与最慢总延迟相应的最快的时钟(只有一个延迟部分D1是有源的),但是其是任意选择的。当局部控制单元20使控制信号DN有效时,包含逻辑‘1’的时隙的数量通过将逻辑‘1’移位到移位寄存器31(移位到图7的右侧)而增加,以便得到图案‘110...000’。取决于由移位操作设置的新的时隙即奇或偶时隙,减小电源电压或者时钟频率。另一方面,当局部控制单元20使控制信号UP有效时,通过从移位寄存器31删除逻辑‘1’(移位到图7的左侧)来减少包含‘1’的时隙的数量以便获得图案‘100...000’。取决于哪个时隙被重置,即奇或偶时隙,减小电源电压或者时钟频率。
动作的次序是这样以便总是电源电压之前时钟频率减小并且在时钟频率之前电源电压总是增大。在推荐的控制方案中,上升(当然释放)控制信号UP和DN只在移位寄存器31的状态中引起一个改变。也可能采用所产生的时钟RCLK供给移位寄存器31,如图7以虚线所示,以便只要控制信号UP或DN保持为高,就设置或重置多个时隙。
当移位寄存器31只以逻辑‘0’填满时,受控电路10以其最大性能操作,而在移位寄存器只以逻辑‘1’填满的情况下,得到最大的功率节省。由于局部控制单元20控制时钟发生器30,其知道用于移位寄存器31的给定数据字的时钟频率或操作频率。另一方面,可以采用性能监控器例如环形振荡器和计数器来执行受控电路10的性能的实时测量。
图10是从上到下表示被调节的时钟信号RCLK、控制信号UP和控制信号DN的波形的信号图。从图10中可以看出,当控制信号UP是在高逻辑状态上时,被调节的时钟信号RCLK频率增大,而当控制信号DN在高逻辑状态内时,被调节的时钟信号RCLK频率减小。
图11是表示随着时间变化被调节电源电压RSP或VDD的波形的信号图,其中可以看到随着移位寄存器31的内容的相应变化,电压逐步减小。
图12是表示根据第三优选实施例的建议的控制方案的处理步骤的示意流程图,其中,图12的左侧部分相应于控制方案的软件部分SW和图12的右侧部分相应于控制方案的硬件部分HW。
在步骤10中,应用一般是通过标准编译器汇编完成。然后,在步骤11中,采用标准分析器(profiler)来选取应用的统计特征文件,其给出了应用行为的信息和其性能要求。根据在步骤11中获得的统计特征文件,在步骤12中选取性能指标。这样,步骤12取决于要使用的硬件。对于建议的解决方法,该假设是不必要的并且指标只能表达与其它部件之一相比的一部分应用的性能要求。
在步骤13中,分别在部分步骤13a和13b中选取指标和控制值UP和DN。该选取可以与硬件无关地进行或被调整为硬件例如调整为特定的最初保证的、控制信号UP和DN涉及的性能。在步骤14中,控制值UP和DN作为二位或一位字段被嵌入应用中用于每个指令,用于固定的或可变的应用部分或作为分离的程序。如上面已经提及的,UP和DN控制值也可以来自单个二进制控制值或位,其中,单个控制位的第一状态与控制信号UP的高值有关,而控制位的第二状态与控制信号DN的高值有关。在硬件部分HW的步骤20中,从应用中选取控制值UP和DN。该选取取决于步骤14。然后,在步骤21中,执行该应用,并且根据在各个部分步骤21a和21b中的控制值UP和DN来调整硬件。
接下来,将描述第四优选实施例,其涉及用来控制图1的电源电压、时钟频率和CMOS电路10的体-偏置的控制方案。特别是,第四优选实施例涉及很简单的自主方案,其中,提供性能指标,并且据此并连续地修改三个物理变量:时钟频率、电源和体-偏置,以便满足指定的性能。该第四优选实施例的一个优点是时钟频率与电源电压关联。换句话说,定标电源电压VDD上和下导致时钟频率的相应的改变。由于使电路的速度和时钟匹配为电源的合适的比例的事实,这方面在性能的自主岛(AIoP)中是重要的。
从系统角度来看,AIoP方法目的在于研发用于未来IP平台的关键电路设计技术并假设SoC是由岛构成。实际上,AIoP技术提供了被称作AIoP框架的硬件基础,从而适应岛或岛群的性能,以便在速度和功率两方面保证一定水平的性能。AIoP技术在速度和/或功率消耗方面选择岛的最适宜电源和阈值电压,用于给定的所需性能。
图13表示AIoP框架的示意方框图,其输入由特征文件模式和岛目标频率组成。特征文件模式是用于岛的活动状态的级别的表示。可以区分两种主要的特征文件模式即运行模式和待机模式。如在接下来的部分阐述的,可以将每个这些主要特征文件模式细分为子特征文件。校准状态也是可能的。该框架承认所有的特征文件、频率和校准要求。将频率(由频率指针FP所定义)即由时钟产生区域41产生的时钟频率、特征文件模式(由特征文件指针PP所定义)和电源值VDD保存在查找表(LUT)50中。AIoP控制器48-1和48-2和校准单元49利用LUT50来动态调整控制下的岛。由于岛具有不同的电源电压,电平移位器42需要与其它岛通信。
由校准开始(CS)信号控制校准单元49,并当校准已经完成时,产生校准准备(CR)信号。当已经设置所需的特征文件时,阈值控制器48-1产生特征文件准备(PR)信号。当电路在所需的操作频率操作时,电源控制器48-2产生频率准备(FR)信号,和在不能达到所需的频率的情况下,产生频率误差(FE)信号。此外,在岛40上提供的AIoP框架包括用来监控受控电路的电压阈值的阈值监控单元43、用来监控电路速度的速度监控单元47、和用来监控所控制的电路的电源噪声的PSN监控单元46。
另外,在三阱CMOS技术的隔离的第三阱中提供的岛40包括其中配置受控电路10的处理元件的N-阱区44和P-阱区45,以及时钟产生区域或功能性41。由阈值监控器43、PSN监控器46和速度监控器47监控这些区域。
图13的AIoP框架提供以不同特征文件模式设置AIoP岛40的可能性。一般来讲,可以区别两个特征文件模式,即运行模式和待机模式。在运行模式中,可以选择以下子特征文件:
高性能特征文件,其中,使阈值电压为最小值,并且使电源与所需的时钟频率成对或固定地关联。
典型的性能特征文件,其中,使阈值电压保持在其典型值并且使电源与所需的时钟频率成对或固定地关联。
低功率性能特征文件,其中,使阈值电压为最大值,并且使电源与所需的时钟频率成对或固定地关联。
另一方面,在待机模式中,可以选择以下子特征文件:
凉爽特征文件,其中,应用时钟选通,并且使电源降低到其最小允许值,而使阈值电压上升到其最大允许电压。该模式或特征文件可被用于低功率目的。
寒冷特征文件,其中,使用与凉爽特征文件相同的设置,但是切断电源以防止组合逻辑而保持触发器、锁存器等的电路状态。该模式或特征文件适于低功率低泄漏需求。
低温特征文件,其中,简单地关掉整个岛40。
AIoP框架的调整方案使电源电压和时钟对匹配为给定的特征文件模式,其取决于阈值电压的选择。这样,通过在时钟频率和电路速度中的改变来反映电源电压的改变。该方法的直接后果是对于基于考虑的岛,频谱将电源电压范围限定为上下限。由于电源电压与时钟成对的事实,电源电压步骤的大小也确定时钟的频率步骤。
图14是表示根据本发明的第四优选实施例的在得到可编程时钟频率中所使用的时钟和电源电压对的频率对电压示图。
AIoP技术采用能以这种方式操作的可编程时钟,其频率可以采用一个时钟的可预测等待时间离散地安全地改变,即从任意一个值到任意另外一个值。该频率步骤被称作主步骤Δfmj。在图14中,两个箭头表示从最小电源电压VDD,min到标称电源电压VDD,nom的电源电压改变和相应的主步骤Δfmj之间的调整关系。一旦时钟被编程,通过定标受控电路10的电源来得到次要频率步骤Δfmn,如虚线所示,并且可以通过适当地定标电源来使时钟匹配。
应该指出,可以结合或交换上述优选实施例的特定特征而不偏离本发明的范围。例如,可以将根据第三优选实施例的特定致动器应用到第一实施例中,和可以将第一和第二实施例的控制方案应用于第四优选实施例中。可以将任一种开关配置用于开关形成图1所示的可变电阻器的晶体管或电阻器元件。此外,可以改变在图4的控制方案中所用的移位寄存器的数量,只要两个控制功能能被结合。可以通过适于旁路至少一个寄存器的其它开关和/或控制配置来得到图6管线的可变深度控制。
还应注意:本发明并不局限于上述优选实施例并可在所附权利要求的范围内改变。尤其是,所描述的附图只是示意性的而不局限于此。在附图中,可以放大一些元件的尺寸,为了说明的目的,没有按比例绘制。这里,术语“包括”用于本发明的说明书和权利要求中,其不排除其它元件或步骤。这里,当涉及单数名词时采用不定冠词或定冠词例如“一”、“该”,如果没有特别指明其它情况,其包括多个该名词。在说明书和权利要求中的术语第一、第二、第三等用来在相同元件之间进行区别,而不一定用来描述次序或顺序。应该理解,这里所描述的本发明的实施例能够以不同于这里所描述或说明的其它次序操作。另外,尽管,这里描述了优选实施例、具体结构和配置,但是可以在不偏离所附权利要求的范围的情况下,在形式和细节上做出各种改变或修改。