时钟控制电路与方法

文档序号:6543337阅读:221来源:国知局
时钟控制电路与方法
【专利摘要】本发明提供一种时钟控制电路,其可以被加入到任何在途处理器,以解决由于处理结果和环境条件所导致的变化而带来的计时问题。在环境检测(如处理、温度和电压)时检测关键指令(使用关键通路的指令)。该信息用于控制周期挪用。
【专利说明】时钟控制电路与方法

【技术领域】
[0001] 本发明涉及由处理器使用的时钟信号的控制,特别地,涉及在需要时选择性地进 行周期挪用。

【背景技术】
[0002] 利用设计和制造技术以缩小晶体管尺寸已经取得成功,从而可以在单个的集成电 路(1C)上,如片上系统(SoC)上,集成越来越多的晶体管。技术的演进同时引入了显著的 挑战,比如高缺陷率和器件参数变化。此种变化改变了 CMOS电路的传输延迟,进而导致1C 的功能失效。
[0003] 传统的SoC设计方法通过考虑"最劣值"(WC)运行条件来满足计时需求,导致最高 运行频率降低,以及面积和功率开销的增大。
[0004] 另一种"典型值"设计方法在面积和性能、耗能之间提供了一种更佳的平衡。然而, 典型状况设计的不利是计时误差。当动态运行环境(如温度/电压)发生变化时,关键通路 上的计时余量减小;或者由于老化而导致电路慢于典型运行频率时,即可能发生计时误差。
[0005] 因此,存在着对于变化耐受的结构解决方案的需求,以提供优于最劣值的设计1C, 从而提升设计规格(速度、面积、功耗),而无需承受功能失效。
[0006] 在中央处理单元(CPU)架构中,已经使用过较多技术来克服以上所述的计时问 题,从而处理器得以正确地运行且变得对于变化耐受。
[0007] 最早的技术之一指向Razor,其基于CPU中的误差检测和恢复,例如暂停所 有在途的处理级(或时间借用)并等待最慢的处理级完成其运算或允许指令重新执 行° 这种方法在 Dan Ernst Razor 的 "Circuit-Level Correction Of Timing Errors For Low-Power Operation,',Proceedings of the 36th International Symposium on Microarchitecture MICRO-362003 中进行了披露。
[0008] 这种暂停动作保证了在后的指令在缺损指令恢复之后才继续其下一个在途处理 级。
[0009] 图1所示的是一种已知的架构,其利用了 Razor触发器通过时钟控制来检测误差 和恢复。
[0010] 这种技术的不利之处在于反馈信号,其需要在非常短的时间(在运用Razor电路 时为一个时钟周期的50% )内被传送到所有在途的处理级。
[0011] 在大CMOS管芯中,在途处理级之间相距数毫米,实现起来会有困难。此外,在复杂 的微处理器中将会变得完全不可行,因为可能需要几个时钟周期来将时钟信号通过时钟分 配网络进行传送,而这些不可能仅在一个周期内完成。
[0012] 运用类似Razor的技术还会给CPU面积带来20%至30%的增长。这是因为Razor 触发器的面积典型地大于2倍的通常主从触发器的面积。
[0013] 另一种技术是误差预测。Toshinori Sato 在"A Simple Flip-Flop Circuit for Typical-Case Designs for DFM",ISQED2007 中,提出了一种对于 Razor 方法的架构的变 体,以简化设计。其想法是包括两个具有相同时钟(去除了在Razor中由于延迟时钟而出 现的短通路问题)的触发器,但是看守触发器在数据通路中具有延迟缓冲器。如果电压持 续下降,或者频率进一步上升,该电路则预测数据通路失效。
[0014] 该技术不能探测到检测窗口(延迟缓冲器)以外的误差。同样的,如果该技术用 于进程补偿,则在主触发器中会出现变化稳定性的问题。
[0015] 传统地,误差检测和确定应当在一个或半个时钟周期内完成,对于大的处理器来 说较难实现,而上述的方法未能解决此问题。


【发明内容】

[0016] 根据本发明的实施方式,提供如权利要求所述的装置与方法。
[0017] 根据本发明的一个方面,提供一种用于控制处理系统所使用的时钟信号的时钟控 制电路,所述处理系统接收处理指令,所述时钟控制电路包括:
[0018] 传感器结构,用于感测进程或环境变化,并据以确定是否需要时钟周期挪用;
[0019] 检测器结构,用于确定处理指令在处理系统中是否使用关键通路;以及
[0020] 时钟控制单元,用于当传感器结构确定需要时钟周期挪用和当检测器结构确定处 理指令使用关键通路时,执行时钟周期挪用。
[0021] 本发明的电路可用于通过分析处理指令来预测误差,而不是检测误差。示例地,这 种分析可以在处理进程使用指令之前一或两个时钟周期进行,以避免计时问题。这种预测 可以与处理器的其他单元并行执行,以给予预测更多的时间。
[0022] 误差预测可以根据进程变化启用或不启用,进程变化是通过感测何时不需要进行 时钟周期挪用得到,例如当没有老化情况或当管芯为典型管芯时,不存在计时问题。这种情 况下,此种设计的功耗相比于基于误差检测一直处于激活状态的设计的功耗而言较低。
[0023] 传感器结构包括以下一个或多个:
[0024] 环型振荡器传感器;
[0025] 温度传感器;
[0026] 供电电压断供传感器;以及
[0027] 老化检测器。
[0028] 这些不同的传感器可以用于确定时钟周期挪用是否必要,也就是说当制造条件或 环境条件表明处理单元正运行于其设计容限之外时。
[0029] 检测器结构可以包括数据库,数据库存储处理系统支持的使用关键通路的至少每 个指令的信息。这使得对于时钟周期挪用的需求是基于对于将要处理的处理指令的分析 的,而不是基于对于误差的检测。
[0030] 检测器结构可以包括部分解码器,部分解码器用于部分地解码处理指令,数据库 存储由部分解码的指令所读取的信息。可以使用查找表来存储处理指令的信息,所述信息 可以包括处理指令为关键指令的信息,以及处理指令对于哪个处理单元(在处理系统包括 多个处理单元的情况下)形成关键通路。
[0031] 本发明还提供一种处理系统,其包括:
[0032] 至少一个处理器;
[0033] 时钟信号发生器;以及
[0034] 本发明的时钟控制电路,用于处理时钟信号发生器的时钟信号。
[0035] 该系统可以包括多个处理器,包括至少一个取得单元,控制单元,以及执行单元。 从而,该系统可以是CPU架构。
[0036] 本发明还提供一种用于控制处理系统所使用的时钟信号的时钟控制方法,所述处 理系统接收处理指令,该方法包括:
[0037] 感测进程或环境变化,并据以确定是否需要时钟周期挪用;
[0038] 确定处理指令在处理系统中是否使用关键通路;以及
[0039] 当确定需要时钟周期挪用和当确定处理指令使用关键通路时,执行时钟周期挪 用。
[0040] 所述感测进程或环境变化,并据以确定是否需要时钟周期挪用发生在任何利用所 述指令执行处理之前至少一个时钟周期,从而提供了一种可预测的方法。

【专利附图】

【附图说明】
[0041] 以下将结合附图对于本发明的实施方式进行进一步详细地描述,其中:
[0042] 图1所示的是一种已知的对于变化容忍的时钟系统;
[0043] 图2所示的是一种CPU架构的基本结构;
[0044] 图3所示的是利用本发明对图2所示的处理器架构进行的修改;
[0045] 图4所示的是图3的电路中所使用的检测器的示例;
[0046] 图5是一种用于描述本发明的电路运行的时间图;以及
[0047] 图6所示的是一种利用图3的电路的传感器的示例。

