CN117941259A - 用于检测数字电路中时序违例的电路 - Google Patents
用于检测数字电路中时序违例的电路 Download PDFInfo
- Publication number
- CN117941259A CN117941259A CN202280061406.3A CN202280061406A CN117941259A CN 117941259 A CN117941259 A CN 117941259A CN 202280061406 A CN202280061406 A CN 202280061406A CN 117941259 A CN117941259 A CN 117941259A
- Authority
- CN
- China
- Prior art keywords
- circuit
- signal
- threshold
- alarm
- delay
- 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
- 230000004044 response Effects 0.000 claims description 66
- 238000000034 method Methods 0.000 claims description 22
- 230000009467 reduction Effects 0.000 claims description 12
- 230000002123 temporal effect Effects 0.000 claims description 4
- 230000001419 dependent effect Effects 0.000 claims 1
- 238000012360 testing method Methods 0.000 description 49
- 230000004927 fusion Effects 0.000 description 25
- 238000012544 monitoring process Methods 0.000 description 18
- 239000013256 coordination polymer Substances 0.000 description 16
- 238000010586 diagram Methods 0.000 description 16
- 238000001514 detection method Methods 0.000 description 12
- 238000012545 processing Methods 0.000 description 12
- 238000002347 injection Methods 0.000 description 11
- 239000007924 injection Substances 0.000 description 11
- 101100328957 Caenorhabditis elegans clk-1 gene Proteins 0.000 description 9
- 238000004364 calculation method Methods 0.000 description 8
- 230000001934 delay Effects 0.000 description 8
- 230000006870 function Effects 0.000 description 6
- 230000004048 modification Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 101100113692 Caenorhabditis elegans clk-2 gene Proteins 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000004913 activation Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 238000011065 in-situ storage Methods 0.000 description 3
- 230000001960 triggered effect Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000009977 dual effect Effects 0.000 description 2
- CNQCVBJFEGMYDW-UHFFFAOYSA-N lawrencium atom Chemical compound [Lr] CNQCVBJFEGMYDW-UHFFFAOYSA-N 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000015654 memory Effects 0.000 description 1
- 230000003071 parasitic effect Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K3/00—Circuits for generating electric pulses; Monostable, bistable or multistable circuits
- H03K3/02—Generators characterised by the type of circuit or by the means used for producing pulses
- H03K3/027—Generators characterised by the type of circuit or by the means used for producing pulses by the use of logic circuits, with internal or external positive feedback
- H03K3/037—Bistable circuits
- H03K3/0375—Bistable circuits provided with means for increasing reliability; for protection; for ensuring a predetermined initial state when the supply voltage has been applied; for storing the actual state when the supply voltage fails
-
- 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
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K3/00—Circuits for generating electric pulses; Monostable, bistable or multistable circuits
- H03K3/01—Details
- H03K3/012—Modifications of generator to improve response time or to decrease power consumption
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/003—Modifications for increasing the reliability for protection
- H03K19/00346—Modifications for eliminating interference or parasitic voltages or currents
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
本公开涉及一种电路,其包括:‑第一时序守卫电路(200),其被配置为检测第一数据信号到达第一同步装置(202)的裕量时间何时降到低于第一阈值(SLG延迟);以及‑第二时序守卫电路(200),其被配置为检测第二数据信号到达第二同步装置(202)的裕量时间何时降到低于第二阈值(SLG延迟),第一阈值和第二阈值彼此不同。
Description
本专利申请要求2021年7月15日提交的申请号为FR2107642的法国专利申请的优先权,该专利的内容通过引用的方式并入本文中。
技术领域
本公开总体上涉及数字电路领域,并且具体来说,涉及数字电路中潜在时序违例的检测。
背景技术
已经提出通过修改提供给集成电路的区域的时钟频率和/或电源电压来提高电路性能和/或降低能耗。
然而,在超过时钟频率和电源电压限制所对应的某个工作点后,电路将不再正常工作。具体来说,如果集成电路的同步装置中的一个或更多个发生时序违例,集成电路将不再保持正确的功能。同步装置包括触发器(flip-flop)、存储器和锁存器。这类装置通常由建立时间(setup time)tS表征,应该遵守该建立时间以确保稳定性。建立时间tS定义了有效时钟沿之前的时间段,在该时间段期间同步装置的输入数据不会改变。如果不遵守该建立时间,则会发生时序违例。
集成电路设计的静态时序分析能够确定一个或更多个关键传输路径,这些路径是电路中两个同步装置之间传播延迟最长的传输路径。这些关键传输路径上的传播延迟通常用于确定电路的最大允许时钟频率。
然而,在各种工作电压下使用静态时序分析来确定最大允许时钟频率不允许考虑某些变量,如需要考虑的PVT-RC变化(过程、电压、温度、电阻-电容寄生)。因此,有必要允许相对较大的裕度(margin),这会导致低效运行。
已经提出了允许在电路运行期间评估PVT-RC变化的监测电路。在这些电路中,原位/现场(in-situ/in-field)时序监测器的优点是能将它放置在电路的实际信号传播路径中,并因此在可能发生时序违例时提供准确的局部指示。
然而,在有效地为数字电路配置原位时序监测器以及根据原位时序监测器的输出有效地控制电路的电源电压和/或工作频率方面存在着技术困难。
发明内容
根据一个方面,提供了一种电路,该电路包括:
-第一时序守卫电路,其被配置为检测第一数据信号到达第一同步装置的裕量时间何时降到低于第一阈值;和
-第二时序守卫电路,其被配置为检测第二数据信号到达第二同步装置的裕量时间何时降到低于第二阈值,第一阈值和第二阈值彼此不相同。
根据一个实施例:
-第一数据信号由具有第一最差传播延迟的至少一个第一数据路径产生;
-第二数据信号由具有大于第一最差传播延迟的第二最差传播延迟的至少一个第二数据路径产生;并且
-第二阈值低于第一阈值。
根据一个实施例:
-第一阈值是状态阈值,所述状态阈值与所述电路的由所述第一同步装置在所述第一数据信号到达后接收到的时钟信号的时钟沿相距第一时间距离;并且
-第二阈值是警报阈值,所述警报阈值与所述电路的由所述第二同步装置在所述第二数据信号到达后接收到的时钟信号的时钟沿相距第二时间距离,第二阈值低于第一阈值。
根据一个实施例,该电路包括多个所述第一时序守卫电路和时序响应电路,例如通过状态标志处理电路和控制电路实现,其配置为:
-当第一数据信号的裕量时间降到低于第一阈值时,接收来自所述多个第一时序守卫电路的状态标志信号;
-将所述多个第一时序守卫电路所产生的标志信号的数量与阈值进行比较;
-响应于标志记信号的数量超过阈值,对电路的时钟信号进行第一电源电压或偏置电压调整和/或第一频率降低。
根据一个实施例,该电路包括多个所述第二时序守卫电路和保护电路,例如通过警报标志处理电路和时钟安全电路实现,其配置为:
-当第二数据信号的裕量时间降到低于第二阈值时,接收来自所述多个第二时序守卫电路的警报标志信号;并且
-响应于来自第二时序守卫电路中任一个第二时序守卫电路的警报信号,对电路的时钟信号进行第二频率降低。
根据一个实施例,第一频率调整是不超过30%的频率降低,第二频率调整是超过30%的频率降低。
根据一个实施例,时序响应电路被配置为从警报标志信号的断言开始,在电路的时钟信号的10个时钟周期内,并且优选在5个时钟周期内实施第二频率调整。
根据一个实施例,第一时序守卫电路和第二时序守卫电路中的每个包括:
-耦合在其时钟输入和第一同步装置的时钟输入节点之间的第一延迟缓冲器。
根据一个实施例,第一时序守卫电路和第二时序守卫电路中的每个包括:
-串联耦合在其数据输入和另一同步装置的数据输入之间的第二延迟元件和第三延迟元件,其中由第一时序守卫电路的第三延迟元件引入的延迟不同于由第二时序守卫电路的第三延迟元件所引入的延迟。
根据另一方面,提供了一种在电路中进行时序控制的方法,该方法包括:
-由第一时序守卫电路,检测第一数据信号到达第一同步装置的裕量时间何时降到低于第一阈值;和
-由第二时序守卫电路,检测第二数据信号到达第二同步装置的裕量时间何时降到低于第二阈值,第一阈值和第二阈值彼此不同。
根据一个实施例:
-第一数据信号由具有第一最差传播延迟的至少一个第一数据路径产生;
-第二数据信号由具有大于第一最差传播延迟的第二最差传播延迟的至少一个第二数据路径产生,第二阈值低于第一阈值。
根据一个实施例:
-第一阈值是状态阈值,所述状态阈值与所述电路的由所述第一同步装置在所述第一数据信号到达后接收到的时钟信号的时钟沿相距第一时间距离;并且
-第二阈值是警报阈值,所述警报阈值与所述电路的由所述第二同步装置在所述第二数据信号到达后接收到的时钟信号的时钟沿相距第二时间距离,第二阈值低于第一阈值。
根据一个实施例,该电路包括多个所述第一时序守卫电路和时序响应电路,所述时序响应电路例如通过状态标志处理电路和控制电路实现,该方法还包括:
-当第一数据信号的裕量时间降到低于第一阈值时,由时序响应电路接收来自所述多个第一时序守卫电路的状态标志信号;
-由时序响应电路,将所述多个第一时序守卫电路所产生的标志信号的数量与阈值进行比较;
-响应于标志信号的数量超过阈值,由时序响应电路对电路的时钟信号进行第一电源电压或偏置电压调整和/或第一频率降低。
根据一个实施例,该电路包括多个所述第二时序守卫电路和保护电路,所述保护电路例如通过警报标志处理电路和时钟安全电路实现,该方法还包括:
-当第二数据信号的裕量时间降到低于所述第二阈值时,由保护电路接收来自所述多个第二时序守卫电路的警报标志信号;并且
-响应于来自第二时序守卫电路中任一个第二时序守卫电路的警报信号,由保护电路对电路的时钟信号进行第二频率降低。
根据又一方面,提供了一种电路,该电路包括:
-第一时序守卫电路,其被配置为当检测到第一数据信号到达第一时序守卫电路的第一同步装置的裕量时间降到低于第一阈值时,断言(assert)第一警报标志;
-第二时序守卫电路,其被配置为当检测到第二数据信号到达第二时序守卫电路的第一同步装置的裕量时间降到低于第一阈值或低于不同于第一阈值的第二阈值时,断言第二警报标志;和
-第一标志收集器电路,其包括:第一异步检测装置,其被配置为当第一警报标志被断言时,在第一标志收集器电路的第一标志输出处断言第一输出信号;和第二异步检测装置,其被配置为当第二警报标志被断言时,在第一标志输出处断言第一输出信号。
根据一个实施例,该电路包括保护电路,例如通过警报标志处理电路和时钟安全电路实现,该保护电路被配置为:
-接收第一输出信号;并且
-响应于第一输出信号,对电路的时钟信号进行第一频率降低。
根据一个实施例,电路还包括第三时序守卫电路,该第三时序守卫电路被配置为当检测到第三数据信号到达第三时序守卫电路的第一同步装置的裕量时间降到低于第三阈值时断言状态标志,其中:
-第三阈值是状态阈值,所述状态阈值与所述电路的由第三时序守卫电路的第一同步装置在第三数据信号到达后接收到的时钟信号的时钟沿相距第一时间距离;并且
-第一阈值是警报阈值,所述警报阈值与所述电路的由第一时序守卫电路的第一同步装置在所述第一数据信号到达后接收到的时钟信号的时钟沿相距第二时间距离,第一阈值低于第三阈值。
根据一个实施例,该电路包括多个所述第三时序守卫电路和时序响应电路,所述时序响应电路例如通过状态标志处理电路和控制电路实现,并耦合到第一标志收集器电路的输出,该时序响应电路被配置为:
-当第三数据信号的裕量时间降到低于第三阈值时,接收来自所述多个第三时序守卫电路的状态标志信号;
-将所述多个第三时序守卫电路所产生的标志信号的数量与阈值进行比较;
-响应于标志信号的数量超过阈值,对电路的时钟信号进行第一电源电压或偏置电压调整和/或第一频率降低。
根据一个实施例,该电路包括:
-第二标志收集器电路,其被配置为在第二标志收集器电路的第二标志输出处断言第二输出信号;和
-耦合到第一标志输出和第二标志输出的主标志收集器电路,并且其被配置为当第一输出信号或第二输出信号被断言时生成主标志输出信号。
根据一个实施例:
-第一异步检测装置包括第一设置-复位触发器,其中第一标志应用于第一设置-复位触发器的设置或复位输入;并且
-第二异步检测装置包括第二设置-复位触发器,其中第二标志应用于第二设置复位-触发器的设置或复位输入。
根据一个实施例,第一异步检测装置和第二异步检测装置的输出通过或树耦合到第一标志输出。
根据又一方面,提供了一种在电路中检测裕量时间减少的方法,该方法包括:
-当检测到第一数据信号到达第一时序守卫电路的第一同步装置的裕量时间降到低于第一阈值时,由第一时序守卫电路断言第一警报标志;
-当检测到第二数据信号到达第二时序守卫电路的第一同步装置的裕量时间降到低于第一阈值或低于不同于第一阈值的第二阈值时,由第二时序守卫电路断言第二警报标志;
-当第一警报标志被断言时,由第一标志收集器电路的第一异步检测装置,在第一标志收集器电路的第一标志输出处断言第一输出信号;并且
-当第二警报标志被断言时,由第一标志收集器电路的第二异步检测装置,在第一标志输出处断言第一输出信号。
根据一个实施例,该方法还包括:
-由第二标志收集器电路,在第二标志收集器电路的第二标志输出处断言第二输出信号;和
-当第一输出信号或第二输出信号被断言时,由耦合到第一标志输出和第二标志输出的主标志收集器电路,产生主标志输出。
根据一个实施例,该方法包括:
-将第一标志应用于第一异步检测装置的第一设置-复位触发器的设置或复位输入;并且
-将第二标志应用于第二异步检测装置的第二设置-复位触发器的设置或复位输入。
根据一个实施例,该方法还包括:
-由电路的保护电路接收第一输出信号;
-响应于第一输出信号,由保护电路对电路的时钟信号进行第一频率降低。
根据一个实施例,该电路还包括第三时序守卫电路,所述第三时序守卫电路被配置为当检测到第三数据信号到达第三时序守卫电路的第一同步装置的裕量时间降到低于第三阈值时断言状态标志,其中:
-第三阈值是状态阈值,所述状态阈值与所述电路的由第三时序守卫电路的第一同步装置在第三数据信号到达后接收到的时钟信号的时钟沿相距第一时间距离;并且
-第一阈值是警报阈值,所述警报阈值与所述电路的由第一时序守卫电路的第一同步装置在所述第一数据信号到达后接收到的时钟信号的时钟沿相距第二时间距离,第一阈值低于第三阈值。
根据一个实施例,该电路包括多个所述第三时序守卫电路和时序响应电路,并且该时序响应电路耦合到第一标志收集器电路的输出,该方法还包括:
-当第三数据信号的裕量时间降到低于第三阈值时,由时序响应电路接收来自所述多个第三时序守卫电路的状态标志信号;
-由时序响应电路,将所述多个第三时序守卫电路所产生的标志信号的数量与阈值进行比较;
-响应于标志信号的数量超过阈值,由时序响应电路对电路的时钟信号进行第一电源电压或偏置电压调整和/或第一频率降低。
根据一个实施例,该方法还包括通过或树将第一异步检测装置和第二异步检测装置的第一输出信号和第二输出信号提供给第一标志输出。
附图说明
上述特征和优点以及其他特征和优点将在以下以示例性而非限制性方式给出的具体实施例的描述中参照附图进行详细描述,其中:
图1示意性地示出具有裕量守卫电路的同步装置;
图2示意性地示出根据本公开示例实施例的具有集成裕量守卫电路的同步单元;
图3是表示根据本公开示例实施例的数字电路的两条路径中的时序的时序图;
图4是示出根据本公开示例实施例的用于状态和警报容限的时钟周期百分比范围的图;
图5示意性地示出根据本公开示例实施例的包含同步单元的时序监测和控制系统;
图6更详细地示意性地示出根据本公开示例实施例的图5的系统的收集器电路;
图7A更详细地示意性地示出根据本公开示例实施例的图6的标志收集器;
图7B更详细地示意性地示出根据本公开示例实施例的图7A的警报标志收集器;
图8更详细地示意性地示出根据本公开示例实施例的图5的系统的传感器融合电路;
图9是表示根据本公开示例实施例的图8的传感器融合电路在警报请求期间的信号的时序图;
图10是表示根据本公开示例实施例的图8的传感器融合电路在状态请求期间的信号的时序图;
图11是表示根据本公开示例实施例的图8的传感器融合电路在具有待决状态请求的警报请求期间的信号的时序图;
图12示意性地示出根据本公开示例实施例的图5的系统的时钟安全电路的示意图;
图13示意性地示出根据本公开示例实施例的图5的系统的控制电路;
图14是表示根据示例实施例的状态循环管理的时序图;
图15A是表示根据示例实施的涉及故障操作模式的警报循环管理的时序图;
图15B是表示根据示例实施的涉及故障安全模式的警报循环管理的时序图;
图16更详细地示意性地示出根据本公开示例实施例的图13的控制电路的上/下管理电路。
具体实施方式
在各个附图中相似的特征由相似的附图标记表示。具体地,在各个实施例之间共同的结构和/或功能特征可以具有相同的附图标记并且可以具有相同的结构、尺寸和材料特性。
除非另有说明,否则当提到连接在一起的两个元件时,这意味着没有任何中间元件(除导体之外)的直接连接,当提到耦合在一起的两个元件时,这意味着这两个元件能够通过一个或更多个其他元件进行连接或耦合。
在下面的公开中,除非另有说明,否则当提及绝对位置限定词,如术语“前”、“后”、“上”、“下”、“左”、“右”等,或当提及相对位置限定词,如术语“上方”、“下方”、“更高”、“更低”等,或当提及方向限定词,如“水平”、“垂直”等时,都指的是图中所示的方向。
除非另有说明,否则表述“大约”、“大概”、“基本上”和“约”表示在10%以内,并且优选在5%以内。
图1示意性示出了根据已提出的实施方式的电路100,该电路100包括同步装置101、包含另一个同步装置102的裕量(slack)监测器、延迟元件103和比较元件104。
同步装置101例如包括接收数据信号D的数据输入、接收时钟信号CP的时钟输入、接收测试输入信号TI的测试输入和接收测试使能信号TE的测试使能输入。同步装置101基于输入信号D或TI,在由时钟信号CP的时钟控制下,产生输出信号Q。
同步装置101例如包括多路复用器105,多路复用器105的数据输入之一连接到装置101的数据输入,其数据输入中的另一个连接到装置101的测试输入,并且其控制输入连接到测试使能输入。多路复用器105的输出连接到锁存器(数据锁存器1)106的数据输入,锁存器106由时钟信号CP′进行时钟控制,时钟信号CP′与被反相器108反转的时钟信号CP相对应。数据锁存器106的输出连接到另一个数据锁存器(数据锁存器2)110的数据输入,锁存器110由时钟信号CP〞进行时钟控制,时钟信号CP〞与被反相器111反转的时钟信号CP′相对应。
同步装置102例如包括与同步装置101的元件相同的元件,装置102中与装置101中的元件105至111相对应的元件分别被标记为115至121。同步装置102的多路复用器115的数据输入之一连接到测试数据输入,并且其数据输入中的另一个通过引入延时的延迟元件103连接到同步装置101的数据输入。
同步装置101的数据输出信号Q和同步装置102的数据输出信号Q′分别由锁存器110和120的数据输出提供,数据输出信号Q和输出信号信号Q′被提供给实现比较元件104的异或(XOR)门的相应输入。异或门104产生输出信号FLAG,该输出信号FLAG表示裕量时间(slack time)何时低于给定阈值。
图1中的电路100的裕量监测器有几个缺点。具体来说,延迟103是固定的,如果时钟路径上的时序之间存在任何不匹配,那么输出标志信号FLAG可能会出现毛刺(glitches)。
图2示意性示出了根据本公开的示例实施例的具有集成裕量守卫电路的同步单元200,以下简称“裕量守卫单元200”。
裕量守卫单元200包括一对触发器(FF)202、204,其例如是D型触发器。
触发器202例如具有耦合到双输入多路复用器(MUX)206的输出的数据输入,双输入多路复用器(MUX)206的其中一个输入耦合到单元的接收输入数据信号D的数据输入,并且其另一个输入耦合到单元的接收注入信号INJ_IN(例如,用于测试目的)的数据注入输入。触发器202还例如具有接收单元200的输入信号SCAN_IN的测试控制输入,以及由单元200的扫描使能信号SCAN_EN控制的扫描使能输入。触发器202由信号CP′进行时钟控制,信号CP′例如是单元200的输入时钟信号CP经缓冲器208放大得到的。在一些实施例中,如虚线210所示,触发器202具有复位或设置输入,该复位或设置输入接收允许重新启动该单元的复位或设置信号RESET/SET。触发器202例如在其数据输出处提供单元200的输出数据信号Q。
单元200的集成裕量守卫电路例如包括触发器204、多路复用器206、延迟元件212、214、比较器(XOR)216、与门218、触发器(FF抗毛刺)220、反相器222和与门224。
触发器204例如通过延迟元件212和214的串联连接将其数据输入耦合到多路复用器206的输出。延迟元件212例如是固定延迟,而延迟元件214例如是可变延迟。例如,延迟元件212由一对反相器的串联连接形成。可变延迟元件214例如由一连串的多对串联反相器形成,选择反相器的数量以获得期望的目标延迟值。每个单元200的延迟值例如各不相同,下面将更详细地描述。触发器204的时钟输入例如耦合到缓冲器208的输出,并且其扫描数据输入和扫描使能输入连接到低逻辑状态`0。在一些实施例中,触发器204具有用于接收线210上的复位或设置信号RESET/SET的复位或设置输入。
触发器204的数据输出耦合到例如由异或门实现的比较器216的一个输入。比较器216的另一个输入例如耦合到与门218的输出,与门218的其中一个输入耦合到触发器202的数据输出,并且它的另一个输入耦合到单元200的接收注入模式控制信号INJ_MODE_n(例如,用于测试目的)的注入模式控制输入。比较器216的输出例如耦合到触发器220的数据输入,触发器220的时钟信号例如接收时钟信号CP′的反相信号CPN′,并且其扫描输入连接到逻辑低电平`0。信号CPN′例如由反相器222产生,反相器222的输入耦合到缓冲器208的输出。触发器220例如具有耦合到与门224的输出的扫描使能输入,与门224的一个输入耦合以接收在单元200的扫描使能输入处的信号SCAN_EN,并且其另一个输入耦合以接收在单元200的注入模式输入处的信号INJ_MODE_n。触发器220的数据输出例如在单元200的输出处提供标志信号FLAG。
在一些实施例中,单元200还包括复位同步电路(RESET SYNC)224,该复位同步电路224接收在单元220的输入处的复位信号R_SLG以及时钟信号CPN′。复位同步电路224例如被配置用于基于输入复位信号R_SLG和时钟信号CPN′产生重新同步的设置/复位信号并将该重新同步的设置/复位信号提供给触发器220。但是,如果单元200包含设置/复位端口,则例如从该端口向触发器202、204和220中的每一个提供复位/设置信号,并且能够省略电路224。
在运行中,在裕量守卫监测模式期间,注入模式信号INJ_MODE_n例如处于逻辑1,信号SCAN_IN和SCAN_EN例如为低,并且控制多路复用器206以将数据信号D提供给触发器202和延迟元件212。触发器202和204都被配置为同时对其输入处的数据信号进行采样,但是相对于触发器202接收到的数据信号而言,触发器204接收到的数据信号被延迟元件212和214延迟额外的时间延迟(SLG延迟)。因此,如果数据信号D在信号CP′的时钟沿之前发生的跳变小于该时间延迟,则触发器202和204将输出不同的逻辑状态,导致比较器216的输出处出现高逻辑状态,从而在时钟信号CP′的下一个下降沿(对应于时钟信号CPN′的上升沿)处,标志信号FLAG被断言(assertion)。因此,标志信号FLAG指示数据信号相对于时钟信号的传播延迟已减慢了超过给定的时间持续时长,该时间持续时长是延迟元件212和214所引入的延迟的函数。
对于本领域技术人员来说是显而易见的是:图2的单元200仅仅是一个示例,在保持相同的操作原理的情况下能够存在各种变化。例如,在一些实施例中能够省略延迟元件212和/或抗毛刺触发器220和/或复位同步电路224。此外,可选实施例中不支持扫描-测试模式和/或注入模式,从而简化了单元200。
图2的单元200例如代替D型触发器被插入到数字电路的多个传播路径中,并且每个单元200的延迟元件214所引入的时间延迟例如适应于传播路径,将参考图3和图4对此作更详细的描述。
图3是表示根据本公开的示例实施例的数字电路的由时钟信号CP进行时钟控制的两条路径中的时序的时序图。时钟CP的第一时钟沿(第一时钟沿)的时刻t0显示在图3左侧,并且路径1在其相对于第一时钟沿的第一持续时间twd1的端点处具有最差传播延迟(最差延迟路径1),并且路径2在其相对于第一时钟沿的第二持续时间twd2的端点处具有最差传播延迟(最差延迟路径2),第二持续时间twd2大于第一持续时间twd1。每个路径例如对应于第一和第二同步装置之间的信号传播路径,第一装置在第一时钟沿传输数据跳变,并且第二装置在时钟信号CP的第二时钟沿(第二时钟沿)对数据进行采样。每条路径的第二装置例如由图2的具有时间延迟的裕量守卫单元200实现,所述时间延迟根据路径的相应时间延迟twd1、twd2调整。最差路径传播延迟twd1、twd2例如是基于对数字电路中最差PVT条件的模拟来估计的。
第二时钟沿出现在时间t0之后的时钟周期tcp,其中tcp大于twd1和twd2。选择第一路径的端点处的同步单元的时间延迟“SLG延迟1”例如使时间延迟twd1和“SLG延迟1”相加等于时钟周期tcp加上时间裕度(time margin)tm。类似地,选择第二路径的端点处的同步单元的时间延迟“SLG延迟2”例如使时间延迟twd2和“SLG延迟2”相加等于时钟周期tcp加上相同的时间裕度tm。
正常运行期间,路径1和路径2的实际时间延迟td1、td2分别小于最差延迟twd1和twd2。因此,时间延迟td1和“SLG延迟1”之和小于时钟周期tcp,并且时间延迟td2和“SLG延迟2”之和小于时钟周期tcp,这意味着FLAG信号未被断言。然而,如果P、V、T或RC条件恶化,和/或如果时钟信号CP的频率增加,则时间延迟td1和“SLG延迟1”之和可能超过时钟周期tcp,这会导致FLAG信号由第一路径的端点处的同步单元断言,和/或时间延迟td2和“SLG延迟2”之和可能超过时钟周期tcp,这会导致“标志”信号由第二路径的端点处的同步单元断言。
在一些实施例中,数字电路的所有同步装置200的时间裕度tm是相同的。在可选实施例中,数字电路的同步单元200分别被配置为具有两个不同的时间裕度tm_status和tm_alarm之一。换句话说,有些单元200被配置为具有被称为状态容限的时间裕度tm_status,而其他单元200被配置为具有被称为警报容限的时间裕度tm_alarm。
图4是示出了数字电路的裕量守卫单元(#SLG端点)的状态容限和警报容限的时钟周期百分比范围的示例的图表。
基于时间裕度tm_status的状态容限提供了减少的裕量时间的早期预警。如图4所示,在一些实施例中,状态容限(状态容限)被设置为使得时间延迟twd和SLG延迟之和等于时钟周期tcp的105%到115%之间。换句话说,时间裕度tm_status等于tcp时钟周期的5%到15%之间。
基于时间裕度tm_alarm的警报容限表示裕量时间何时达到临界水平,这意味着如果路径传播延迟进一步恶化,就会出现错误数据传输的风险。如图4所示,在一些实施例中,基于给定时钟频率的给定时序场景,警报容限(警报容限)被设置为使得时间延迟twd和SLG延迟之和等于时钟周期tcp的101%到105%之间,这例如对应于给定PVT条件下和给定电源电压下装置的不同模式之间的最短时钟周期。换句话说,时间裕度tm_alarm等于时钟周期tcp的1%到5%之间。时间裕度tm_status例如对于应用状态容限的所有单元是相同的,并且时间裕度tm_alarm对于应用警报容限的所有单元是相同的。或者,在一些实施例中,可以针对不同的时序场景调整循环裕度tm_status和/或tm_alarm,以便在不同的使用条件下激活单元200的不同集合。
图5示意性地示出了根据本公开示例实施例的时序监测和控制系统500。系统500例如构成数字装置的一部分,该数字装置包括含有例如主机处理器(未示出)的一个或更多个数字电路。在一些实施例中,系统500构成片上系统(SoC)的一部分。
时序监测和控制系统500例如包括裕量守卫单元200,所述裕量守卫单元200中的一些被标记为SGL_S,例如应用状态容限,并且另一些标记为SGL_A,例如应用警报容限。系统500还例如包括标志处理电路502、耦合到接口(接口)506的控制电路504和时钟安全电路(时钟安全)508、510。标志处理电路502和控制电路504中的至少部分例如构成时序响应电路。标志处理电路502和时钟安全电路508或510中的至少部分例如构成保护电路。
裕量守卫单元SLG_S200例如通过并行总线512耦合到标志处理电路502的传感器融合电路(传感器融合)514的相应输入。类似地,裕量守卫单元SLG_A 200例如通过并行总线516耦合到传感器融合电路514的相应输入。
标志处理电路502例如还包括收集器电路(收集器)518,该收集器电路518耦合到传感器融合电路514的输出并且例如被配置为对由裕量守卫单元200所断言的状态标志的数量进行计数,并传播任何被断言的警报标志。
例如,每个收集器电路518从传感器融合电路514接收一组对应的线路520上的一组状态标志,以及一组对应的线路522上的一组警报标志。在一个示例中,每个收集器电路518被配置为处理60个状态标志和四个警报标志,尽管在备选实施例中,收集器电路518能够各自处理不同数量的状态或警报标志。虽然在图5的示例中有三个收集器电路518,但在可选实施例中,根据裕量守卫单元200的数量,能够仅有一个或者有两个或更多个收集器电路518。
标志处理电路502还例如包括主计数器(主计数器)523,该主计数器523从每个收集器电路518接收线路524上的状态计数值c_s(该计数值例如为6位计数值)、一条或更多条线路526上的控制信号以及线路528上的警报信号。
控制电路504例如从主计数器523接收状态标志计数值C_S,该状态标志计数值C_S包括来自每个收集器电路518的计数值c_s。例如,状态标志计数值C_S就是来自每个收集器电路518的计数值c_s的串联(concatenation)。或者,主计数器523包括加法器,该加法器被配置为将来自每个收集器电路的计数值c_s加在一起,计数值C_S等于该加法的结果。
控制电路504例如包括状态循环管理电路(状态循环管理)536,该状态循环管理电路536被配置为基于状态标志控制监测阶段,并在监测阶段期间生成状态标志计数值C_S。控制电路504还例如包括警报循环管理电路(警报循环管理)538,该警报循环管理电路538被配置为接收主计数器523在线路534上的警报输出,并基于警报标志管理电路参数。控制电路504还例如包括上/下控制器(上/下控制器)540,该上/下控制器被配置为基于状态和/或警报标志管理电路参数。控制电路504还例如包括控制器(控制器)542。
接口电路506例如通过(到主机处理器的)线路544在主机处理器和系统500(特别是控制电路504)之间提供通信。
时钟安全电路508例如被配置为接收由时钟发生器(未示出)产生的时钟信号CLK_1和线路534上的警报信号,并在输出线路546上生成输出系统时钟CLK_1_O/P,该系统时钟CLK_1_O/P例如作为时钟CP,用于对系统500的单元200和一个或更多个其他数字电路进行时钟控制。例如,如果没有警报标志信号被断言,则线路534上的警报输出信号为低,并且时钟安全电路508被配置为输出时钟信号CLK_1作为输出系统时钟CLK_1_O/P。或者,如果裕量守卫单元SLG_A中的一个或更多个断言警报标志,则时钟安全电路508例如被配置为降低时钟信号CLK_1的频率,例如通过将时钟信号CLK_1除以2或更大的因数,并输出降低频率的时钟作为输出系统时钟CLK_1_O/P。
在一些实施例中,系统500还被配置为产生对另一个时钟域进行时钟控制的另一输出系统时钟信号CLK_2_O/P,该另一时钟域与被输出系统时钟信号CLK_1_O/P时钟控制的时钟域间隔开。例如,一些裕量守卫单元200构成时钟信号CLK_1_O/P的时钟域的一部分并由该信号进行时钟控制,并且其他裕量守卫单元200构成钟信号CLK_2_O/P的时钟域的一部分并由该信号进行时钟控制。时钟安全电路510以与时钟安全电路508类似的方式例如被配置为接收时钟发生器(未示出)产生的时钟信号CLK_2和线路534上的警报信号,并在输出线路548上生成输出系统时钟CLK_2_O/P,用于对系统500的单元200和一个或更多个其他电路进行时钟控制。例如,如果没有警报标志信号被断言,则线路534上的警报输出信号为低,并且时钟安全电路510被配置为输出时钟信号CLK_2作为输出系统时钟CLK_2_O/P。或者,如果裕量守卫单元SLG_A中的一个或更多个断言警报标志,则时钟安全电路510例如被配置用于降低时钟信号CLK_2的频率,例如通过将时钟信号CLK_2除以2或更大的因数,并输出降低频率的时钟作为输出系统时钟CLK_2_O/P。
在一些实施例中,收集器电路518通过测试链(测试链)以菊花链方式连接在一起,以便对这些电路进行测试。
在运行中,控制电路504例如被配置为周期性地触发监测操作,以便检测由裕量守卫单元200所断言的状态标志的数量,并检测任何警报标志的断言。例如,根据状态标志的数量,对施加到电路(包括单元200和装置的其他电路(未在图5中示出))的电源和/或偏置电压和/或时钟频率例如进行调整,以便例如将标志的数量保持在给定的下限和上限内。例如,将时钟频率调整为在其最大频率的70%到100%的范围内。同时,如果任何警报标志被断言,则时钟安全电路508和/或510例如通过将时钟频率降低30%以上(例如通过将时钟频率除以2或更大因数),而将电路设置成故障操作模式。
图6更详细地示意性地示出了根据本公开示例实施例的图5的系统的收集器电路518。图5的每个收集器电路518例如由类似电路实现。
图6的收集器电路518例如包含标志收集器电路(标志收集器)602,该标志收集器电路602被配置为接收来自状态裕量守卫单元SLG_S200的状态标志(状态标志)(图5的例子中的收集器电路518接收60个状态标志)和来自警报裕量守卫单元SLG_A 200的警报标志(警报标志)(图5的例子中的收集器电路518接收4个警报标志)。标志收集器电路602还例如接收输入线路604上的控制信号。例如,输入线路604耦合到多路复用器606的输出,多路复用器606被配置为选择来自图5的控制电路504的控制输入线路532上的控制信号CTRL,或者选择由测试数据寄存器(TDR)608提供的控制信号,以此来控制电路602。标志收集器电路602还例如耦合到测试链,并且具有一个或更多个输入和一个或更多个输出,所述一个或更多个输入耦合到用于接收测试输入信号(测试链输入)的一个或更多个输入线路610,所述一个或更多个输出耦合到用于提供测试输出信号(测试链输出)的一个或更多个输出线路612。
标志收集器电路602可以例如被配置为异步锁存状态信号和警报信号,并将并行总线614和616上的锁存信号分别提供给一组收集器寄存器(收集器寄存器)618。警报信号616例如被提供给或树(或树)624,所述或树624例如在收集器电路518的输出线路528上产生警报信号ALARM。该组收集器寄存器618可以例如被配置为保存在先前的状态计数或警报激活事件期间已经触发的每个标志的位置。该组寄存器618中的一些寄存器例如将并行总线620上的状态标志输出到异步计数器(异步计数器)622,该异步计数器622在收集器电路518的输出线路524上产生输出信号c_s。在一些实施例中,总线623将来自寄存器618的某些寄存器值输出以在DFT(测试设计)期间提供测试点。在一些实施例中,在警报信号616和或树624之间存在多路复用器626,多路复用器626还接收总线623上的该组寄存器618中的其他寄存器作为系统的测试点。多路复用器626例如由测试模式信号(测试模式)控制。
图7A更详细地示意性地示出了根据本公开示例实施例的图6的标志收集器电路602。
标志收集器电路602例如包括警报标志收集器(警报标志收集器)602A和状态标志收集器(状态标志收集器)602S。
警报标志收集器602A例如接收输入总线522上的裕量守卫警报标志(SLG警报标志输入)、信号(警报清除)、测试链输入信号(测试链输入)、注入故障信号(注入故障信号)。警报标志收集器602A例如输出警报信号(警报输出)以及测试链信号。
状态标志收集器602S例如接收输入总线520上的裕量守卫状态标志(SLG状态标志输入)、信号(状态清除)、来自警报标志收集器602A的测试链信号以及注入故障信号(注入故障信号)。状态标志采集器602S例如输出状态信号(状态输出)以及测试链信号(测试链输出)。
图7B更详细地示意性地示出了根据本公开示例实施例的图7A的警报标志收集器602A。状态标志收集器602S例如由类似的电路实现,只是它接收的是状态标志和信号(状态清除)而不是警报标志和信号(警报清除)。
标志收集器电路602例如包括由标记为702_1至702_N的N个触发器的串联连接构成的移位寄存器,例如为每个标志信号提供一个触发器。因此,N例如等于状态标志和警报标志的总和。触发器702_1到702_N中的每一个例如在其设置输入(set_n)处接收状态标志和警报标志的标志信号SLG标志IN#1到SLG标志IN#N中对应的一个。
在一些实施例中,触发器702_1至702_N的一组输入为低有效,标志信号SLG标志IN#1至SLG标志IN#N为高有效,并且信号SLG标志IN#1至SLG标志IN#N在被提供给触发器702_1至702_N之前被反转。此外,在图7B的示例中,在标志输入SLG标志IN#1至SLG标志IN#N和触发器702_1至702_N之间提供有多路复用器704_1至704_N,每个多路复用器在反相输入处接收相应的标志信号,并且在其其他输入处接收逻辑高信号`1。每个多路复用器704_1至704_N的输出耦合到对应的触发器702_1至702_N的设置输入。
多路复用器704_1到704_N例如由测试激活信号TEST_ACT控制,该测试激活信号例如是基于标志收集器电路602的输入信号TEST_MODE、INJ_CONN DEBUG_SHIFT_EN和DEBUG_SEL生成的,这些信号例如形成输入测试信号(测试链输入)的一部分。例如,或门706具有耦合到测试模式信号TEST_MODE的反相输入和接收信号INJ_CONN的非反相输入,并且其输出耦合到与门708的一个输入,与门708在其输出处生成信号TEST_ACT。另一个与门710的输入耦合以分别接收DEBUG_SHIFT_EN和DEBUG_SEL信号,并且其输出耦合到与门708的反相输入。
触发器702_1至702_N的数据输出Q例如提供标志收集器电路602的标志输出信号COLL_OUT#1至COLL_OUT#N,例如对于状态标志,这些信号被提供在并行输出总线614上,而对于警报标志,这些信号被提供在并行输出总线616上。例如,触发器702_1的数据输入D与测试输入数据信号TEST_Di耦合,形成信号(测试链输入)的一部分。触发器702_1的数据输出Q例如与触发器702_2的数据输入D耦合,以此类推,直到第N个触发器702_N,其数据输出Q与测试数据输出信号TEST_Do耦合,形成信号(测试链输出)的一部分。在一些实施例中,与门712耦合在触发器702_N的Q输出和测试输出TEST_Do之间,例如与门712的一个输入耦合到触发器702_N的Q输出,并且与门712的另一个输入耦合以接收信号TEST_SHIFT_EN。
触发器702_1至702_N例如由时钟发生器(ICG)714所产生的时钟信号CLK_SR进行时钟控制,该时钟发生器(ICG)714被配置为形成内部时钟门(ICG)。此外,例如从触发器702_1到702_N,每个触发器都有例如是低有效的复位输入(reset_n),该复位输入耦合以接收例如基于信号TEST_SEL和另外的信号(状态/警报清除)和信号(清除COLLECTOR_n)所产生的复位信号(复位)。例如,多路复用器716的一个输入耦合以接收信号(状态/警报清除),并且其第二输入连接到逻辑低电平`0并由信号(清除COLLECTOR_n)控制。多路复用器716的输出例如耦合到另一个多路复用器718的一个输入,该另一个多路复用器718的第二输入连接到逻辑高电平`1并由信号TEST_SEL控制。多路复用器718的输出例如提供信号(复位),并耦合到触发器702_1到702_N的复位输入。
在一些实施例中,标志收集器电路602还包括缓冲器720,该缓冲器720接收信号(融合收集器复位)并产生输出信号(SLG复位),其能够在需要时复位单元200。
此外,在一些实施例中,标志收集器电路602包括一对或门722、724,或门722在其一个输入处接收输入信号INJ_FAULT_n,并且或门724在其一个输入处接收输入信号INJ_I/P。每个或门722、724例如包括耦合到测试模式信号TEST_MODE的反相输入。或门722例如在电路602的输出处产生输出信号INJ_MODE_n,并且或门724在电路602的另一个输出处产生输出信号INJ_IN。
在运行中,触发器702_1到702_N被标志信号SLG标志IN#1到SLG标志IN#N异步设置,并且它们的Q数据输出保持为高直到在清除操作期间被复位。可以在测试阶段使用测试链读出触发器702_1到702_N的内容。
图8更详细地示意性地示出了根据本公开示例实施例的图5的系统的传感器融合电路(传感器融合)514。
传感器融合电路514例如包括多路复用器802,多路复用器802具有耦合到状态标志总线512的第一组输入和连接到逻辑高电平`1的第二组输入,并且在其输出处提供并行总线520上的状态标志(状态标志O/P)。类似地,传感器融合电路514例如包括多路复用器804,多路复用器804具有耦合到警报标志总线516的第一组输入和连接到逻辑高电平`1的第二组输入,并且在其输出处提供并行总线522上的警报标志(警报标志O/P)。
多路复用器802例如基于例如由控制器542所生成的输入信号STATUS_EN、例如源自装置(例如来自测试设备)外部的信号TEST_MODE(以将装置设置为测试模式)以及电路514的有限状态机(FSM)806所生成的信号(未插接状态)来控制。例如,信号(未插接状态)被提供给或门808的一个输入,并且信号STATUS_EN被提供给或门808的一个反相输入。或门808的输出例如耦合到与门810的输入,并且信号TEST_MODE例如耦合到与门810的反相输入。与门810的输出例如耦合到多路复用器802的控制输入。
例如,根据输入信号ALARM_EN、TEST_MODE和有限状态机(FSM)806所产生的信号(未插接警报)来控制多路复用器804。例如,信号(未插接警报)被提供给或门812的一个输入,并且信号ALARM_EN被提供给或门812的反相输入。或门812的输出例如耦合到与门814的输入,并且信号TEST_MODE例如耦合到与门814的反相输入。与门814的输出例如耦合到多路复用器804的控制输入。
有限状态机806例如接收输入线路816上的状态请求信号(状态请求)和输入线路818上的信号(警报清除请求),并且由信号SF_CK进行时钟控制。
有限状态机806例如生成“状态确认”、“警报清除确认”、“状态计算结束”和“ICGREG CTRL”信号。此外,有限状态机806例如被配置为将输出信号提供给产生信号(状态清除)的或门820的一个输入,并且将输出信号提供给产生信号(警报清除)的或门822的一个输入。每个或门820、822的第二输入例如接收复位信号SF_RESET。
现在参照图9、10和11描述图8中传感器融合电路514的操作。
图9是表示根据本公开示例实施例的图8的传感器融合电路514在警报请求期间的信号的时序图。图9给出了信号SF_CK、警报清除请求、状态请求、未插接警报、未插接状态、ICG REG CTRL、状态计算结束、警报清除、警报清除确认、状态清除和状态确认的具体时序示例。
在时刻t0时,响应于时钟信号SF_CK的时钟沿,信号(警报清除请求)例如由控制电路504断言。例如,发生这种情况是为了在断言一个或更多个警报信号并且电路操作已恢复正常之后复位传感器融合电路514的警报监测部分。
在时刻t1,例如响应于时刻t0之后两个时钟周期的时钟沿,信号(未插接警报)由有限状态机806断言,以便将警报裕量守卫单元从警报收集器寄存器中断开。
在时刻t2,例如响应于t1之后一个时钟周期的时钟沿,信号ICG REG CTRL例如由有限状态机806断言。该信号例如被提供给收集器寄存器并用于将所断言的警报的位置保存在警报收集器寄存器中。具体来说,该位置表明了每个警报是由哪个单元产生的。
在时刻t3,例如响应于t2之后的一个时钟周期的时钟沿,信号ICG REG CTRL例如被去激活。
在时刻t4,例如响应于t3之后一个时钟周期的时钟沿,信号(警报清除)例如由有限状态机806和或门822断言。这例如导致在标志收集器电路602A中断言复位信号(复位)。
在时刻t5,例如响应于t4之后一个时钟周期的时钟沿,信号(未插接警报)和(警报清除)例如被去激活,并且信号(警报清除确认)例如由有限状态机806断言并提供给控制电路504,以指示“警报”监测已被清除。
在时刻t6,例如响应于时刻t5之后一个时钟周期的时钟沿,信号(警报清除请求)由控制电路504去激活。
在时刻t7,例如响应于时刻t6之后一个时钟周期的时钟沿,信号(警报清除确认)由有限状态机806去激活。
图10是表示根据本公开示例实施例的图8的传感器融合电路在状态请求期间的信号的时序图。
图10特别地示出了与图9中的信号相同的信号的时序示例。
例如,在时刻t0时,响应于时钟信号SF_CK的时钟沿,信号(状态请求)由控制电路504断言。例如,发生这种情况是为了请求传感器融合电路514的状态监测部分上的更新。
在时刻t1,例如响应于时刻t0之后两个时钟周期的时钟沿,信号(未插接状态)由有限状态机806断言,以便通过改变图8的多路复用器802的选择输入,将裕量守卫监测器从收集器断开。
在时刻t2,例如响应于t1之后一个时钟周期的时钟沿,信号ICG REG CTRL例如由有限状态机806断言。
在时刻t3,例如响应于t2之后一个时钟周期的时钟沿,ICG REG CTRL信号例如被去激活,信号(状态计算结束)例如由有限状态机806断言。后一信号例如被提供给控制电路504,并用于确认状态计数器具有可用的新结果。
在时刻t4,例如响应于t3之后的一个时钟周期的时钟沿,信号(状态计算结束)例如被去激活。
在时刻t5,例如响应于t4之后一个时钟周期的时钟沿,信号(状态清除)由有限状态机806断言。这例如导致复位信号(复位)在标志收集器电路602S中被断言。
在时刻t6,例如响应于t5之后一个时钟周期的时钟沿,例如,信号(状态清除)和信号(未插接状态)被去激活,并且信号(状态确认)例如由有限状态机806断言并被提供给控制电路504,以指示“状态”监测已被清除。
在时刻t7,例如响应于时刻t5之后一个时钟周期的时钟沿,信号(状态请求)例如由控制电路504去激活。
在时刻t8,例如响应于时刻t7之后一个时钟周期的时钟沿,信号(状态确认)例如由有限状态机806去激活。
图11是表示根据本公开示例实施例的图8的传感器融合电路在具有待决状态请求的警报请求期间的信号的时序图。
图11特别地示出了与图9中的信号相同的信号的时序示例。
例如,在时刻t0时,响应于时钟信号SF_CK的时钟沿,信号(警报清除请求)由控制电路504断言。例如,发生这种情况是为了在一个或更多个警报信号被断言并且一旦电路运行已恢复正常之后复位传感器融合电路514的警报监测部分。
在时刻t1,例如响应于时刻t0之后两个时钟周期的时钟沿,信号(状态请求)例如由控制电路504响应于时钟信号SF_CK的时钟沿而断言。例如,发生这种情况是为了请求传感器融合电路514的状态计算。此外,在时刻t1,信号(未插接警报)例如被断言并提供给控制电路504,以指示警报监测不再有效。
在时刻t2,例如响应于t1之后一个时钟周期的时钟沿,信号ICG REG CTRL例如由有限状态机806断言。
在时刻t3,例如响应于t2之后一个时钟周期的时钟沿,信号ICG REG CTRL例如被去激活。
在时刻t4,例如响应于t3之后一个时钟周期的时钟沿,信号(警报清除)例如由有限状态机806和或门822断言。这例如导致复位信号(复位)在标志收集器电路602中被断言。
在时刻t5,例如响应于t4之后一个时钟周期的时钟沿,信号(未插接警报)和信号(警报清除)例如被去激活,并且信号(警报清除确认)例如由有限状态机806断言并提供给控制电路504,以指示警报监测已被清除。
在时刻t6,例如响应于时刻t5之后一个时钟周期的时钟沿,信号(警报清除请求)由控制电路504去激活。
在时刻t7,例如响应于时刻t6之后一个时钟周期的时钟沿,信号(警报清除确认)例如由有限状态机806去激活,并且信号(未插接状态)例如被断言。
在时刻t8,例如响应于时刻t7之后一个时钟周期的时钟沿,信号ICG REG CTRL例如由有限状态机806断言。
在时刻t9,例如响应于t8之后一个时钟周期的时钟沿,信号ICG REG CTRL例如被去激活,并且信号(状态计算结束)例如由有限状态机806断言。
在时刻t10,例如响应于t9之后一个时钟周期的时钟沿,信号(状态计算结束)例如被去激活。
在时刻t11,例如响应于t10之后一个时钟周期的时钟沿,信号(状态清除)由有限状态机806断言。这例如导致复位信号(复位)在标志收集器电路602中被断言。
在时刻t12,例如响应于t11之后一个时钟周期的时钟沿,信号(状态清除)和信号(未插接状态)例如被去激活,并且信号(状态确认)例如由有限状态机806断言并提供给控制电路504,以指示“状态”监测已被清除。
在时刻t13,例如响应于时刻t12之后一个时钟周期的时钟沿,信号(状态请求)例如由控制电路504去激活。
在时刻t14,例如响应于时刻t13之后一个时钟周期的时钟沿,信号(状态确认)例如由有限状态机806去激活。
图12示意性地示出了根据本公开示例实施例的图5的系统的时钟安全电路508。电路510例如由类似电路实现。
例如,电路508包括二分频器(DIV BY 2)1202,该二分频器被配置为接收时钟信号CLK_1和例如由控制电路504提供的测试模式输入信号(测试模式输入)。分频器1202由重新同步电路(RESYNC)1204产生的使能信号CK_DIV_EN来使能,由时钟信号为CLK_1进行时钟控制并且被配置为将线路534上的警报信号(警报)与时钟信号CLK_1重新同步以产生使能信号CK_DIV_EN。分频器1202在被使能时,输出频率降低的时钟信号CLK_1_O/P,降低后的频率例如等于时钟信号CLK_1频率的一半。当分频器1202未被使能时,输出的时钟信号CLK_1_O/P例如为未修改的时钟信号CLK_1。
图13示意性地示出了根据本公开示例实施例的图5的系统的控制电路504。
除了控制器542、状态循环管理电路(状态循环管理)536、警报循环管理电路(警报循环管理)538和上/下控制器(上/下控制器)540之外,控制电路504例如包括重新同步电路(重新同步)1302,该重新同步电路1302被配置为接收警报信号(警报)和强制状态请求信号(强制状态请求),其例如是经由端口从片上系统的其余部分接收的信号,在该片上系统中实现电路500以实现强制状态请求。
重新同步的强制状态请求信号例如被提供给状态循环管理电路536,该状态循环管理电路电路536还从控制器542接收状态使能信号STATUS_EN,并且被配置为产生状态请求信号(状态请求)并且接收状态确认信号(状态确认)。状态循环管理电路536还例如从控制器542接收信号“状态定时器prog”和信号“强制状态请求”,并向控制器542提供信号“状态更新”和信号“状态请求”。实际上,有例如两种方法来强制状态请求,一种来自外部端口,并且另一种通过写入控制电路504的配置寄存器。这两种信号的目的是相同的,但它们来源于两个不同的来源。
警报循环管理电路538例如接收来自重新同步电路1302的重新同步警报信号(警报)以及来自控制器542的信号ALARM_EN。电路538被配置为产生信号(警报清除请求)并接收确认信号(警报清除确认)。警报循环管理电路538还例如从控制器542接收用于对警报跟踪窗口进行编程的信号“警报监视prog”和用于对警报持续时间进行编程的信号“警报持续时间prog”,并且例如向控制器542提供“警报警告”、“警报错误”、“警报更新”(该信号表示各警报信号的位置已保存)、以及“警报清除请求”信号。
上/下控制器540例如接收状态确认信号(状态确认),并产生一个或更多个信号以调整电路中的电源电压、时钟频率和/或晶体管偏置电压。例如,它产生偏置电压控制信号“上/下结果ABB”(以指示要施加到电路上的偏置电压电平),并将其传输到偏置电压控制系统(未示出),并在控制线路上向偏置电压控制系统传输和接收请求和确认信号“请求/确认上/下ABB”。另外或可选地,例如,上/下控制器540产生并向频率/电压控制系统(未示出)传输频率/电压控制信号“上/下结果频率/电压”,以指示要施加到电路的频率和/或电源电压水平,并且还在控制线路上向频率/电压控制系统传输和接收请求和确认信号“请求/确认上/下频率/电压”。
上/下控制器540例如还从控制器542接收“上/下使能”信号、阈值信号“状态高边界”和“状态低边界”和信号“状态计数器res”,并例如向控制器542提供指示电压、频率和/或偏置电压修改的信号“上/下结果”,以及指示何时电源电压、电路频率和/或偏置电压的修改可用的控制信号“上/下完成”,换句话说,新的上/下结果已经计算出来了。该结果例如触发对电路的电源电压、电路频率和/或偏置电压的相应修改。
控制器542例如从主计数器523接收输入线路530上的状态计数器信号C_S,并且还接收信号ICG REG CTRL和信号“未插接状态”。控制器542还例如通过收集器寄存器接口信号(收集器寄存器接口)与收集器电路518通信,使得电路500的寄存器构成装置的寄存器网络的一部分。
控制器542例如也被配置为与寄存器接口(REG接口)506通信。此外,控制器542例如被配置为向主机处理器生成中断请求(IRQ),包括例如以下项中的一个或更多个:状态更新中断“状态更新IRQ”(指示状态何时被更新)、警报错误中断“警报错误IRQ”、警报警告中断“警报警告IRQ”(指示警报何时已在一个或更多个裕量守卫单元中激活)、警报更新中断“警报更新IRQ”(表示警报位置已保存)以及上/下更新中断“上/下更新IRQ”(指示上/下控制器540何时计算出是否应该调整电路频率和/或电源或偏置电压)。
现在将参考图14、15A和15B更详细地描述状态和警报循环管理模式的运行。
图14是表示根据示例实施例的状态循环管理的时序图。
在时刻t0,信号STATUS_EN由控制器542断言。例如,控制电路504周期性地断言状态请求信号(状态请求),比如在每次状态定时器结束时。定时器的持续时间例如通过信号“状态定时器prog”来编程。该请求例如用于检测是否应对电路工作频率和/或电压进行调整。
在时刻t1,状态定时器结束,导致状态请求信号(状态请求)由状态循环管理电路536断言。
在时刻t1和t2之间,如图10的时序图所示,例如对状态计数进行计算和保存,并且在t2时刻,状态确认信号(状态确认)被传感器融合电路514的有限状态机86断言,导致例如上/下控制器540基于状态标志的数量来建议调整电路工作频率、电源电压和/或偏置电压。此外,状态更新中断“状态更新IRQ”例如被断言以通知主机处理器状态数据可用。
在时刻t2,状态定时器重新启动,其持续时间例如通过信号“状态定时器prog”来编程,以触发新的状态定时器监测阶段。
在时刻t3,状态定时器结束,导致状态请求信号(状态请求)由状态循环管理电路536断言。
在时刻t3和t4之间,例如对状态计数进行计算和保存,并且在t4时刻,状态确认信号(状态确认)由传感器融合电路514的有限状态机806断言,导致例如上/下控制器540基于状态标志的数量来建议调整电路工作频率、电源电压和/或偏置电压。此外,状态更新中断“状态更新IRQ”例如被断言以通知主机处理器状态数据可用。
在时刻t4,状态定时器重新启动,并且其持续时间通过信号“状态定时器prog”来编程,以触发新的状态定时器监测阶段。
然而,这一次,在状态定时器结束之前,通过信号(强制状态请求)强制进行状态请求,导致电路536在时刻t5时断言状态请求信号(状态请求)。因此,在时刻t5和t6之间,状态计数例如被计算和保存起来,并且在t6时刻,状态确认信号(状态确认)由传感器融合电路514的有限状态机86断言,这导致例如上/下控制器540基于状态标志的数量来建议调整电路工作频率、电源电压和/或偏置电压。此外,状态更新中断“状态更新IRQ”例如被断言以通知主机处理器状态数据可用。
在时刻t6,状态定时器重新启动,并且其持续时间由信号“状态定时器prog”来编程,以触发新的状态定时器监测阶段。
图15A是表示根据示例实施例的涉及故障操作模式的警报循环管理的时序图。图15A示出了时钟信号CLK_1_O/P的例子,例如其最初具有与正常功能模式(功能模式)相关的频率。这个频率可以是固定的频率,也可以是根据状态标志的激活状态而变化的频率。
在时刻t0,例如检测到警报标志(检测到警报),导致进入故障运行模式(故障运行模式),这时时钟信号CLK_1_OP的频率例如被除以2,并触发警报跟踪周期(警报跟踪)和警报持续时间(警报持续时间)。此外,警报警告中断“警报警告IRQ”例如被断言。
在时刻t1,警报持续时间结束,并且警报清除请求(警报清除请求)例如被断言,以便重新初始化警报标志。因此,在时刻t2,例如“警报清除确认”被断言,并且例如警报更新中断“警报更新IRQ”被断言。由此电路返回到正常的功能模式。不再出现警报标志,直到时刻t3,在时刻t3检测到另一个警报标志(检测到警报)。因此如前所述,再次进入故障操作模式。
图15B是表示根据示例实施的涉及故障安全模式的警报循环管理的时序图。与图15A类似,图15B示出了时钟信号CLK_1_O/P的例子,该时钟信号CLK_1_O/P例如最初具有与正常功能模式(功能模式)相关的频率。与图15A一样,在时刻t0检测到警报(检测到警报),一直到时刻t2的过程与图15A相同,不再详细描述。
然而,在图15B的示例中,在警报跟踪周期(警报跟踪)结束前的t3时刻检测到新警报(检测到警报)。因此,在时刻t3进入故障安全模式(故障安全模式)。在故障安全模式下,出现另一级IRQ,这里指中断“警报错误IRQ”而不是“警报警告IRQ”。在这种模式下,例如时钟信号CLK_1_OP的频率再次除以2,并且在例如实施在故障操作模式的情况下采取的其他操作。
图16更详细地示意性地示出了根据本公开示例实施例的图13的控制电路504的上/向管理电路540。
上/下管理电路540例如包括比较器1602、1604和有限状态机(FSM)1606。比较操作例如是通过由控制器542断言的信号(状态确认)触发的。但是,如果警报被断言,则不进行向上/向下计算。
比较器1602例如被配置为将状态标志计数值C_S与由信号“状态高边界”定义的高阈值进行比较。如果状态标志计数值C_S所指示的状态标志的数量超过这个阈值,则有限状态机1606例如被配置为使用图13中描述的相关信号,警告系统需要降低操作频率,和/或提高电路的电源电压和/或偏置电压。
比较器1604例如被配置为将状态标志计数值C_S与由信号“状态低边界”定义的低阈值进行比较。如果状态标志计数值C_S所指示的状态标志的数量少于这个阈值,则有限状态机1606例如被配置为使用图13中描述的相关信号,警告系统需要提高操作频率,和/或降低电路的电源电压和/或偏置电压。
有限状态机1606例如被配置为在进行比较时通过断言信号“上/下完成”并且使用信号“上/下结果”指示比较结果来通知控制电路504。
已经描述了各种实施例和变型。本领域技术人员可以理解这些实施例的某些特征能够组合,并且本领域技术人员会容易地想到其他变型。
最后,基于上述功能的描述,本文所述的实施例和变型的实际实施在本领域技术人员的能力范围内。
Claims (14)
1.一种电路,其包括:
-第一时序守卫电路(200,SLG_S),其被配置为检测第一数据信号到达第一同步装置(202)处的裕量时间何时降到低于第一阈值(SLG延迟1);和
-第二时序守卫电路(200,SLG_A),其被配置为检测第二数据信号到达第二同步装置(202)处的裕量时间何时降到低于第二阈值(SLG延迟2),所述第一阈值和第二阈值彼此不相同。
2.根据权利要求1所述的电路,其中:
-所述第一数据信号由具有第一最差传播延迟的至少一个第一数据路径产生;
-所述第二数据信号由具有大于所述第一最差传播延迟的第二最差传播延迟的至少一个第二数据路径产生;并且
-所述第二阈值(SLG延迟2)低于所述第一阈值(SLG延迟1)。
3.根据权利要求1所述的电路,其中:
-所述第一阈值(SLG延迟1)是状态阈值(状态),所述状态阈值与所述电路的由所述第一同步装置在所述第一数据信号到达后接收到的时钟信号的时钟沿相距第一时间距离;并且
-所述第二阈值(SLG延迟2)是警报阈值(警报),所述警报阈值与所述电路的由所述第二同步装置在所述第二数据信号到达后接收到的时钟信号的时钟沿相距第二时间距离,所述第二阈值低于所述第一阈值。
4.根据权利要求1至3中任一项所述的电路,其包括多个所述第一时序守卫电路和时序响应电路,所述时序响应电路被配置为:
-当所述第一数据信号的裕量时间降到低于所述第一阈值(SLG延迟1)时,接收来自所述多个第一时序守卫电路的状态标志信号;
-将所述多个第一时序守卫电路所产生的标志信号(状态)的数量与阈值进行比较;和
-响应于标志信号的数量超过所述阈值,对所述电路的时钟信号进行第一电源电压或偏置电压调整和/或第一频率降低。
5.根据权利要求1至4中任一项所述的电路,其包括多个所述第二时序守卫电路和保护电路,所述保护电路被配置为:
-当所述第二数据信号的裕量时间降到低于所述第二阈值(SLG延迟2)时,接收来自所述多个第二时序守卫电路的警报标志信号;并且
-响应于来自所述第二时序守卫电路中任一个第二时序守卫电路的警报信号,对所述电路的时钟信号进行第二频率降低。
6.根据引用权利要求4时的权利要求5所述的电路,其中第一频率调整是不超过30%的频率降低,第二频率调整是超过30%的频率降低。
7.根据权利要求6所述的电路,其中所述时序响应电路被配置为从所述警报标志信号的断言开始,在所述电路的时钟信号的10个时钟周期内,并且优选在5个时钟周期内实施所述第二频率调整。
8.根据权利要求1至7中任一项所述的电路,其中所述第一和第二时序守卫电路(200)中的每个包括:
-耦合在其时钟输入和所述第一同步装置(202)的时钟输入节点之间的第一延迟缓冲器(208)。
9.根据权利要求1至8中任一项所述的电路,其中所述第一和第二时序守卫电路(200)中的每个包括:
-串联耦合在其数据输入和另一同步装置的数据输入之间的第二延迟元件(212)和第三延迟元件(214),其中由所述第一时序守卫电路(200)的第三延迟元件引入的延迟不同于由所述第二时序守卫电路(200)的第三延迟元件引入的延迟。
10.一种在电路中进行时序控制的方法,所述方法包括:
-由第一时序守卫电路(200,SLG_S),检测第一数据信号到达第一同步装置(202)处的裕量时间何时降到低于第一阈值(SLG延迟1);和
-由第二时序守卫电路(200,SLG_A),检测第二数据信号到达第二同步装置(202)处的裕量时间何时降到低于第二阈值(SLG延迟2),所述第一阈值和第二阈值彼此不同。
11.根据权利要求10所述的电路,其中:
-所述第一数据信号由具有第一最差传播延迟的至少一个第一数据路径产生;
-所述第二数据信号由具有大于所述第一最差传播延迟的第二最差传播延迟的至少一个第二数据路径产生;并且所述第二阈值(SLG延迟2)低于所述第一阈值(SLG延迟1)。
12.根据权利要求10所述的电路,其中:
-所述第一阈值(SLG延迟1)是状态阈值(状态),所述状态阈值与所述电路的由所述第一同步装置在所述第一数据信号到达后接收到的时钟信号的时钟沿相距第一时间距离;并且
-所述第二阈值(SLG延迟2)是警报阈值(警报),所述警报阈值与所述电路的由所述第二同步装置在所述第二数据信号到达后接收到的时钟信号的时钟沿相距第二时间距离,所述第二阈值低于所述第一阈值。
13.根据权利要求10至12中任一项所述的方法,其中所述电路包括多个所述第一时序守卫电路和时序响应电路,所述方法还包括:
-当所述第一数据信号的裕量时间降到低于所述第一阈值(SLG延迟1)时,由所述时序响应电路接收来自所述多个第一时序守卫电路的状态标志信号;
-由所述时序响应电路,将所述多个第一时序守卫电路所产生的标志信号(状态)的数量与阈值进行比较;并且
-响应于标志信号的数量超过所述阈值,由所述时序响应电路对所述电路的时钟信号进行第一电源电压或偏置电压调整和/或第一频率降低。
14.根据权利要求10至13中任一项所述的方法,其中所述电路包括多个所述第二时序守卫电路和保护电路,所述方法还包括:
-当所述第二数据信号的裕量时间降到低于所述第二阈值(SLG延迟2)时,由所述保护电路接收来自所述多个第二时序守卫电路的警报标志信号;并且
-响应于来自所述第二时序守卫电路中任一个第二时序守卫电路的警报信号,由所述保护电路对所述电路的时钟信号进行第二频率降低。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR2107642 | 2021-07-15 | ||
FRFR2107642 | 2021-07-15 | ||
PCT/EP2022/069841 WO2023285647A1 (en) | 2021-07-15 | 2022-07-15 | Circuit for detecting timing violations in a digital circuit |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117941259A true CN117941259A (zh) | 2024-04-26 |
Family
ID=82850046
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202280061406.3A Pending CN117941259A (zh) | 2021-07-15 | 2022-07-15 | 用于检测数字电路中时序违例的电路 |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP4371234A1 (zh) |
CN (1) | CN117941259A (zh) |
WO (1) | WO2023285647A1 (zh) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3683199A (en) | 1970-09-14 | 1972-08-08 | Westinghouse Electric Corp | Over-{11 and underexcitation protection circuit for alternating current power systems |
JP2009200739A (ja) * | 2008-02-20 | 2009-09-03 | Panasonic Corp | 半導体集積回路 |
US8762804B2 (en) * | 2012-08-06 | 2014-06-24 | Texas Instruments Incorporated | Error prediction in logic and memory devices |
JP7399622B2 (ja) * | 2019-03-20 | 2023-12-18 | 株式会社東芝 | 半導体装置及び半導体装置の制御方法 |
-
2022
- 2022-07-15 CN CN202280061406.3A patent/CN117941259A/zh active Pending
- 2022-07-15 EP EP22753632.3A patent/EP4371234A1/en active Pending
- 2022-07-15 WO PCT/EP2022/069841 patent/WO2023285647A1/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
EP4371234A1 (en) | 2024-05-22 |
WO2023285647A1 (en) | 2023-01-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9753486B2 (en) | Clock gating with an asynchronous wrapper cell | |
US8214668B2 (en) | Synchronizing circuit | |
KR101312978B1 (ko) | 성능 모니터링을 위한 임계―경로 회로 | |
US7617409B2 (en) | System for checking clock-signal correspondence | |
US8384435B2 (en) | Clock switching circuit with priority multiplexer | |
US9520877B2 (en) | Apparatus and method for detecting or repairing minimum delay errors | |
US9899992B1 (en) | Low power adaptive synchronizer | |
US10084434B2 (en) | Relative timed clock gating cell | |
US8493108B2 (en) | Synchronizer with high reliability | |
Gomina et al. | Power supply glitch attacks: Design and evaluation of detection circuits | |
EP2580864B1 (en) | Integrated circuit device, electronic device and method for detecting timing violations within a clock | |
US9112489B2 (en) | Sequential logic circuit and method of providing setup timing violation tolerance therefor | |
US10630271B2 (en) | Self timed data sampler | |
CN117941259A (zh) | 用于检测数字电路中时序违例的电路 | |
US11068630B2 (en) | Synchronous device with slack guard circuit | |
US10924091B2 (en) | Immediate fail detect clock domain crossing synchronizer | |
US8890594B1 (en) | System for functional reset across multiple clock domains | |
US6566924B2 (en) | Parallel push algorithm detecting constraints to minimize clock skew | |
US20140009168A1 (en) | Detecting operating conditions | |
US7574314B2 (en) | Spurious signal detection | |
JPH1011309A (ja) | プロセッサ出力比較方法およびコンピュータシステム | |
US20240192745A1 (en) | Architecture for managing asynchronous resets in a system-on-a-chip | |
EP4109318A1 (en) | Circuits and methods for detecting decreases in a supply voltage in an integrated circuit | |
US11487600B2 (en) | Electronic circuit | |
GB2476683A (en) | Detection of clock tampering by comparison of the clock with a trusted clock signal |
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 |