CN113901447A - 集成电路中的电压毛刺检测 - Google Patents

集成电路中的电压毛刺检测 Download PDF

Info

Publication number
CN113901447A
CN113901447A CN202110686666.7A CN202110686666A CN113901447A CN 113901447 A CN113901447 A CN 113901447A CN 202110686666 A CN202110686666 A CN 202110686666A CN 113901447 A CN113901447 A CN 113901447A
Authority
CN
China
Prior art keywords
clock
voltage
counter
count value
glitch
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
Application number
CN202110686666.7A
Other languages
English (en)
Inventor
安德烈亚斯·伦茨
安德烈亚斯·伯纳德斯·玛丽亚·扬斯曼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NXP BV
Original Assignee
NXP BV
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NXP BV filed Critical NXP BV
Publication of CN113901447A publication Critical patent/CN113901447A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R19/00Arrangements for measuring currents or voltages or for indicating presence or sign thereof
    • G01R19/165Indicating that current or voltage is either above or below a predetermined value or within or outside a predetermined range of values
    • G01R19/16533Indicating that current or voltage is either above or below a predetermined value or within or outside a predetermined range of values characterised by the application
    • G01R19/16538Indicating that current or voltage is either above or below a predetermined value or within or outside a predetermined range of values characterised by the application in AC or DC supplies
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K5/125Discriminating pulses
    • H03K5/1252Suppression or limitation of noise or interference
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/556Detecting local intrusion or implementing counter-measures involving covert channels, i.e. data leakage between processes
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R19/00Arrangements for measuring currents or voltages or for indicating presence or sign thereof
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/31816Soft error testing; Soft error rate evaluation; Single event testing
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/40Testing power supplies
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/75Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information by inhibiting the analysis of circuitry or operation
    • G06F21/755Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information by inhibiting the analysis of circuitry or operation with measures against power attack
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/76Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in application-specific integrated circuits [ASIC] or field-programmable devices, e.g. field-programmable gate arrays [FPGA] or programmable logic devices [PLD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/067Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
    • G06K19/07Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips
    • G06K19/073Special arrangements for circuits, e.g. for protecting identification code in memory
    • G06K19/07309Means for preventing undesired reading or writing from or onto record carriers
    • G06K19/07363Means for preventing undesired reading or writing from or onto record carriers by preventing analysis of the circuit, e.g. dynamic or static power analysis or current analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Nonlinear Science (AREA)
  • Mathematical Physics (AREA)
  • Power Engineering (AREA)
  • Manipulation Of Pulses (AREA)

Abstract

一种用于硬件安全性的集成电路包括电压毛刺检测处理系统,所述电压毛刺检测处理系统包括:振荡器电路,所述振荡器电路生成并输出为电源电压的函数的本地振荡器时钟;以及计数器,所述计数器由所述振荡器电路计时以生成至少一个计数值;以及捕获区段,所述捕获区段将所述至少一个计数值同步到系统时钟域中以用于检测所述电源电压中的电压毛刺。

Description

集成电路中的电压毛刺检测
技术领域
本公开大体上涉及数据处理系统中的安全性保护,且更具体地,涉及用于防止包括集成电路的装置中的故障攻击的电源电压毛刺检测技术。
背景技术
例如汽车控制器芯片、机顶盒系统、芯片卡和其它芯片上系统(SoC)电路等数据处理系统越来越容易受到电源电压毛刺攻击,例如,所述电源电压毛刺攻击可包括正电压毛刺或负电压毛刺以到达或处理所存储数据。一种显要的黑客技术是所谓的毛刺攻击,其中施加电压尖峰。这可能致使芯片的集成电路(IC)的晶体管以不合需要和不可预测的方式切换状态。例如,施加到电源电压的电压毛刺可暂时改变晶体管或逻辑门的阈值电压,从而使得嵌入式中央处理单元(CPU)的逻辑“跳过”指令,且随后使得CPU忽略由CPU执行的软件中的特定安全检查,由此黑客可控制逻辑的部分,在数据加密之前劫持所述数据,获得关于装置架构的信息等等。
用于检测电压毛刺的一种常见方法是将例如电压传感器的模拟检测器连接到芯片的电压供应线路。然而,所述电压供应线路不容易移植到其它工艺节点,例如16nmFinFET工艺,这使得模拟传感器系统的集成更困难。
发明内容
如将了解,如所公开的实施例包括至少以下实施例。在一个实施例中,一种用于硬件安全性的集成电路包括电压毛刺检测处理系统,所述电压毛刺检测处理系统包括:振荡器电路,所述振荡器电路生成并输出为电源电压的函数的本地振荡器时钟;以及计数器,所述计数器由所述环形振荡器计时以生成至少一个计数值;以及捕获区段,所述捕获区段将所述至少一个计数值同步到系统时钟域中以用于检测所述电源电压中的电压毛刺。
所述用于硬件安全性的集成电路的替代实施例包括以下特征中的一个或其任何组合。
所述电压毛刺检测处理系统另外包括时钟脉冲门,所述时钟脉冲门从所述本地振荡器时钟生成门控时钟以控制所述纹波计数器接收所述本地振荡器时钟。
所述捕获区段在响应于所述门控时钟的所述计数值的稳定周期之后将所述计数值同步到所述系统时钟域中。
所述本地振荡器时钟停止以允许所述计数值在所述稳定周期内稳定下来。
所述纹波计数器具有用于将所述至少一个计数值清零的复位输入。
在每一周期之后,捕获所述计数器的所述至少一个计数值的当前值,并且将所述计数器复位以建立新周期。
所述计数器在所述门控时钟的时钟边沿上递增至少一个计数值,并且从所述时钟脉冲门输出的所述门控时钟在计数脉冲的上升边沿处提供,且被施加到所述计数脉冲。
所述至少一个计数器值直接取决于在所述时钟脉冲门打开且所述本地振荡器时钟穿过所述时钟脉冲门到达所述计数器的测量周期期间的所述电源电压,并且所述电压毛刺检测处理系统的分辨率由所述测量周期中的环形振荡器时钟的数目确定。
所述集成电路另外包括错误检测系统,其中所述至少一个计数值从所述计数器输出到所述错误检测系统,当所述至少一个计数值与参考值相差预定裕度时,所述错误检测系统生成错误信号。
所述集成电路另外包括参考调适函数,其中所述参考值以规则时间间隔调适到在上一时间间隔中接收到的所述计数值的平均值。
所述集成电路另外包括多个时钟脉冲门,所述时钟脉冲门中的每一个生成到与所述时钟脉冲门并联的多个计数器中的计数器的门控时钟,所述多个计数器在系统时钟的每一时钟循环中生成连续的毛刺检测。
所述集成电路另外包括时钟和捕获控制模块,所述时钟和捕获控制模块将时钟启用信号输出到所述时钟脉冲门,使得响应于所述本地振荡器时钟的所述门控时钟一次仅被施加到所述计数器中的一个计数器。
所述时钟脉冲门是逻辑“与”门,所述逻辑“与”门各自具有用于从所述环形振荡器接收所述本地振荡器时钟的第一输入和用于从所述时钟和捕获控制模块接收所述时钟启用信号的第二输入。
所述集成电路另外包括选择器,所述选择器控制所述计数器的输出,使得每次一个计数值被所述捕获区段捕获。
在一个实施例中,一种用于芯片上系统装置(SOC)的电压毛刺检测处理系统,包括:振荡器电路,所述振荡器电路生成并输出为电源电压的函数的本地振荡器时钟;以及计数器,所述计数器由所述环形振荡器计时以生成至少一个计数值,所述计数值与系统时钟同步以检测所述电源电压中的电压毛刺。
所述电压毛刺检测处理系统的替代实施例包括以下特征中的一个或其任何组合。
所述电压毛刺检测处理系统另外包括时钟脉冲门(204),所述时钟脉冲门控制所述本地振荡器时钟以允许从所述计数器输出的所述至少一个计数值在被捕获到所述系统时钟的域中之前稳定下来,使得所述时钟值与所述电源电压具有直接关系。
所述计数器的所述至少一个计数值由所述本地振荡器时钟计时,在由所述系统时钟限定的固定时间帧中取样,且与后续计数值相比较。
所述电压毛刺检测处理系统另外包括多个时钟脉冲门,所述时钟脉冲门中的每一个生成到与所述时钟脉冲门并联的多个计数器中的计数器的门控时钟,所述多个计数器在系统时钟的每一时钟循环中生成连续的毛刺检测。
所述系统被构造和布置成用作频率监测器。
在一个实施例中,一种用于检测硬件安全集成电路处的电源电压毛刺攻击的方法,包括:根据电源电压生成第一时钟;响应于所述第一时钟生成计数值;以及将所述计数值同步到第二时钟域中以检测所述电源电压中的电压毛刺。
所述电压毛刺检测处理系统的替代实施例包括以下特征中的一个或其任何组合。
所述第一时钟为本地振荡器时钟,且所述第二时钟为系统时钟。
附图说明
本发明借助于例子示出且不受附图的限制,在附图中,类似标记指示类似元件。为了简单和清晰起见而示出图中的元件,并且这些元件不一定按比例绘制。
图1是根据本公开的所选实施例的计算机芯片的框图。
图2是根据本公开的所选实施例的电压毛刺检测器的框图。
图3是示出根据本公开的所选实施例的由图1和2的电压毛刺检测器执行的同步过程的不同阶段的一组时序波形。
图4是根据本公开的所选实施例的另一电压毛刺检测处理系统的框图。
图5是示出根据本公开的所选实施例的图4的电压毛刺检测器的同步过程的不同阶段的一组时序波形。
图6是根据本公开的所选实施例的包括电压毛刺检测器的汽车微控制器的框图。
图7是示出根据本公开的所选实施例的用于检测和防止数据处理系统上的毛刺攻击的方法的流程图。
具体实施方式
为了解决所属领域的技术人员已知的现代毛刺检测器的上述不足和其它缺点,本发明概念的实施例包括使用计算机芯片或集成电路(IC)等的数字核心中的标准单元的安全性检测系统、设备和方法,以提供针对电压毛刺或相关电力毛刺或电源毛刺的连续保护。毛刺检测机构通过提供完全由任何标准单元库中可用的各种电子逻辑函数构成的可综合检测器,克服了常规模拟毛刺传感器在可移植性方面遇到的问题,所述可综合探测器可应用于不同芯片类型的数字设计中,用于嵌入逻辑块中。
另外,本发明的安全性检测系统、设备和方法提供优于常规毛刺检测系统的更大的可缩放性以及更大的分辨率,因为纹波计数器被配置成接收直接时钟。另一方面,常规的毛刺检测系统通常依赖于延迟线,所述延迟线由反相器或缓冲器或将结果输出到捕获触发器的相关固定延迟逻辑元件形成,且被布置成补偿不稳定的输入信号。然而,其消耗集成电路(IC)的宝贵电路电平区域。例如,延迟线可用于确定信号应稳定的时间与信号实际上被捕获的时间之间是否存在差异,具体地说,通过测量穿过延迟线的逻辑门的信号的延迟来进行确定。延迟线必须足够长以覆盖所施加时钟的至少一个时钟循环,这需要检测器有相当大的物理区域。另外,常规的基于延迟线的毛刺检测器需要延迟线的长度对应增加,以便以较小时钟频率执行毛刺检测。举例来说,时钟从96MHz减小到12MHz需要将延迟装置大小的大小增加8倍,这在强调减小逻辑元件的现代芯片设计中是不合需要的。延迟线所需的额外逻辑消耗芯片的宝贵资源。这些资源在额外缩放、时钟速率增加或其它所需芯片改进的方面限制芯片。
另外,本发明的安全性检测系统、设备和方法通过将检测裕度维持得尽可能小且检测与常规模拟和数字毛刺检测系统相比不可见的毛刺,使用可编程裕度设置提供对改变的环境条件的自动适应。具体地说,典型模拟毛刺检测机构被构造和布置成检测高于或低于阈值电压电平的电压。电压电平由最大和最小允许的电源电压电平(加裕度)限定。此处,电压低于此电平的毛刺无法被检测出。本发明的安全性检测系统、设备和方法可检测出超出当前参考加/减裕度的毛刺。相关电压电平可低于/高于模拟传感器原本会触发的电平。在一些实施例中,本发明的安全性检测系统、设备和方法自动地适应温度和电压变化且将测量范围维持在最优位置中以提高毛刺检测的灵敏度。
考虑到由于供电网上的容量而引起的穿过计算机芯片的电压毛刺的降级,本发明的系统需要较少的毛刺检测器来保护所关注的特定安全关键IC区域。
因此,根据本发明概念的实施例的电压毛刺检测器可被构造和布置成用于需要安全性特征的各种汽车、政府和工业应用,例如,需要芯片上安全性特征以防止可能试图经由芯片控制车辆的操作的黑客进行违禁访问的基于芯片的汽车硬件安全引擎或相关安全子系统。
图1是根据一些实施例的计算机芯片10的框图。芯片10可包括一组电子电路,例如晶体管或由金属、氧化物、硅等形成的组件的其它组合。芯片10可包括处理器核心、存储器、输入/输出(I/O)和从例如其它IC的电源接收直接电源电压的外围组件(未示出),且可实施于例如本文中关于图6所描述的各种汽车、工业和消费型应用中。
芯片10可包括至少一个电源电压毛刺检测处理系统100和至少一个数字电路12。根据本公开的所选实施例,电压毛刺检测处理系统100还被称作电压毛刺检测器,可通过数字电路12实施为芯片上系统(SoC)装置或相关计算机芯片的部分。数字电路12可包括各种电子组件,例如可在标准单元库处获得的逻辑门(例如,“与”门、“或”门和“异或”门)、触发器等的组合。在一些实施例中,数字电路12可包括后处理区段,所述后处理区段包括用于当检测到非所要毛刺时生成警报、事件或错误信号的错误检测系统。
电压毛刺检测处理系统100可同样由标准单元库的元件形成。电压毛刺检测处理系统100被构造和布置成执行毛刺检测功能,包括相对于由数字电路12接收的输入信号过滤和去除非所要电压毛刺,但以与常规毛刺检测器相比允许易于扩展系统时钟频率的方式执行。具体地说,电压毛刺检测处理系统100比常规毛刺检测器需要更少的形成延迟线的数字逻辑单元,同时减少电压毛刺检测处理系统100的硬件组件的总面积。另外,还减小了对时钟频率的区域依赖性。另一方面,由常规毛刺检测器提供的延迟线需要缩放延迟线长度,且因此随着时钟周期线性地增加检测器大小。本发明的毛刺检测处理系统100仅需要取决于检测器的分辨率来缩放环形振荡器。由于直接计时的计数器且不需要初始延迟线,因此也减小了区域大小。
这种减小还可改善毛刺检测的分辨率,且自动适应例如温度变化、噪声条件等环境条件,因为毛刺将由于供电网而在穿过芯片10时经历较少降级。电压毛刺检测处理系统100依赖于计数器而不是延迟线和捕获值来进行毛刺检测,由此需要较少逻辑组件,例如延迟元件,并且提供如本文所描述的优于常规毛刺检测系统的额外优点。在一些实施例中,将从纹波计数器输出的计数值输出到包括错误检测系统等(未示出)的IC的后处理区段,所述后处理区段将所捕获的计数值与所计算的参考值进行比较,以在结果(即,计数值)与参考值之间的差超出可编程和预定裕度值的情况下生成错误信号。基于最高和最小结果(即,如由可编程计数器确定的给定时间段期间的计数值)来计算参考。由此,参考可适于可接受的变化的环境条件,只要变化处于可接受的范围内,所述变化例如温度升高。在一些实施例中,集成电路10包括参考调适函数,其中参考值以规则时间间隔调适到在上一时间间隔中接收到的计数值的平均值。
因为毛刺检测器100包括被配置成接收直接时钟的纹波计数器,所以实现了上述可缩放分辨率。在纹波计数器和后处理逻辑处增加一个位可使毛刺检测器的分辨率加倍。举例来说,需要增加单个触发器以将检测器的分辨率增加2倍。另一方面,常规检测器将需要使触发器的数目加倍以获得类似的分辨率增加。因此,可通过确保集成电路的制造参数的所有过程变化存在足够的测量范围以避免错误肯定的方式来增强由本发明的毛刺检测器100提供的分辨率。
图2是图1的电压毛刺检测处理系统100的框图。如所示,在一些实施例中,电压毛刺检测处理系统100包括本地时钟产生电路202、时钟脉冲门204、多位计数器206和捕获区段208的一个或多个捕获触发器。尽管电压毛刺检测处理系统100作为特定实施方案在图1中示出且描述,但可同样应用其它配置和实施方案。
在一些实施例中,本地时钟产生电路202包括振荡器电路,例如用于对计数器206计时的环形振荡器。尽管图2示出纹波计数器206,但可同样应用其它计数器类型。本地振荡器时钟OCK由环形振荡器根据取决于在总线或其它管道、线路等上提供到计算机芯片10的各种电气组件的电源电压(VDD)的频率而生成,所述电源电压可能具有电压瞬变,其中毛刺检测由系统10执行。因此,环形振荡器的输出OCK可用于在由所施加的系统时钟限定的时间段内对纹波计数器206计时。环形振荡器频率由振荡器的构造确定,例如,继而由环形振荡器延迟链的长度建立。环形振荡器电路202中的传播延迟作为电源电压(VDD)的函数输出。
时钟脉冲门204被构造和布置成停止或门控本地振荡器时钟OCK以允许从纹波计数器206输出的计数值在被捕获到外部系统的时钟域中之前稳定下来或同步,因为所述值可能无法在单个时钟循环中稳定到稳定值。所述值与电源电压具有直接关系,尤其在根据基于系统时钟限定的固定时间帧以规则方式考虑的情况下。在一些实施例中,时钟脉冲门204包括启用输入(CLK启用),所述启用输入由时钟启用逻辑输入提供到控制时钟的“与”门等,例如,通过门控输出使得在同步过程的预定周期期间没有时钟被输出,并且由此控制计数器206何时递增其值。前述示出一个可能的同步技术,但不限于此。
另外,时钟脉冲门204可减少装置的电力消耗,同时还允许从纹波计数器206输出的计数值稳定下来。
纹波计数器206被构造和布置成直接从时钟脉冲门204接收门控时钟信号。如先前所提及,纹波计数器206由环形振荡器202等计时。由于环形振荡器202对电源电压的依赖性,当振荡器时钟OCK在由系统时钟限定的预定时间段内对纹波计数器206时,纹波计数器206中的计数值将与电源电压(VDD)具有直接关系,所述计数值继而基于固定时间帧以规则方式生成,即,由电压毛刺检测处理系统100被设计成保护的系统中使用的时钟的周期限定。纹波计数器206具有用于将计数值清零的复位输入。更具体地说,环形振荡器输出用于在由具有静态时钟频率的所施加的系统时钟限定的某一时间段内对纹波计数器206计时。在每一周期之后,捕获计数器206的当前值,复位计数器206以建立新周期。
捕获区段208包括一个或多个捕获触发器,所述一个或多个捕获触发器被构造和布置成使位电平信号同步,且更具体地说,作为同步过程的部分,将从纹波计数器206输出的计数值捕获到系统时钟域。捕获区段208的输出可提供到IC的后处理区段,或与芯片10通信的外部错误校正装置等。
本发明的基本概念是使用由例如环形振荡器时钟的电压依赖性时钟源计时的一个或多个计数器的后续值,在例如由系统时钟限定的固定时间帧中对所述值进行取样,并且通过从计数值生成参考值而将后续值相互比较。如本文所描述,本发明概念的特征是比较以由系统时钟限定的规则时间间隔捕获的电压依赖性计数值。从计数值计算参考。如果计数值超出参考加特定裕度,则生成错误信号。用于对计数器计时且生成时间参考的两个时钟源的使用需要所述时钟源之间的所谓的跨时钟域。一个此类概念描述如下。
为了提高对图1和2中所描述的电压毛刺检测器的操作的理解,现在参考图3,所述图3示出来自电压毛刺检测器100的相关输入和输出信号的时序图300。
如图3中所示,提供具有预定固定频率的系统时钟。如先前所描述,计数器206的结果或输出直接取决于在上一测量周期期间的电源电压,所述测量周期由时钟脉冲门204打开且环形振荡器的时钟传递到纹波计数器的周期限定。测量周期由系统时钟限定。取决于环形振荡器与系统时钟的频率关系,一些实施例可使用一个系统时钟循环的测量周期,其它实施例可使用更多系统时钟循环。在所选测量周期中的环形振荡器时钟的数目限定检测器的可能分辨率。纹波计数器206在门控时钟信号的时钟边沿上递增所存储的计数值。在一些实施例中,从时钟脉冲门204输出的门控时钟在计数脉冲的上升边沿处提供,且被施加到计数脉冲以使计数器值同步到系统的时钟域中。来自环形振荡器202的穿过时钟脉冲门204的时钟被施加到计数器206。这将计数时钟脉冲门204打开的时长。同步过程的稳定、捕获和结果阶段遵循计数阶段,但不同于计数脉冲,不取决于电源电压,且因此不容易受电源电压中的毛刺影响。具体地说,在同步期间,纹波计数器206的时钟必须停止以允许计数值稳定下来。在稳定周期之后,将计数值捕获到系统时钟域中。随后,将纹波计数器206复位,例如,如图3中所示的异步复位。
由于不分别相对于稳定、捕获和复位阶段的时钟脉冲执行毛刺检测,由此得出毛刺检测不会在每个系统时钟循环中发生。然而,转向图4和5,多个纹波计数器可被构造和布置成允许电压毛刺检测处理系统在每一时钟循环中生成连续毛刺检测,且允许在计数和同步过程的各个阶段中保持计数值。
参看图4,描述根据所选实施例的电压毛刺检测处理系统400的电路图。电压毛刺检测器400的至少一些元件与关于电压毛刺检测处理系统100所描述的那些元件相同或类似,因此为简洁起见不再重复。
时钟脉冲门404A-404D(通常,404)包括多个逻辑门,例如,“与”门。每一时钟脉冲门404具有耦合到纹波计数器406的输出。每一时钟脉冲门404具有被构造和布置成从环形振荡器402接收本地振荡器时钟OCK的第一输入和用于从时钟和捕获控制模块410接收相关时钟启用信号的第二输入。
时钟和捕获控制模块510被构造和布置成与时钟脉冲门404和例如多路复用器等的选择电路412通信。通过时钟启用和捕获选择信号,选择电路412将控制时钟脉冲门,其方式为使得来自环形振荡器402的时钟一次仅被施加到纹波计数器406中的一个纹波计数器,并且在每一系统时钟的情况下,捕获来自一个纹波计数器406的计数值。图5示出相关时序图500。具体地说,时序图500示出四个并联的时钟脉冲门404和纹波计数器406对的移位行为,与移位测量阶段、稳定捕获阶段和复位阶段。图中示出的值为辅助理解何种计数值将接管到捕获触发器中的示例值408,在本文中被称为“结果”。捕获选择值限定计数器406,在下一上升时钟边沿中值从所述计数器406接管到“结果”中,例如,如果“捕获选择”为1,则将来自计数器1的值接管到“结果”中。
如上文所描述,电压毛刺检测处理系统的输出可提供到芯片10的后处理区段,例如数字电路12的后处理区段,或提供到与芯片10通信的外部错误校正装置等。后处理区段可通过将纹波计数器值与参考值进行比较来评估此输出。具体地说,将同步的计数值与参考值进行比较,所述参考值又从先前计数值计算。在一些实施例中,参考值可以是固定值。在其它实施例中,如下文所描述,参考值可以是变量值。
如果参考值与结果之间的差大于可编程正裕度或小于可编程负裕度,则产生错误。可编程裕度设置允许电压毛刺检测处理系统适应不同芯片和应用上的不同种类的噪声分布,且确保对毛刺的最优检测速率,同时避免错误肯定或错误否定。在一些实施例中,这通过本发明的安全性检测系统、设备和方法来实现,所述安全性检测系统、设备和方法允许在每一系统时钟循环中执行连续毛刺检测操作,例如图4和5中所示。
另外,可执行数字后处理以去除温度和缓慢电源电压变化对结果的影响,参考值有规律地适用于所测量的结果。可经由计时器设置对更新速率进行编程。可提供生成用于更新参考值的周期性定时参考信号的更新计时器(未示出)。
对于每一计时器周期,确定最高和最低测量结果(最小值/最大值)。最大和最小测量结果的平均值可用于参考值。在计时器周期结束时,用这些值与可编程权重对参考进行平均。使参考的权重可编程允许抑制由于归因于应用的变化的电源噪声的变化而引起的参考值的大变化。因此,系统可通过将检测裕度维持得尽可能小且检测与常规模拟和数字毛刺检测系统相比不可见的毛刺,使用可编程裕度设置提供对改变的环境条件的自动适应。另外,本发明的安全性检测系统、设备和方法可自动补偿温度变化。
如本文所描述,本发明概念的实施例通过比较由环形振荡器计时的取决于电源电压的连续计数值来检测电压毛刺。随后生成的计数值还可取决于系统时钟的频率,因为所述频率确定了测量周期的长度。因此,在一些实施例中,系统被构造和布置成在无额外结构要求或变化的情况下用作频率监测器。
图6是根据本公开的所选实施例的包括电压毛刺检测器620的汽车微控制器600的框图。汽车微控制器600可实施用于各种汽车功能,包括但不限于汽车雷达系统、制动和稳定性控制、电动转向(EPS)、混合和电动车辆电力变换器、动力系统、转换器和充电器。尽管在图6所中示出为汽车芯片的部分,但电压毛刺检测器620可施加到需要防止电源电压毛刺且包含合成数字逻辑区段的任何芯片。一般来说,所有与安全性有关的芯片、集成电路等可包括本发明的特征,例如,在由防御分析研究所(IDA)提供的无线电芯片中实施的量子技术或其它保护机构。
电压毛刺检测器620可分别与图1至图5中所描述的电压毛刺检测器100、400相同或类似。电压毛刺检测器620可以是安全性系统608的部分,且与芯片上的汽车微控制器600的其它元件通信,所述其它元件包括但不限于存储器602、CPU 604、电机控制系统606、安全性系统608、串行通信610和输入/输出(I/O)。具体地说,安全性系统608被构造和布置成提供在不关闭系统的情况下检测、隔离和分辨计算机故障的安全功能和故障恢复。执行电压毛刺检测器620的安全性系统608可提供针对恶意黑客攻击的保护。
图7是示出根据本公开的所选实施例的用于检测和防止数据处理系统上的毛刺攻击的方法700的流程图。方法700中的一些或全部可在本文实施例中所描述的计算机芯片中执行,例如,由以适当方式连接到电源线的毛刺检测器硬件引擎执行。
在框702处,生成振荡器时钟信号,所述振荡器时钟信号具有取决于所关注的电路的电源电压的频率。
在框704处,使用振荡器时钟信号在由所施加的系统时钟限定的预定量的时间内对计数器计时。在一些实施例中,计数器为纹波计数器。其它实施例可包括其它计数器类型。
在框706处,计数器生成计数器值。由于环形振荡器频率对电源电压的依赖性,因此纹波计数器中的值在基于固定时间帧以规则方式评估时与电压具有直接关系。固定时间帧由检测器应保护的系统中使用的时钟的周期来限定。
在框708处,将纹波计数器值同步到系统时钟域中。在这样做时,振荡器时钟可停止以允许值稳定下来。在稳定之后,所述值可被捕获到系统时钟域中。
在框710处,将前述值提供到后处理计算机,例如,图1的数字电路12。
虽然本文中参考具体实施例描述了本发明,但是可以在不脱离如所附权利要求书中所阐述的本发明的范围的情况下进行各种修改和变化。因此,说明书和图式应视为说明性而不是限制性意义,并且预期所有此类修改都包括在本发明的范围内。并不意图将本文中关于具体实施例所描述的任何优势、优点或针对问题的解决方案理解为任何或所有权利要求的关键、必需或必不可少的特征或元件。
除非另外说明,否则例如“第一”和“第二”的术语用于任意地区分此类术语所描述的元件。因此,这些术语未必意图指示此类元件的时间或其它优先级排序。

Claims (10)

1.一种用于硬件安全性的集成电路,其特征在于,包括:
电压毛刺检测处理系统,所述电压毛刺检测处理系统包括:
振荡器电路,所述振荡器电路生成并输出为电源电压的函数的本地振荡器时钟;
计数器,所述计数器由所述振荡器电路计时以生成至少一个计数值;以及
捕获区段,所述捕获区段将所述至少一个计数值同步到系统时钟域中以用于检测所述电源电压中的电压毛刺。
2.根据权利要求1所述的集成电路,其特征在于,所述电压毛刺检测处理系统另外包括:
时钟脉冲门,所述时钟脉冲门从所述本地振荡器时钟生成门控时钟以控制所述计数器接收所述本地振荡器时钟。
3.根据权利要求2所述的集成电路,其特征在于,所述计数器在所述门控时钟的时钟边沿上递增至少一个计数值,并且从所述时钟脉冲门输出的所述门控时钟在计数脉冲的上升边沿处提供。
4.根据权利要求2所述的集成电路,其特征在于,所述至少一个计数器值直接取决于在所述时钟脉冲门打开且所述本地振荡器时钟穿过所述时钟脉冲门到达所述计数器的测量周期期间的所述电源电压,并且其中所述电压毛刺检测处理系统的分辨率由所述测量周期中的振荡器时钟的数目确定。
5.根据权利要求1所述的集成电路,其特征在于,另外包括错误检测系统,其中所述至少一个计数值从所述计数器输出到所述错误检测系统,当所述至少一个计数值与参考值相差预定裕度时,所述错误检测系统生成错误信号。
6.根据权利要求1所述的集成电路,其特征在于,另外包括多个时钟脉冲门,所述时钟脉冲门中的每一个生成到与所述时钟脉冲门并联的多个计数器中的计数器的门控时钟,所述多个计数器在系统时钟的每一时钟循环中生成连续的毛刺检测。
7.一种用于芯片上系统装置的电压毛刺检测处理系统,其特征在于,包括:
振荡器电路,所述振荡器电路生成并输出为电源电压的函数的本地振荡器时钟;以及
计数器,所述计数器由所述振荡器电路计时以生成至少一个计数值,所述计数值与系统时钟同步以检测所述电源电压中的电压毛刺。
8.根据权利要求7所述的电压毛刺检测处理系统,其特征在于,另外包括时钟脉冲门,所述时钟脉冲门控制所述本地振荡器时钟以允许从所述计数器输出的所述至少一个计数值在被捕获到所述系统时钟的域中之前稳定下来,使得所述时钟值与所述电源电压具有直接关系。
9.根据权利要求7所述的电压毛刺检测处理系统,其特征在于,另外包括多个时钟脉冲门,所述时钟脉冲门中的每一个生成到与所述时钟脉冲门并联的多个计数器中的计数器的门控时钟,所述多个计数器在系统时钟的每一时钟循环中生成连续的毛刺检测。
10.一种用于检测硬件安全集成电路处的电源电压毛刺攻击的方法,其特征在于,包括:
根据电源电压生成第一时钟;
响应于所述第一时钟生成计数值;以及
将所述计数值同步到第二时钟域中以检测所述电源电压中的电压毛刺。
CN202110686666.7A 2020-06-22 2021-06-21 集成电路中的电压毛刺检测 Pending CN113901447A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/908,338 2020-06-22
US16/908,338 US11474130B2 (en) 2020-06-22 2020-06-22 Voltage glitch detection in integrated circuit

Publications (1)

Publication Number Publication Date
CN113901447A true CN113901447A (zh) 2022-01-07

Family

ID=79023363

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110686666.7A Pending CN113901447A (zh) 2020-06-22 2021-06-21 集成电路中的电压毛刺检测

Country Status (2)

Country Link
US (1) US11474130B2 (zh)
CN (1) CN113901447A (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3415937A1 (en) * 2017-06-15 2018-12-19 Nagravision S.A. Method for detecting at least one glitch in an electrical signal and device for implementing this method
EP3850523B1 (en) * 2019-11-19 2022-03-16 Google LLC Voltage-variation detection under clock fluctuations
US11721410B2 (en) * 2020-12-21 2023-08-08 Micron Technology, Inc. Glitch detection in microelectronic devices, and related devices, systems, and methods
WO2023220615A2 (en) * 2022-05-10 2023-11-16 Battelle Energy Alliance, Llc Systems, methods, and apparatus for cyberattack mitigation and protection for extreme fast charging infrastructure
CN117033110A (zh) * 2023-10-09 2023-11-10 深圳市纽创信安科技开发有限公司 时钟毛刺串生成方法、系统及设备
CN117457583B (zh) * 2023-12-21 2024-03-08 北京智芯微电子科技有限公司 微粒器件、芯片、电子设备、芯片防护方法、装置及介质

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100265611B1 (ko) * 1997-12-31 2000-09-15 김영환 링 오실레이터
US6424189B1 (en) * 2000-10-13 2002-07-23 Silicon Integrated Systems Corporation Apparatus and system for multi-stage event synchronization
KR100849208B1 (ko) * 2006-10-24 2008-07-31 삼성전자주식회사 링 오실레이터를 구비하는 테스트 회로 및 테스트 방법
CN103675421A (zh) 2013-05-31 2014-03-26 国家电网公司 一种电源毛刺信号检测电路及检测方法
US9541603B2 (en) 2013-07-10 2017-01-10 Apple Inc. Method and apparatus for power glitch detection in integrated circuits
KR20170015706A (ko) * 2015-07-30 2017-02-09 삼성전자주식회사 글리치 검출기, 그것을 포함하는 전자 장치 및 그것의 알람 신호 발생 방법
US11164648B2 (en) 2019-06-18 2021-11-02 Nxp Usa, Inc. Glitch profiling in an integrated circuit

Also Published As

Publication number Publication date
US20210396789A1 (en) 2021-12-23
US11474130B2 (en) 2022-10-18

Similar Documents

Publication Publication Date Title
CN113901447A (zh) 集成电路中的电压毛刺检测
US11355457B2 (en) Fully digital glitch detection mechanism with process and temperature compensation
US9523736B2 (en) Detection of fault injection attacks using high-fanout networks
US7714619B2 (en) High-frequency clock detection circuit
US9607153B2 (en) Apparatus and method for detecting clock tampering
US8466727B2 (en) Protection against fault injections of an electronic circuit with flip-flops
JP6968234B2 (ja) 相対遅延を伴うフリップフロップを用いてデータサンプリング完全性チェックを行う電子デバイスおよびその方法
JP2021047850A (ja) ゲートクロックを用いたデータサンプリング整合性検査の電子デバイスおよび方法
CN110945372B (zh) 用于检测电信号中的至少一个毛刺的方法和用于实施该方法的装置
US8284879B2 (en) Lossless transfer of events across clock domains
US20060020864A1 (en) Method and system for blocking data in scan registers from being shifted out of a device
US6728649B2 (en) Method and apparatus for removing digital glitches
US20220382322A1 (en) Glitch detector
US11879938B2 (en) Method for detecting perturbations in a logic circuit and logic circuit for implementing this method
US6205192B1 (en) Clock input control circuit
CN115129296A (zh) 真实随机数产生器及真实随机数产生方法
US7501836B2 (en) Apparatus and method for determining capacitance variation in an integrated circuit
Bastos et al. A new bulk built-in current sensor-based strategy for dealing with long-duration transient faults in deep-submicron technologies
Manich et al. A highly time sensitive XOR gate for probe attempt detectors
US11947672B2 (en) Voltage glitch detection circuit
US20230253779A1 (en) Overvoltage and slow clock glitch detection
WO2022253834A1 (en) Offset detection
CN116609697A (zh) 一种电源欠压检测方法
CN112688670A (zh) 具有抗噪性和毛刺事件跟踪的去抖动电路
Yan et al. A dynamic self-adaptive correction method for error resilient application

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