【具体实施方式】
[0048] 本发明提供一种时钟控制电路,其可以被加入到任何在途处理器,以解决由于进 程输出和环境条件所导致的变化而带来的计时问题。在环境检测(如进程、温度和电压) 时检测关键指令(执行为关键通路的指令)。该信息用于控制周期挪用。
[0049] 本发明从而提供了一种对于变化耐受的架构,以提供优于最劣值的CPU设计。本 发明使用智能的误差预测器,其基于关键指令。智能在途停转单元被用于保留在途背景,并 允许关键指令的正确执行。如果执行关键指令,将只会有一个时钟周期的损失。
[0050] 图2所示的是一种通用处理器的模块结构图,本发明的系统可以加入其中。
[0051] 在本示例的实施方式中,处理器包括三个在途处理级,第一在途处理级10为取得 单元,第二在途处理级12为控制(解码)单元,第三在途处理级为执行单元14。
[0052] 处理器进一步包括时钟发生单元(CGU) 16,其向不同的在途处理级提供时钟信号。 为不丧失通用性,执行单元显示为包括算法逻辑单元(ALU)、地址发生单元(AGU)、乘法单 元(MUL)、变换单元(SHIFT)和注册文件。
[0053] 为执行程序,处理器执行以下步骤:
[0054] 控制单元向AGU发送命令,以向程序存储器发送指令的地址。
[0055] 取得单元接收指令并将其发送到控制单元。
[0056] 控制单元解码指令,并将适当的地址和控制信号发送到注册文件和ALU、MUL、变换 单元。
[0057] 执行单元执行指令,并将结果发送到注册文件或存储器。
[0058] 时钟发生单元(C(iU)同时向处理器的所有部分发送时钟信号。
[0059] 由于进程的变化,处理器在控制单元或执行单元中可以出现失效。通常地,在取得 单元不会出现失效,因为一般关键通路位于控制单元和执行单元两个处理级中,或者取得 单元为耐受的。为避免这种功能失效并保证处理器正确地运行,本发明通过加入智能检测 器来对系统进行修改。
[0060] 图3所示的是利用本发明对图2所示的处理器架构进行的修改。与图2中相同的 元件由相同的标号进行标示。
[0061] 指令非但提供给取得单元,而且提供到智能检测器30,其向时钟发生单元16提供 一个控制输入。智能检测器30从整体传感器32处接收进程变化信息。
[0062] 整体传感器32根据制造进程状态和环境条件启用或不启用智能检测器功能。制 造进程状态和环境条件可以通过环型振荡器来检测,其检测芯片速度,进而可以改变进程 条件的独立性。
[0063] 整体传感器32用于检测架构是否正确地工作(从而无需进行修正)或是否需要 预测误差(从而可以根据指令而可能需要进行修正)。
[0064] 智能检测器30用于检测关键指令。
[0065] 时钟发生单元16被改造为在控制单元12或执行单元14中存在关键指令时提供 移除(挪用)一个时钟周期的功能。
[0066] 根据图3所示,利用一个时钟总线来向三个处理单元发送,时钟挪用发生在CGU16 中。时钟控制的控制信号来自于智能检测器30。
[0067] 以下详细说明所加入的元件。
[0068] 智能检测器30
[0069] 为找到关键指令,有必要说明哪些指令符合关键指令通路。
[0070] 这可以通过为每个指令进行离线仿真来实现,其由给定的CPU的指令集架构提供 支持。作为这种分析的结果,可以识别出一个指令的子集,其在控制单元或执行单元中执行 为关键通路。识别出的关键指令被存储于例如一个查找表中,其后续为智能检测器的一部 分,其可以是完整形式查找表或查找表的一部分。
[0071] 除了存储关键指令之外,该指令关键在何处的信息也被存储,例如对于控制在途 处理级是关键的,和/或对于执行在途处理级是关键的。
[0072] 在一种实施方式中,智能检测器的运行是用于部分地解码所进来的指令,并将所 述部分解码的指令与存储在查找表中的关键指令进行比较。
[0073] 所述部分地解码并不需要为系统的其他部分提取出控制信号(在解码处理级会 进行完全解码)。部分地解码只需要识别出指令的类型,例如加或乘。
[0074] 如果识别出关键指令,智能检测器向CGU16提供一个信号,标识出所进来的指令 对于哪个在途处理级是关键的。
[0075] 该流程如图4所示,其中部分解码器40处理指令并将结果与查找表42中的内容 进行比较。
[0076] 如果异或门的输入相同,则输出为〇 ;反之则输出1。由于在输出端有反相,因此当 输出信号为1时,表明检测到关键指令。
[0077] 图5所示的是一系列指令50。
[0078] 图5中示出了时间曲线52、54、56、58,其中信号52表示的是信号满足关键通路的 检测;当控制单元中出现关键指令时,激活停转控制信号53 (图5中没有示出这种指令情况 的例子,所以其图线是平直的);当关键指令出现在执行单元时,激活停转执行信号54。图 线56表示的是基本时钟信号Hclk,图线58表示的是经挪用的时钟信号。
[0079] 图5显示,当一系列指令50中的指令434A来到处理器的在途通道时,智能检测器 对其进行部分地解码,并向CGU发送一个命令,以在该指令去到执行处理级时挪用一个时 钟周期(例如,跳过一个时钟周期。)这是基于智能检测器所发出的信息,该信息表明该指 令在执行处理级满足关键通道。通过挪用单个时钟周期,引入了一个时钟周期的延迟。
[0080] 该过程只在整体传感器表明所量测到的运行性能低于给定的阈值时才被触发。
[0081] 通路的关键与否的问题是已知的,且时钟周期挪用的方法也是已知的。时钟周期 的挪用涉及到偏移或变化送到相应的锁存器的时钟的到达时间,从而导致可用于电路中逻 辑处理的不具有关键时间问题的那部分时间被"窃取"。该挪用的部分被用作另一个是关键 电路的电路中的构成瓶颈的逻辑处理的额外解决时间。
[0082] 本发明通过动态地只在有需要时挪用一个时钟周期来调整时钟,从而使得系统可 以正确工作于较高的频率。这会使得其处理能力损失较少。
[0083] 本发明从而只在需要进行挪用的时候进入时钟周期的控制,而不是像传统的技术 那样采用真正的处理周期挪用概念。
[0084] CGU16
[0085] CGU16根据来自智能检测器的命令而从处理器的在途通道中挪用一个时钟周期。 这个命令不但包含关键指令即将出现的信息,还包含其将会在哪一个在途处理级出现的信 息。C(iU随后在所述指令在相应的在途处理级中执行时挪用时钟周期。在上述的CPU架构 中,根据在智能检测器中做出的决定而生成的命令与取得处理级并行运行。从而,命令总是 在先于数据到达目标处理级的时钟周期之前的一个时钟周期来到。因此,挪用一个时钟相 位将不会有计时问题。
[0086] 为描述电路的运行,"停用执行"用于表明关键指令发生于执行处理级,而"停用控 制"用于表明关键指令发生于控制单元。
[0087] 图5所示的是当"停用执行"信号54为激活时,下一个"Hclk"时钟脉冲56不会 传送到处理器在途通道,从而留有足够的时间以完成当前指令。在本示例中,关键指令发生 于执行处理级。
[0088] "经挪用的时钟"信号58表明处理器在途通道处理级(在图3中称为时钟)中,根 据智能检测器所提供的信息而挪用了一个时钟周期。"Hclk"信号是由CGU产生的时钟信 号,"经挪用的时钟"信号即从它产生而来。
[0089] 尽管在示出的例子中为处理器有途处理级和智能检测器使用一个时钟周期(或 时间线),这些时间线也可以是分别的。
[0090] 整体传感器32
[0091] 智能检测器应当仅在架构中存在有确定程度的进程或环境变化时才被启动。图6 所示的是一种整体传感器的例子,其利用环型振荡器传感器60来测量电路时间,以及例如 利用温度传感器62、断供传感器64和老化检测器66来测量M0SFET的性能下降。各传感器 所生成的各信号提供到或门68,以生成所述命令来激活智能传感器。此外,也可以利用一个 动态属性单元来检测智能检测器何时需要被激活。这可以是一种软性的传感器,例如基于 检查各类操作(如相加操作)的结果并利用对误差的检测来激活智能传感器。从而,整体 传感器可以是前述各个传感器的集合。
[0092] 本发明可以应用于大多数的现代系统的CPU架构中,其中集成电路的运行受到进 程和/或环境变化的影响。本发明的各种可变性可以实现数种在途运行模式,使得设计可 以承受更多的计时变化。
【权利要求】
1. 一种用于控制处理系统所使用的时钟信号的时钟控制电路,所述处理系统接收处理 指令,其特征在于,所述时钟控制电路包括: 传感器结构(32),用于感测进程或环境变化,并据以确定是否需要时钟周期挪用; 检测器结构(30),用于确定处理指令在处理系统中是否使用关键通路;以及 时钟控制单元(16),用于当传感器结构(32)确定需要时钟周期挪用和当检测器结构 确定处理指令使用关键通路时,执行时钟周期挪用。
2. 如权利要求1所述的电路,其特征在于,传感器结构(32)包括以下一个或多个: 环型振荡器传感器; 温度传感器; 供电电压断供传感器;以及 老化检测器。
3. 如权利要求1或2所述的电路,其特征在于:检测器结构(30)包括数据库(42),数 据库(42)存储处理系统支持的使用关键通路的每个指令的信息。
4. 如权利要求3所述的电路,其特征在于:检测器结构包括部分解码器,部分解码器用 于部分地解码处理指令,数据库(42)存储由部分解码的指令所读取的信息。
5. 如权利要求3或4所述的电路,其特征在于:数据库(42)包括查找表。
6. 如权利要求3、4或5所述的电路,其特征在于:检测器结构提供的输出表明处理指 令为关键指令,并标识所述指令对哪个处理单元形成关键通路。
7. -种处理系统,其特征在于,包括: 至少一个处理器(10,12,14); 时钟信号发生器(16);以及 如在前任意一项权利要求所述的时钟控制电路,用于处理时钟信号发生器的时钟信 号。
8. 如权利要求7所述的系统,其特征在于:包括多个处理器,处理器至少包括取得单元 (10),控制单元(12),以及执行单元(14)。
9. 如权利要求7或8所述的系统,其特征在于:包括CPU架构。
10. -种用于控制处理系统所使用的时钟信号的时钟控制方法,所述处理系统接收处 理指令,其特征在于,所述时钟控制方法包括: 感测进程或环境变化,并据以确定是否需要时钟周期挪用; 确定处理指令在处理系统中是否使用关键通路;以及 当确定需要时钟周期挪用和当确定处理指令使用关键通路时,执行时钟周期挪用。
11. 如权利要求10所述的方法,其特征在于,感测包括感测以下一个或多个: 电路计时; 温度; 供电电压断供;以及 老化条件。
12. 如权利要求10或11所述的方法,其特征在于:所述确定处理指令在处理系统中是 否使用关键通路包括将处理指令与数据库进行比较,数据库存储处理系统支持的使用关键 通路的至少每个指令的信息。
13. 如权利要求12所述的方法,其特征在于:确定处理指令在处理系统中是否使用关 键通路包括部分地解码处理指令,数据库存储由部分解码的指令所读取的信息。
14. 如权利要求12或13所述的方法,其特征在于:确定处理指令在处理系统中是否 使用关键通路包括表明处理指令为关键指令,并标识所述指令对哪个处理单元形成关键通 路。
15. 如权利要求10至14中任一项所述的方法,其特征在于:所述感测进程或环境变 化,并据以确定是否需要时钟周期挪用发生在任何利用所述指令执行处理之前至少一个时 钟周期。
【文档编号】G06F17/50GK104112032SQ201410141788
【公开日】2014年10月22日 申请日期:2014年4月10日 优先权日:2013年4月22日
【发明者】罕默德·费特米, 伦泽·I·M·P·迈耶, 吉亚斯·阿尔-卡迪, 苏兰达拉·冈都, 简·胡格布鲁格 申请人:Nxp股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1