CN117413251A - 用于现场定时事件监视器的具有动态可调节覆盖范围的微电子电路 - Google Patents
用于现场定时事件监视器的具有动态可调节覆盖范围的微电子电路 Download PDFInfo
- Publication number
- CN117413251A CN117413251A CN202180098936.0A CN202180098936A CN117413251A CN 117413251 A CN117413251 A CN 117413251A CN 202180098936 A CN202180098936 A CN 202180098936A CN 117413251 A CN117413251 A CN 117413251A
- Authority
- CN
- China
- Prior art keywords
- timed event
- monitor
- microelectronic circuit
- monitors
- trigger signal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000004377 microelectronic Methods 0.000 title claims abstract description 73
- 238000012545 processing Methods 0.000 claims abstract description 28
- 230000003044 adaptive effect Effects 0.000 claims abstract description 7
- 230000008859 change Effects 0.000 claims abstract description 7
- 230000008878 coupling Effects 0.000 claims abstract description 3
- 238000010168 coupling process Methods 0.000 claims abstract description 3
- 238000005859 coupling reaction Methods 0.000 claims abstract description 3
- 238000001514 detection method Methods 0.000 claims description 31
- 238000012544 monitoring process Methods 0.000 claims description 9
- 238000000034 method Methods 0.000 claims description 6
- 230000001902 propagating effect Effects 0.000 claims description 3
- 230000004044 response Effects 0.000 claims description 3
- 230000008569 process Effects 0.000 claims description 2
- 230000008901 benefit Effects 0.000 description 10
- 238000013461 design Methods 0.000 description 5
- 230000000630 rising effect Effects 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 238000012937 correction Methods 0.000 description 3
- 238000009826 distribution Methods 0.000 description 3
- 238000005265 energy consumption Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000003139 buffering effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000012938 design process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000003860 storage Methods 0.000 description 2
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000013078 crystal Substances 0.000 description 1
- 230000009849 deactivation Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 239000012535 impurity Substances 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000007420 reactivation Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/31727—Clock circuits aspects, e.g. test clock circuit details, timing aspects for signal generation, circuits for testing clocks
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/31725—Timing aspects, e.g. clock distribution, skew, propagation delay
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3024—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a central processing unit [CPU]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
- G06F11/3419—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
- G06F11/348—Circuit details, i.e. tracer hardware
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K5/00—Manipulating of pulses not covered by one of the other main groups of this subclass
- H03K5/19—Monitoring patterns of pulse trains
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/81—Threshold
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Mathematical Physics (AREA)
- Nonlinear Science (AREA)
- Power Sources (AREA)
Abstract
自适应微电子电路的性能至少部分地能通过选定操作参数的值来配置。在处理路径上,寄存器单元(401‑406)的数据输入耦合到各自的逻辑单元的输出,用于临时存储所述逻辑单元的输出值。多个定时事件监视器(411‑412、414‑416)通过生成定时事件观察信号来响应在被监视的寄存器单元(401‑402、404‑406)的数据输入处比允许的时间限制晚变化的数字值。多个定时事件监视器(411‑412、414‑416)形成多个监视器组(421‑423),每一个监视器组被耦合到触发信号树(501‑503)的分支,用于将特定于监视器组的触发信号耦合到独立于其他监视器组的监视器组(421‑423)。控制单元选择性地允许或禁止将各自的触发信号传播到触发信号树(501‑503)的所述分支中。
Description
技术领域
本发明总体上相关于微电子电路技术,该微电子电路具有针对处理路径上的定时事件(timing event,时序事件)的内置监视能力。特别地,本发明涉及能够优化定时事件监视电路在运行期间的能量消耗的方法。
背景技术
诸如微处理器、微控制器、存储器电路等的微电子电路包括大量的处理路径,这些处理路径由交替的逻辑单元和寄存器单元组成。逻辑单元执行逻辑运算,其中间结果暂时存储在寄存器单元中,这些寄存器单元可以具有锁存器(latch)或触发器(flip-flop)的形式。时钟信号设置运算的步调(pace),例如使得在时钟信号的下一个上升沿或下降沿之前在逻辑单元的输出处必须准备好中间结果,以在各自的寄存器单元中被适当地存储。如果逻辑单元的输出相对于时钟信号中的决定性边沿变化得太晚,则定时事件就会发生。
自适应微电子电路是可以通过改变一个或多个操作参数的值来改变其运行的装置。自适应微电子电路典型的操作参数是操作电压(或多个电压,在超过一个的情况下)和时钟频率(或多个频率,有超过一个的情况下)。微电子电路的功率消耗粗略地正比于操作电压的平方,这意味着降低操作电压能够显著地节约电力。
降低微电子电路的操作电压趋向于增加传播延迟。定时事件可能是由于例如在运行期间试图通过降低整个电路或其中一些电压域的操作电压来最小化电路的能耗导致的。检测定时事件的发生是重要的,这使得控制实体可以采取纠正措施,例如通过增加电压、降低时钟频率、丢弃可能不正确的结果等等。微电子电路的设计者可以在电路内的各种位置处放置所谓的定时事件监视器。当定时事件监视器在各自的被监视的寄存器单元中检测到定时事件时,其产生定时事件信号。
微电子电路中的每个电路元件在运行时都会消耗功率,定时事件监视器也不例外。在微电子电路中放置大量的定时事件监视器因此涉及到一个悖论:虽然它有助于针对每一个时刻最节能的运行精确地找到操作电压和时钟频率之间确切的平衡,但它同时会增加总能耗,因为定时事件监视器也会汲取功率。在电路设计的阶段,预测定时事件监视器的最佳数量和位置是困难的,因为每个电路可能最终会有不同种类的用途,要求略微不同种类的动态优化。甚至硅质量和制造条件的变化也具有影响,使得来自一个生产批次的微电子电路与其他批次的微电子电路相比在使用期间可能需要不同种类的优化。这种因素经常会使设计者在电路设计中使用过于悲观的定时事件监视器的数量,具有次优能效的不利结果。
期望的是找到一种方法,该方法既确保微电子电路包括放置在适当位置的足够的定时事件监视器,同时又可以防止这种定时事件监视器中消耗过量的能量。
发明内容
根据第一方面,提供有一种自适应微电子电路,其性能至少部分地能够通过选定操作参数的值来配置。微电子电路包括多个处理路径,在其上的寄存器单元的数据输入被耦合到各自的逻辑单元的输出,用于临时存储所述逻辑单元的输出值。微电子电路包括多个定时事件监视器,每一个定时事件监视器被配置为通过生成定时事件观察信号来响应在各自的被监视的寄存器单元的数据输入处比允许的时间限制(allowable time limit)晚变化的数字值,其中所述允许的时间限制由耦合到各自的寄存器单元的至少一个触发信号的至少一个触发沿来确定。所述多个定时事件监视器形成多个监视器组,每一个监视器组被耦合到触发信号树的分支,用于将特定于监视器组的(monitor-group-specific)触发信号耦合到独立于其他监视器组的监视器组的定时事件监视器。微电子电路包括控制单元,该控制单元配置为选择性地允许或禁止将各自的触发信号传播到触发信号树的所述分支中。
根据一种实施例,所述定时事件监视器基于在各自的定时事件监视器之前而没有其他定时事件监视器的处理路径的长度,来归属于所述监视器组。这涉及的优点是每一个监视器组中定时事件发生的可能性都能以具有合理确定性的系统的方法来预测。
根据一种实施例,微电子电路包括两个或更多个电压域,每个此电压域具有特定于域的操作电压(domain-specific operating voltage)的特征。然后,定时事件监视器基于以下至少一项来归属于所述监视器组:各自的定时事件监视器在电压域上的位置,各自的定时事件监视器之前的处理路径的点在电压域上的位置。这涉及的优点是可以以逻辑和直觉的方法处理特定于域的操作电压对监视器检测到的定时事件的可能性的影响。
根据一种实施例,定时事件监视器基于将流经处理路径的数据量的计算估计来归属于所述监视器组,各自的定时事件监视器配置为监视处理路径的寄存器单元。这涉及的优点是,在停用(deactivating)和重新激活(reactivating)监视器组的定时事件监视器时,可以考虑诸如数据量的运行时间的影响。
根据一种实施例,定时事件监视器基于它们在微电子电路内的物理位置来归属于所述监视器组。这涉及的优点是,可以通过选择性地停用和重新激活合适的监视器组来考虑影响定时事件的发生的位置相关的情况。
根据一种实施例,定时事件监视器基于它们在微电子电路的功能单元内的位置来归属于所述监视器组。这涉及的优点是,选择性地停用和重新激活定时事件监视器组的做法可以延伸到功能单元,甚至是那些反之在电路设计中呈现为“黑箱”的功能单元。这种方法也可以在功能单元内延伸,例如单元内的管线级数(pipeline stages)。
根据一种实施例,定时事件监视器根据它们所应用的检测窗口类型来归属于所述监视器组。其中检测窗口类型是指各自的定时事件监视器所应用的检测窗口在时间轴上相对于触发沿的位置,该触发沿限定针对各自的被监视的寄存器单元的数据输入中的变化的允许的时间限制。这涉及的优点是,可以基于每一个电路和每一种运行情况中最合适的检测窗口类型,选择性地停用和重新激活监视器组。
根据一种实施例,至少一个监视器组的定时事件监视器配置为从一个或多个过程、电压或温度监视器产生的信息获取等同于各自的检测窗口的定时的信息,并将所述信息转换为各自的检测窗口的定时。这种转换可以例如通过应用等式来完成,该等式的执行已经建立和/或编程到微电子电路的各自的部分中。这涉及的优点是,与PVT相关的因素可以直接影响定时事件检测的特性。
根据一种实施例,微电子电路包括触发信号树的至少一个所述分支中的可变延迟元件。这能够通过选定的可变延迟量有控制地延迟传播到触发信号树的各自的分支中的触发信号。这涉及的优点是,检测窗口相对于到各自的寄存器单元的触发信号的位置可以以非常实用的方法被每个监视器组控制。
根据一种实施例,控制单元被配置为监视从微电子电路的定时事件监视器接收到的定时事件观察信号的总速率。然后,控制单元可被配置为基于定时事件观察信号的所述总速率,选择性地允许或禁止将各自的触发信号传播到触发信号树的所述分支中。这涉及的优点是,可以根据每一种情况中需要多少这种定时事件检测,来动态地控制用于执行定时事件检测的功率的量。
根据一种实施例,控制单元被配置为分别监视从不同的监视器组的定时事件监视器接收到的定时事件观察信号的速率。然后,控制单元可被配置为响应于从各自的监视器组接收到的定时事件观察信号的速率低于预定阈值,选择性地禁止将触发信号传播到触发信号树的各自的分支中。这涉及的优点是,可以根据每一种情况中需要多少这种定时事件检测,来动态地控制用于执行定时事件检测的功率的量。
附图说明
附图被包括是为了提供对本发明的进一步理解并构成这一说明书的一部分,示出本发明的实施例并与描述一起有助于解释本发明的原理。在附图中:
图1示出了在处理路径的寄存器单元上的定时事件监视器的使用;
图2示出了在不同电压域中的定时事件监视器的位置;
图3示出了在微电子电路中具有内部定时事件监视器的功能单元的设置;
图4示出了一组定时事件监视器;以及
图5示出了一种形成触发信号的方法。
具体实施方式
图1示出了微电子电路的一部分,其例如可以是微处理器或微控制器。这里进一步假定的是微电子电路是所谓的自适应微电子电路。这意味着它的性能至少部分地可以通过选择操作参数的值来配置。性能可以在各种方面进行评估,如功率消耗、每秒执行的运算、每个单位时间的错误情况的次数等。
典型的操作参数(其的值可以为了配置性能的目的而选择)包括但不限于操作电压和/或时钟频率,该操作电压和/或时钟频率对于微电子线路中的至少一些内部部件是可用的。操作参数的选择的值对于整个自适应微电子电路来说可以是相同的。作为替代的,微电子电路的内部部件可以形成组和/或功能块,使得至少一些操作参数的值可以按照组和/或按照功能块来选择。
通常,操作电压的值的降低可以降低功率消耗,但会减慢逻辑状态之间的转换,这反过来意味的是错误的值可能会被存储在寄存器中。降低时钟频率减少能耗并降低存储错误值的风险,但同时它减少数据吞吐量。诸如半导体材料中的杂质和晶体不规则(crystalline irregularity)、制造中的误差等随机因素,意味着达到最佳性能的方法因电路而异。运行时的因素(如在电路的功能块之间的所需处理量的变化和处理操作的分布)在配置性能方面导致动态改变的需求。
微电子电路(其的一部分在图1中显示)包括多个处理路径,其由逻辑单元接着寄存器单元而组成。在图1中,逻辑单元以圆形显示而寄存器单元以矩形显示。寄存器单元的数据输入被耦合到各自的逻辑单元的输出,用于存储这些逻辑单元的输出值。这一存储以由触发信号决定的步调发生,通常也称为时钟频率信号或简单地称为时钟信号。处理路径形成互联的网络。例如,这在图1中被示意性地显示,使得逻辑单元101的输出耦合到寄存器单元102和寄存器单元103这两者的数据输入。
微电子电路包括多个定时事件监视器,其中定时事件监视器104作为示例显示。定时事件监视器与相关的寄存器单元(此处为寄存器单元102)一起运行。它被配置为通过生成定时事件观察(timing event observation,TEO)信号来响应定时事件,即其中在被监视的寄存器单元的数据输入处的数字值比允许的时间限制晚变化的情况。
允许的时间限制由至少一个触发信号的至少一个触发沿确定,该至少一个触发信号被耦合到各自的寄存器单元。简单地,如果触发信号的上升沿是触发沿,允许的时间限制就是触发信号的上升值开始影响寄存器单元中的存储操作的时刻。取决于使用的电路技术,允许的时间限制的确切定义可能是其他的事物,如触发信号上升沿的不久之前或不久之后。触发沿也可以是触发信号的下降沿,或者上升沿和下降沿可以都充当触发沿。
定时事件监视器检测的是各自的寄存器单元的数据输入何时相对于触发沿变化。为了这一目的,定时事件监视器应用检测窗口,其为相对于触发沿而限定的时间间隔。已知的检测窗口有各种类型,具有对于错误纠正的需求不同的影响。作为示例,检测窗口可以位于触发沿之前。附加的或作为替代的,寄存器单元可以在触发沿之后具有缓冲期(graceperiod),其中数据输入的变化仍不会导致错误,且检测窗口可以覆盖缓冲期。缓冲期可以基于作为寄存器单元的锁存器或借时触发器。在这种类型的检测窗口内检测到的输入数据的变化不需要错误纠正,因为输入数据的正确值已被存储。检测窗口类型的另一个示例是,检测窗口延伸超过输入数据的改变将导致寄存器单元中存储错误值的时段。这种检测窗口类型要求微电子电路包括错误纠正机制。
为了本描述的目的,有充足的理由假设的是有清楚的方法来确定相对于触发信号中相应的边沿的允许的时间限制,并且有充足的理由假设的是监视电路是这样构建的:如果输入数据的变化晚于允许的时间限制,它们就会产生TEO信号。
监视电路确切的实施方式对本说明并不重要。合适的监视电路实施方式的示例可以例如在专利公开PCT/FI2017/050290、PCT/FI2017/050475和PCT/FI2020/050108中找到。
本描述的一方面是,多个定时事件监视器在微电子电路中形成多个监视器组。这些组可以以各种方法定义。一个可能的形成组的原则是,基于在它们所监视的寄存器单元中定时事件有多大可能发生来分类定时事件监视器。这种可能性可以以各种方法测量。在图1中,定时事件监视器可以基于处理路径的长度来归属于监视器组,该处理路径在各自的定时事件监视器之前,且没有其他的定时事件监视器。例如,定时事件监视器105在其与相同处理路径上的前一个定时事件监视器104之间具有两个逻辑单元106和107(以及中间寄存器单元)。
此处必须考虑处理路径的交联网络性质(cross-linked network nature)。例如,如果考虑图1中两个最低水平线之间的桥连接,那么在定时事件监视器108和定时事件监视器109之间仅有一个逻辑单元110。然而,仅在第二最低水平线之后,在定时事件监视器109和相同处理路径上的前一个定时事件监视器之间有至少四个逻辑单元111、112、113和114(以及中间寄存器单元)。因此,与定时事件监视器105和定时事件监视器109相比,定时事件监视器109应分类为在其之前具有较长的处理路径,而没有其他定时事件监视器。
图2示出了一种示例,其中微电子电路包括两个或更多个电压域,这些电压域可以形成对定时事件监视器进行分组的基础。在此示意性地显示的微电子电路201分成四个电压域。电压域具有特定于域的操作电压的特征。换句话说,电压域定义为微电子电路中共享相同操作电压的部分,其值可以独立于(或者至少一定程度上自由于)为其他电压域选择的操作电压来动态选择。图2中电压域显示为清楚区分的矩形几何区域,这是图形的简化,实际上,电压域可能具有复杂的、相互交织的几何形状。
定时事件监视器可以基于它们在电压域上的位置来归属于监视器组。例如,在图2中定时事件监视器202、定时事件监视器203和定时事件监视器204可以属于相同的监视器组,因为它们都位于微电子电路201的第一电压域上。作为不排除的替代,定时事件监视器可以基于在各自的定时事件监视器之前的处理路径的点在电压域上的位置来归属于监视器组。在图2中,定时事件监视器205可以与定时事件监视器206和定时事件监视器207归属于相同的监视器组,因为它们都位于第四电压域上。附加的或作为替代的,定时事件监视器205可以与定时事件监视器208、定时事件监视器209、定时事件监视器210和定时事件监视器211归属于同一个监视器组,因为它之前的处理路径包括位于第三电压域上的点。
当定时事件监视器位于特定的电压域上时,它监视的寄存器单元中定时事件有多大可能发生在很大程度上取决于为那个电压域选择的操作电压值。相似的,当考虑各自的定时事件监视器之前的处理路径的点时,那个点处存在的操作电压也会对被监视的寄存器单元中定时事件有多大可能发生具有影响。
附加的或作为替代的,定时事件监视器可以基于对流经处理路径的数据量的估计的计算来归属于监视器组,各自的定时事件监视器被配置为监视处理路径的寄存器单元。在微电子电路的设计过程期间,这种估计可以使用仿真软件来计算。估计的计算可以考虑到微电子电路的预期用途。
附加的或作为替代的,定时事件监视器可以基于它们在微电子电路内的物理位置来归属于监视器组。在这种情况下,微电子电路的许多种类的结构特征和组织特征可能会具有影响。作为说明性的示例,位置接近产生大量热量的点的电路元件,相比于位置远离这些点的电路元件,可能在运行期间经历较高的温度。较高的运行温度可能会影响被监视的寄存器单元中定时事件发生的可能性。
附加的或作为替代的,定时事件监视器也可以基于它们在微电子电路的功能单元内的位置来归属于监视器组。图3中显示了一种示例,其中微电子电路301包括功能单元302。功能单元是指在微电子电路内全部提供特定的、有区别的功能的一组电路元件。功能单元302的一种示例是形成微电子电路301的一部分的集成存储器(integrated memory,集成内存)。对于微电子电路的设计者来说,通常将功能单元合并为单独设计的模块。从其他电路元件的视点,这种功能单元可以呈现为“黑箱”,该黑箱通过一系列的输入和输出与其他电路元件交互并实现期望的功能,但是就单独的逻辑单元或寄存器单元层面的操作而言是无法访问的。在这种情况下,使位于功能单元中的所有定时事件监视器构成有区别的监视器组(该监视器组在功能单元内具有触发信号树的自有分支)可能是有利的。这些功能单元内的监视器也可以通过其他方式(例如PVT监视器)获得等同于定时的信息,并且例如通过使用方程将其转换为定时。
附加的或作为替代的,定时事件监视器可以基于它们所应用的检测窗口类型来归属于监视器组。在此检测窗口类型是指检测窗口在时间轴上相对于触发沿的位置,该触发沿确定了针对被监视的寄存器单元的数据输入中的变化的允许的时间限制。
图4和图5示出了形成监视器组和为监视器组设置具有分支的触发信号树的概念。图4示意性地显示了设计微电子电路的步骤。在设计中有众多的寄存器单元,其中的寄存器单元401、寄存器单元402、寄存器单元403、寄存器单元404、寄存器单元405和寄存器单元406在图4中显示。触发信号树向寄存器单元发出触发信号。在图4中,所述触发信号树的根被命名为REG_CLKROOT。示意性地示出的寄存器单元401至寄存器单元406成对地归属于触发信号树的分支。
6个寄存器单元中的5个寄存器单元配备有各自的定时事件监视器411、412、414、415和416。在图4中,针对将前往定时事件监视器的触发信号,有单独的根MON_CLKROOT。
图4中的虚线椭圆显示了三个有区别的监视器组421、422和423是如何被识别的。定时事件监视器411和定时事件监视器412归属于监视器组421,定时事件监视器414和定时事件监视器415归属于监视器组422,定时事件监视器416单独构成监视器组423。监视器组的形成可以例如通过使电路设计经受静态定时分析(Static Timing Analysis,STA)来开展,这针对被监视的寄存器单元401、寄存器单元402、寄存器单元404、寄存器单元405和寄存器单元406中的每一个寄存器单元给出了估计富余量(estimated slack)。然后,估计富余量的范围可以分成间隔,诸如根据估计富余量的规模相等地按大小分成间隔。作为一种示例,STA可以指出的是寄存器单元401和寄存器单元402可能会经历时钟周期的0%至20%的富余量;寄存器单元404和寄存器单元405可能会经历时钟周期的20%到40%的富余量;寄存器单元406可能会经历时钟周期的40%到60%的富余量。这样,定时事件监视器就分成了图4中显示的组。
估计富余量不一定是单一的值,而是作为可能的富余量值的可能性分布来出现的统计估计。根据估计富余量划分定时事件监视器为若干组,可以基于这种可能性分布的统计描述值,如算术平均值、中位数、方差等,或者基于这些值的任意组合。
利用STA形成监视器组的可供选择的方法是,其中配备监视器的寄存器单元按它们的计算的富余量排列成数字的顺序,然后将这一有序列表分成若干组,使得最终每一组中的寄存器单元数量都相等。根据这一划分,它们各自的定时事件监视器就归入监视器组。在这种方法中,也可以使用统计描述值来代替或附加于一些单独计算(即估计)的富余量值。
在设计过程中的随后的步骤,建立触发信号树来为每个监视器组设置专用分支。在图5中,第一监视器组的定时事件监视器411和定时事件监视器412被耦合到触发信号树的第一分支501,该第一分支将它们链接到根MON_CLKROOT。第二监视器组的定时事件监视器414和定时事件监视器415被耦合到触发信号树的第二分支502,第三监视器组的定时事件监视器416被耦合到触发信号树的第三分支503。
然后,微电子电路被制成包括控制单元,该控制单元被配置为选择性地允许或禁止将各自的触发信号传播到触发信号树的分支501、触发信号树的分支502和触发信号树的分支503中。这种技术一般可描述为时钟门控(clock gating)。在触发信号树的每一个分支的根处添加时钟门,这些分支将触发信号传递到定时事件监视器。这些时钟门可对它们下游的触发信号进行动态门控,从而停止那一分支上的定时事件监视器,并节省功率消耗。作为替代的,这也可以用控制块来实现,该控制块将定时事件信号作为输入,并产生适当的输出信号,该输出信号允许或禁止将各自的触发信号传播到触发信号树的分支中。
作为一种示例,可以假设(如上所述)的是STA为寄存器单元401和寄存器单元402给出时钟周期的0%至20%的估计富余量。相对小的估计富余量度意味着这些寄存器单元中不太可能发生定时事件。控制单元可以监视从微电子电路的所有定时事件监视器接收到的TEO信号的总速率。如果这一速率较低,可能意味着定时事件只发生在发生可能性最高的寄存器单元中,而不是例如在寄存器单元401或寄存器单元402中。在这种情况下,控制单元可以禁止将任何触发信号传播到服务定时事件监视器的触发信号树的分支501中。因此,定时事件监视器411和定时事件监视器412变得不活跃。如果在之后的某个时刻,接收到的TEO信号的总速率增长高于一些预定的限制,控制单元可再次使得触发信号能传播到分支501中。因此,定时事件监视器411和定时事件监视器412变得活跃,并且也开始监视寄存器单元401和寄存器单元402中可能性最低的定时事件。
这一相同的工作原理可以应用于将触发信号传递给定时事件监视器的触发信号树的所有分支。可以定义用于控制单元的TEO信号的总速率的预定限值,从而在禁用和启用将触发信号传播到触发信号树的各种分支中时控制它的操作。附加的或作为替代的,控制单元可以动态地操作,使得接收到的TEO信号的总速率的增加导致激活更多的监视器组,并且接收到的TEO信号的总速率的降低导致激活更少的监视器组。
根据一种实施例,控制单元能够分别监视从不同监视器组的定时事件监视器接收到的TEO信号的速率。在这种情况下,如果从各自的监视器组接收到的TEO信号的速率低于预定阈值,控制单元可关闭监视器组(即选择性地禁止将触发信号传播到触发信号树的各自的分支中)。控制单元可以根据预定的时间表每隔一段时间重新激活这样一个监视器组,以检查监视器组是否仍然以低于阈值的速率产生TEO信号。附加的或作为替代的,响应于从其他监视器组接收到的TEO信号的速率增加超过一些预定的阈值,控制单元可以重新激活这种监视器组。
附加的或作为替代的,微电子电路可以被制成为包括触发信号树的分支501、分支502或分支503的至少一个中的可变延迟元件,该触发信号树将触发信号传递到定时事件监视器。这种一个或多个可变延迟元件就可以通过选定的可变延迟量,将传播到触发信号树的各自的分支的触发信号有控制地延迟。用这种方法,定时事件监视器所应用的检测窗口的位置可以由监视器组改变。检测窗口的位置是参照那个(或那些多个)触发信号中的触发沿确定的,该触发信号控制实际的寄存器单元的操作。有控制地将延迟增加到将触发信号传递到定时事件监视器的触发信号树的分支中,从而将各自的监视器组的所有定时事件监视器中的检测窗口向后移动。
对于本领域技术人员来说明显的是,随着技术的进步,本发明的基本思想可以以各种方式实施。因此,本发明及其实施例并不局限于上述的示例,反而它们可以在权利要求的范围内变化。
Claims (11)
1.一种微电子电路,其中:
-所述微电子电路是自适应微电子电路,所述微电子电路的性能至少部分地能够通过选择操作参数的值来配置;
-所述微电子电路包括多个处理路径,在所述多个处理路径上寄存器单元的数据输入被耦合到各自的逻辑单元的输出,用于临时存储所述逻辑单元的输出值;
-所述微电子电路包括多个定时事件监视器,每一个定时事件监视器被配置为通过生成定时事件观察信号来响应在各自的被监视的寄存器单元的数据输入处比允许的时间限制晚变化的数字值,其中所述允许的时间限制由耦合到各自的寄存器单元的至少一个触发信号的至少一个触发沿来限定;
-所述多个定时事件监视器形成多个监视器组,每一个监视器组被耦合到触发信号树的分支,用于将特定于监视器组的触发信号耦合到独立于其他监视器组的监视器组的定时事件监视器;并且
-所述微电子电路包括控制单元,所述控制单元被配置为选择性地允许或禁止将各自的触发信号传播到所述触发信号树的所述分支中。
2.根据权利要求1所述的微电子电路,其中,所述定时事件监视器基于在各自的定时事件监视器之前而没有其他定时事件监视器的处理路径的长度,来归属于所述监视器组。
3.根据权利要求1所述的微电子电路,其中:
-所述微电子电路包括两个或更多个电压域,每个此电压域具有特定于域的操作电压的特征;并且
-所述定时事件监视器基于以下中的至少一项来归属于所述监视器组:各自的定时事件监视器在电压域上的位置,所述各自的定时事件监视器之前的处理路径的点在电压域上的位置。
4.根据权利要求1所述的微电子电路,其中,所述定时事件监视器基于将流经处理路径的数据量的计算估计来归属于所述监视器组,所述各自的定时事件监视器被配置为监视所述处理路径的寄存器单元。
5.根据权利要求1所述的微电子电路,其中,所述定时事件监视器基于所述定时事件监视器在所述微电子电路内的物理位置来归属于所述监视器组。
6.根据权利要求1所述的微电子电路,其中,所述定时事件监视器基于所述定时事件监视器在所述微电子电路的功能单元内的位置来归属于所述监视器组。
7.根据权利要求1所述的微电子电路,其中,所述定时事件监视器基于所述定时事件监视器所应用的检测窗口类型来归属于所述监视器组,其中检测窗口类型是指由各自的定时事件监视器应用的检测窗口在时间轴上相对于触发沿的位置,所述触发沿限定针对所述各自的被监视的寄存器单元的数据输入中的变化的所述允许的时间限制。
8.根据前述任一项权利要求所述的微电子电路,其中,至少一个监视器组的定时事件监视器被配置为从一个或多个过程、电压或温度监视器产生的信息中获取等同于各自的检测窗口的定时的信息,并将所述信息转换为所述各自的检测窗口的定时。
9.根据前述任一项权利要求所述的微电子电路,包括所述触发信号树的至少一个所述分支中的可变延迟元件,用于通过选定的可变延迟量有控制地延迟传播到所述触发信号树的各自的分支中的触发信号。
10.根据前述任一项权利要求所述的微电子电路,其中,所述控制单元被配置为:
-监视从所述微电子电路的定时事件监视器接收到的定时事件观察信号的总速率;以及
-基于定时事件观察信号的所述总速率,选择性地允许或禁止将所述各自的触发信号传播到所述触发信号树的所述分支中。
11.根据前述任一项权利要求所述的微电子电路,其中,所述控制单元被配置为:
-分别监视从不同的监视器组的定时事件监视器接收到的定时事件观察信号的速率;以及
-响应于从各自的监视器组接收到的定时事件观察信号的速率低于预定阈值,选择性地禁止将触发信号传播到所述触发信号树的各自的分支中。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/FI2021/050396 WO2022254076A1 (en) | 2021-06-01 | 2021-06-01 | Microelectronic circuit with dynamically adjustable coverage for in-situ timing event monitors |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117413251A true CN117413251A (zh) | 2024-01-16 |
Family
ID=84324050
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180098936.0A Pending CN117413251A (zh) | 2021-06-01 | 2021-06-01 | 用于现场定时事件监视器的具有动态可调节覆盖范围的微电子电路 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20240288495A1 (zh) |
EP (1) | EP4348428A1 (zh) |
CN (1) | CN117413251A (zh) |
WO (1) | WO2022254076A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116090399B (zh) * | 2023-04-06 | 2023-06-16 | 中国人民解放军国防科技大学 | 基于数据输出端建立时间裕量的触发器转换方法及装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4549280B2 (ja) * | 2005-11-07 | 2010-09-22 | 富士通株式会社 | 設計支援装置、設計支援方法、および設計支援プログラム |
JP7399622B2 (ja) * | 2019-03-20 | 2023-12-18 | 株式会社東芝 | 半導体装置及び半導体装置の制御方法 |
-
2021
- 2021-06-01 EP EP21943971.8A patent/EP4348428A1/en active Pending
- 2021-06-01 CN CN202180098936.0A patent/CN117413251A/zh active Pending
- 2021-06-01 US US18/289,962 patent/US20240288495A1/en active Pending
- 2021-06-01 WO PCT/FI2021/050396 patent/WO2022254076A1/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
US20240288495A1 (en) | 2024-08-29 |
WO2022254076A1 (en) | 2022-12-08 |
EP4348428A1 (en) | 2024-04-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2662795A1 (en) | A method and apparatus for monitoring timing of critical paths | |
US7797561B1 (en) | Automatic functional block level clock-gating | |
US7958483B1 (en) | Clock throttling based on activity-level signals | |
US7802118B1 (en) | Functional block level clock-gating within a graphics processor | |
US7827454B2 (en) | Semiconductor device | |
CN105159374B (zh) | 面向超宽电压的在线监测单元及监测窗口自适应调节系统 | |
US7852109B1 (en) | Method and apparatus for supplying a clock to a device under test | |
US20070011513A1 (en) | Selective activation of error mitigation based on bit level error count | |
KR20040072686A (ko) | di/dt-유도 전원 전압 변화 추정 및 제어 메카니즘 | |
JP2007520008A (ja) | デジタル処理システムにおけるオーバークロックのための方法及び装置 | |
CN101192825A (zh) | 半导体装置 | |
Reddy et al. | Communication energy constrained spare core on NoC | |
CN109376467A (zh) | 集成电路中时钟树布局流程方法和时钟树偏差补偿装置 | |
CN101171788B (zh) | 调节选通信号与数据信号之间的定时 | |
US11334696B2 (en) | Systems and methods for dynamic voltage and frequency scaling in programmable logic devices | |
CN117413251A (zh) | 用于现场定时事件监视器的具有动态可调节覆盖范围的微电子电路 | |
GB2532210A (en) | System and method for controlling idle state exits to manage DI/DT issues | |
CN105259493A (zh) | 集成电路扫描单元的替换方法、可偏移扫描单元及集成电路 | |
US7941772B2 (en) | Dynamic critical path detector for digital logic circuit paths | |
KR100353337B1 (ko) | 온칩확인을이용한반도체장치최적화방법및장치 | |
US9021324B2 (en) | Calibration arrangement | |
US20060212726A1 (en) | Method of governing power for multi-node computer system components | |
US9529377B2 (en) | Adaptive voltage scaling circuit and chip | |
US12074800B2 (en) | Memory control system and memory control method | |
US6999354B2 (en) | Dynamically adaptable memory |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |