CN106556792B - 能够进行安全扫描的集成电路 - Google Patents

能够进行安全扫描的集成电路 Download PDF

Info

Publication number
CN106556792B
CN106556792B CN201511010626.1A CN201511010626A CN106556792B CN 106556792 B CN106556792 B CN 106556792B CN 201511010626 A CN201511010626 A CN 201511010626A CN 106556792 B CN106556792 B CN 106556792B
Authority
CN
China
Prior art keywords
scan
signal
integrated circuit
security
enable 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.)
Active
Application number
CN201511010626.1A
Other languages
English (en)
Other versions
CN106556792A (zh
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 USA Inc
Original Assignee
NXP USA Inc
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 USA Inc filed Critical NXP USA Inc
Priority to CN201511010626.1A priority Critical patent/CN106556792B/zh
Priority to US15/201,503 priority patent/US9927490B2/en
Publication of CN106556792A publication Critical patent/CN106556792A/zh
Application granted granted Critical
Publication of CN106556792B publication Critical patent/CN106556792B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/3177Testing of logic operation, e.g. by logic analysers
    • 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/2851Testing of integrated circuits [IC]
    • G01R31/2855Environmental, reliability or burn-in testing
    • G01R31/2856Internal circuit aspects, e.g. built-in test features; Test chips; Measuring material aspects, e.g. electro migration [EM]
    • 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/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318533Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
    • G01R31/318536Scan chain arrangements, e.g. connections, test bus, analog signals
    • 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/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318533Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
    • G01R31/318583Design for test
    • G01R31/318588Security aspects

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Environmental & Geological Engineering (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Semiconductor Integrated Circuits (AREA)

Abstract

本公开涉及能够进行安全扫描的集成电路。在集成电路处于安全功能模式中时并且当访问存储在可连接到扫描链中的寄存器中与安全相关的数据的企图包括局部且选择性地在扫描使能树的相应分支处将扫描使能信号设为有效时,集成电路感测该企图。当检测到这个企图时,集成电路(i)产生导致与安全相关的数据的复位的安全警告,和/或(ii)接合旁路开关以将扫描链与相应的输出端子断开,从而阻止将与安全相关的数据经由扫描链移出IC。

Description

能够进行安全扫描的集成电路
技术领域
本发明涉及集成电路(IC)测试,具体而言,涉及集成电路和/或装置的扫描测试。
背景技术
可以在硬件制造过程的多个阶段测试集成电路,对于一些产品是用于客户环境中的硬件维护和/或故障查找。称为扫描测试的测试IC的传统方法依赖于以可切换的方式在一个或多个扫描链中连接的寄存器(例如触发器或锁存器),扫描链提供了对IC的内部节点的访问。测试图可以借助扫描链移入,随后使时钟信号脉冲化以测试所选IC功能,从而可以移出结果并与预期结果相比较以检测是否有任何测试失败.
传统扫描测试的一个问题在于在一些电路中有可能将诸如安全码的敏感数据移出电路.存储在半导体芯片中的安全码例如在电信行业中广泛用于硬件识别和认证,以进入安全状态或模式,用于数据加密等。如果可以借助扫描链访问负责管理安全码的电路,那么通过将IC从功能模式切换到扫描或调试模式,和/或通过操纵扫描使能信号以移出安全信息,数据就会易于遭受到未授权的访问.
用以保护IC中的安全信息免于基于扫描的攻击的传统方案是在扫描链之外保持接收这种安全信息的寄存器,由此使得不能从IC的扫描端口访问所述寄存器.但这个方案的缺点是随之减小了IC的扫描测试覆盖率.因此,能够在不减小IC的可测试性的情况下维护安全数据是有利的。
附图说明
本发明的实施例在本文中通过示例示出,并且不受附图的限制,在附图中,相似的参考标记指示相似的要素.为了简单和清楚,示出了附图中的要素,但所述要素不一定按照比例绘制.通过示例,依据参考附图的以下详细说明,公开的实施例的各个方面、特征和益处会变得充分清楚,在附图中:
图1是根据本发明的实施例的集成电路(IC)的示意性方框图;
图2是根据本发明的实施例的图1的IC的电路的示意性方框图;
图3是根据本发明的可替换的实施例的图2的电路的逻辑电路的示意性方框图;
图4是根据本发明的实施例的可以用于图1的IC中的逻辑电路的示意性方框图;及
图5-7是用图形示出根据本发明的实施例的可以在图1的IC中产生的各个信号的时序图。
具体实施方式
在此公开了本发明的详细的示例性实施例.但本公开内容提及的特定结构和功能细节仅仅表示为了说明本发明的示例性实施例。本发明的实施例可以以许多可替换的形式实施,不应解释为仅局限于本文阐述的实施例.
本文使用的单数形式“a”、“an”和“the”旨在还包括复数形式,除非上下文明确地另有表示.还会理解,术语“包括”、“具有”和/或“包含”指定所述特征、步骤或部件的存在,但不排除一个或多个其他特征、步骤或部件的存在或添加.还应注意,在一些可替换的实施例中,特定功能或操作可以不按照附图中所示的顺序进行。
当提及使得控制信号、状态位或其他相关功能特征或元件进入其逻辑真和逻辑假状态时,分别使用了本文使用的术语“设为有效”和“设为无效”.如果逻辑真状态是逻辑电平1,那么逻辑假状态就是逻辑电平0.可替换地,如果逻辑真状态是逻辑电平0,那么逻辑假状态就是逻辑电平1。
在各个可替换的实施例中,本文所述的每一个逻辑信号都可以使用正或负逻辑电路产生。例如,在负逻辑信号的情况下,信号为低电平有效,逻辑真状态对应于逻辑电平0.可替换地,在正逻辑信号的情况下,信号为高电平有效,逻辑真状态对应于逻辑电平1.
根据本发明,通过在IC保持在安全功能模式中的情况下,当访问存储在可连接到扫描链的寄存器中的与安全相关的数据的企图包括在扫描使能树的相应分支处局部且选择性地将扫描使能信号设为有效时,将IC配置为感测该企图解决了传统IC中的至少一些上述问题。当检测到这个企图时,IC通过以下操作来自动做出响应:(i)产生安全警告,其导致与安全相关的数据的复位;和/或(ii)使旁路开关将扫描链与相应的输出端子断开,从而阻止将敏感数据移出扫描链。
在一个实施例中,本发明是一种集成电路(IC),包括多个寄存器,所述多个寄存器可连接在两条或更多条扫描链中,用于响应于扫描使能信号被设为有效而扫描测试该IC.安全警告发生器可操作地连接到扫描链,并且响应于当扫描使能信号在扫描链的第二子集处没有被设为有效时扫描使能信号在扫描链的第一子集处被设为有效而将安全警告信号设为有效.IC自动可配置为响应于安全警告信号被安全警告发生器设为有效,而防止从所述多个寄存器中的至少一些寄存器读取数据.
在另一个实施例中,本发明是一种保护IC免于安全漏洞的方法.该方法包括将可连接在两条或更多条扫描链中的多个寄存器配置为响应于扫描使能信号被设为有效而扫描测试IC;将可操作地连接到扫描链的安全警告发生器配置为响应于当扫描使能信号在扫描链的第二子集处没有被设为有效时扫描使能信号在扫描链的第一子集处被设为有效而将安全警告信号设为有效;及将IC配置为响应于安全警告信号被安全警告发生器设为有效,而防止从所述多个寄存器中的至少一些寄存器读取数据.
在又一个实施例中,本发明是一种当IC中的多个寄存器连接在两条或更多条扫描链中用于扫描测试IC时保护IC免于安全漏洞的方法。该方法包括检测在扫描使能信号在扫描链的第二子集处没有被设为有效的同时扫描使能信号在扫描链的第一子集处被设为有效的情况;及响应于检测的情况,自动将IC配置为防止从所述多个寄存器中的至少一些寄存器读取数据.
在一些实施例中,安全警告发生器被配置为响应于扫描使能信号在扫描使能树的根部和/或在扫描链中的每一条扫描链处被设为有效而将安全警告信号设为有效.
图1-7示出了IC和扫描测试IC的方法的示例性实施例,该方法可以用于例如通过防止经由IC的扫描链未授权地访问安全或专有数据来抑制或避免安全漏洞.提供给安全数据的保护使得IC能够例如通过避免使得被配置为接收安全信息的寄存器不能连接到扫描链的传统实施的技术来实现相对高的可测试性,由此实现了所希望的IC的高扫描测试覆盖率.
现在参考图1,显示了根据本发明的实施例的IC 100的示意性方框图.IC 100包括扫描测试电路,并且因此具有多条扫描链,出于例示的目的,在图1中仅显示了其中的两条,标记为110和120.如本领域中已知的,扫描链可以通过以下方式在触发器(图1中未示出)的选定子集中的每一个触发器的输入处设置多路复用器或mux(图1中同样未示出;例如参见图2)来构成:触发器可以连接(i)到彼此以形成串联移位寄存器,及(ii)作为IC功能的功能元件。在图2中更详细地显示了扫描链的示例性结构.本领域普通技术人员会理解,其他扫描链结构可以类似地用于本发明的可替换实施例中。
可以通过将FUNCTION_MODE信号设为无效,且将SCAN_MODE和SCAN_ENABLE信号设为有效来将IC 100从功能模式重配置为扫描模式.IC 100包括形成扫描使能树112的一组连接。扫描使能树112的根部包括外围管脚或焊盘102,外部产生的信号可以施加到外围管脚或焊盘102以在根部处将扫描使能信号设为有效或无效。扫描使能树112进一步包括多个分支,图1中仅显示了一些分支.例如,分支104连接到扫描使能树112,并且被配置为将SCAN_ENABLE信号施加到扫描链110。标记为106的另一个分支类似地连接到扫描使能树112,并且被配置为将SCAN_ENABLE信号施加到扫描链120.图1还示出了扫描使能树112的分支的另一集合108.在一个实施例中,集合108中的一些或全部分支被配置为将SCAN_ENABLE信号施加到IC 100的另外的扫描链(图1中没有明确示出).连接扫描使能树112的主干103以将SCAN_ENABLE信号从焊盘102施加到安全复位发生器130.
在一个实施例中,IC 100具有两类扫描链,扫描链110和120分别是第一类和第二类的示例.具体而言,扫描链110是在操作中其中的触发器中不接收或存储诸如安全码或密钥等的与安全相关的数据的意义上的“普通”扫描链.相反,扫描链120是“与安全相关的”扫描链,因为在操作中其中的一些或全部触发器可以在其中接收或存储与安全相关的数据.
当SCAN_MODE和SCAN_ENABLE信号被设为有效时,扫描链110和120可以分别通过扫描端口SCAN_IN1和SCAN_IN2接收数据,并分别通过扫描端口SCAN_OUT1和SCAN_OUT2输出数据.在扫描链110和120中使用触发器的这个可访问性,可以例如使用以下处理步骤进行IC100的基于扫描的测试:(i)将SCAN_MODE和SCAN_ENABLE信号设为有效;(ii)分别通过扫描端口SCAN_IN1和SCAN_IN2将希望的测试向量移入扫描链110和120;(iii)将SCAN_ENABLE信号设为无效;(iv)施加时钟信号CLK的一个或多个脉冲以使用连接到扫描链的触发器的逻辑电路来处理测试向量,以产生存储回这些触发器中测试结果;(v)将SCAN_ENABLE信号重新设为有效;及(vi)分别通过扫描端口SCAN_OUT1和SCAN_OUT2将在扫描链的触发器中捕获的测试结果移出扫描链110和120.
安全复位发生器130操作以自动保护扫描链120(及其他与安全相关的扫描链,图1中未明确示出)中与安全相关的数据免于通过诸如扫描端口SCAN_OUT2的IC 100的扫描端口被访问。例如,在一个实施例中,可以通过(i)将FUNCTION_MODE信号设为无效,及(ii)将SCAN_MODE信号设为有效而将IC 100设置为扫描模式.安全复位发生器130通过自动将SECURITY_RESET信号设为有效而对这些控制信号变化做出响应。当SECURITY_RESET信号被设为有效时,扫描链120在将存储在其触发器中的全部信息位在从扫描链120移出到扫描端口SCAN_OUT2之前,自动复位这些信息位(例如为0)。
以下参考图6更详细地说明了如何响应于从IC 100的外围管脚或焊盘引起的控制信号变化将SECURITY_RESET信号设为有效的另外示例.
当IC 100的操作模式受IC的外围管脚或焊盘的直接操纵时,在上述触发器复位保护安全数据免于未授权访问的同时,可能需要另外的保护以检测并阻止更复杂的未授权访问企图,诸如依赖于电探针而不是IC的外围管脚或焊盘的那些未授权访问企图.例如,电探针可以用于在IC保持在安全功能模式中,且无需在焊盘102和/或主干103处将SCAN_ENABLE信号设为有效的情况下,在扫描使能树112的所选分支(例如分支106)处将扫描使能信号局部地设为有效.在不经由主干103接收有效的SCAN_ENABLE信号的情况下,安全复位发生器130可能不能检测到配置变化,该配置变化使得可以经由相应的扫描端口访问所选分支的触发器,并可能不将SECURITY_RESET信号设为有效,从而允许安全数据被移出而不被复位。
在根据本发明的实施例的IC 100中通过在IC 100中包含安全警告发生器140和/或旁路开关150来解决以上指出的安全威胁。在一个实施例中,当IC100仍处于安全功能模式中时,当访问存储在可连接到诸如扫描链120的扫描链中的触发器中的安全数据的企图包括在扫描使能树112的相应分支处局部且选择性地将扫描使能信号设为有效时,安全警告发生器140感测该企图.当检测到这个企图时,安全警告发生器140自动地(i)将SECURITY_WARNING信号设为有效,及(ii)将被设为有效的SECURITY_WARNING信号施加到安全复位发生器130,例如如图1所示的。响应于接收到SECURITY_WARNING信号,安全复位发生器130将SECURITY_RESET信号设为有效,由此防止将与安全相关的数据移出扫描链,如下进一步详述.
扫描链110和120可操作地连接到安全警吿发生器140,如图1所示的.安全警告发生器140被配置为当SCAN_ENABLE信号在扫描树112的根部和/或至少一个其他分支处没有被设为有效时,并且在意外(例如不符合指定操作过程的)扫描使能有效(scan-enableassertion)在扫描使能树112的任何分支处出现时,自动产生SECURITY_WARNING信号以将其设为有效。安全警告发生器140还可以包括寄存器(图1中未明确示出,参见图2),被配置为扫描链110和120的尾部寄存器。在操作中,移出扫描链110和120的任何数据在数据出现在相应的扫描输出端口SCAN_OUT#之前,都通过这些尾部寄存器传送.安全警告发生器140进一步被配置为将SECURITY_WARNING信号施加到安全复位发生器130。
在一些实施例中,IC 100可以具有安全警告发生器140的一个或多个另外的实例(名义上的副本),类似地连接到安全复位发生器130.
安全复位发生器130被配置为适当地以在图1所示的其他输入为条件响应于SECURITY_WARNING信号被设为有效自动产生SECURITY_RESET信号。以下参考图4提供了安全复位发生器130的示例性实施例的更详细说明。
当安全复位发生器130将SECURITY_RESET信号设为有效时,与安全相关的扫描链120通过自动复位(例如为0)存储在其触发器中的全部信息位来做出响应.另外,施加到扫描端口SCAN_IN2的输入信号被路由为绕过扫描链120,并且反而通过旁路开关150直接连接到扫描端口SCAN_OUT2.因此在这些条件下,防止了通过扫描端口SCAN_IN2和SCAN-OUT2访问来自与安全相关的扫描链120的任何数据。
图2是根据本发明的实施例的电路200的方框图,其可以用于IC 100中(参见图1)以实现电路元件104、106、110、120、140和150(参见图1).具体而言,扫描使能分支208实现扫描使能分支104和106(图1).多个触发器210和多个多路复用器212实现扫描链110的示例性实施例。多个触发器220和多个多路复用器222实施扫描链120的示例性实施例。多路复用器2321和2322、触发器2401和2402、及OR门(或门)244实现安全警告发生器140的示例性实施例。多路复用器(MUX)242是旁路开关150的示例性实施例.
当在分支208处将SCAN_ENABLE信号设为无效时,多路复用器212处于致使触发器210连接到普通组合电路202的状态中。类似地,多路复用器222处于致使触发器220连接到与安全相关的组合电路204的状态中.如上所示,在IC 100的功能模式中,诸如触发器210和220的扫描链触发器操作以支持相应逻辑电路(诸如普通组合电路202和与安全相关的组合电路204)的预期功能。
当在分支208处将SCAN_ENABLE信号设为有效时,多路复用器212处于致使触发器210在线性移位寄存器中彼此连接的状态中。例如可以使用以上已经参考图1提及的处理步骤,将数据(i)从输入端子SCAN_IN1移入触发器210中,及(ii)经由输出端子SCAN_OUT1移出触发器210.类似地,多路复用器222处于致使触发器220在另一个线性移位寄存器中彼此连接的状态中.可以将数据(i)从输入端子SCAN_IN2移入触发器220中,及(ii)经由输出端子SCAN_OUT2移出触发器220.
触发器2401充当由触发器210形成的扫描链110的尾部寄存器,意味着数据位在能够移出该扫描链并出现在输出端子SCAN-OUT1之前必须通过触发器2401。触发器2402类似地充当由触发器220形成的扫描链120的尾部寄存器.结果,数据位在出现在输出端子SCAN_OUT2之前,必须通过触发器2402.
多路复用器2321和2322中的每一个的一个输入都硬连接到逻辑0,如图2所示的.在此,术语“硬连接的”表示相应输入的0逻辑电平不取决于图2中所示的任何控制信号的逻辑状态.因此,当将SCAN_ENABLE信号设为无效时,触发器2401和2402中的每一个都在其中存储逻辑0,该逻辑0从多路复用器2321和2322中的相应的一个的硬连接输入写入触发器2401和2402中的每一个.触发器2401和2402将这些逻辑0施加到OR门244,从而使得OR门244和AND门(与门)246将SECURITY_WARNING信号保持在无效(0)电平。在SECURITY_RESET信号也在无效电平的情况下,多路复用器242将触发器2402的输出连接到端子SCAN_OUT2,从而使得该端子处于逻辑电平0.
当将SCAN-ENABLE信号设为有效时,多路复用器2321和2322自动重配置为将触发器2401和2402的输入分别连接到扫描链110和120,而不是各自的硬连接输入。因而,如果使得时钟信号CLK脉动,那么存储在触发器2401和2402中的逻辑0就可以分别由从扫描链110和120的末端触发器210和220移入的逻辑值代替。如果这些逻辑值中的至少一个刚好是逻辑电平1,那么OR门244的输出将处于逻辑1。如果SECURITY_MODE和FUNCTION_MODE被设为有效,那么AND门246将把SECURITY_WARNING信号设为有效。注意,取决于存储在扫描链110和120中的数据,在SCAN_ENABLE信号被设为有效后,可能会花费多于时钟信号CLK的一个时钟周期来导致OR门244和AND门246将SECURITY_WARNING信号设为有效。
在可替换的实施例中,多路复用器2321和2322可以使得其硬连接输入处于逻辑电平1。依据以上的说明,本领域普通技术人员会理解如何按照与该电路的上述预期功能一致的方式配置并操作电路200的相应实施例。
当由于在扫描使能树112(图1)的任何分支处对控制信号电平的意外访问或操纵而将SECURITY_WARNING信号自动设为有效时,也可以由安全复位发生器130(图1)将SECURITY_RESET信号自动设为有效,例如以下参考图4-7更详细解释的。当SECURITY_RESET信号被设为有效时,多路复用器242切换到如下状态:(i)触发器2402和扫描链120从输出端子SCAN_OUT2断开,并且(ii)输出端子SCAN_OUT2经由相应的旁路线206和多路复用器242直接连接到输入端子SCAN_IN2.另外,存储在触发器220中的任何数据被复位,例如全部由逻辑0代替.
图3是根据本发明可替换的实施例的可以用于电路200(图2)中的逻辑电路300的方框图.具体而言,逻辑电路300包括AND门3021和3022,AND门3021和3022被配置为代替电路200(图2)中的元件2321、2322、2401和2402.
在操作中,逻辑电路300在与电路200(图2)相同的条件下将SECURITY_WARNING信号设为有效。例如,当SCAN_ENABLE信号被设为无效时,AND门3021和3022的输出都为逻辑电平0.结果,OR门244的输出也处于逻辑电平0,这意味着SECURITY_WARNING信号也被设为无效.当SCAN_ENABLE信号被设为有效且来自扫描链110的输入刚好处于逻辑电平1时,AND门3021的输出将处于逻辑电平1。类似地,当SCAN_ENABLE信号被设为有效且来自扫描链120的输入刚好处于逻辑电平1时,AND门3022的输出将处于逻辑电平1.当AND门3021和3022的至少一个输出处于逻辑电平1时,OR门244的输出也将处于逻辑电平1.如果SECURITY_MODE和FUNCTION_MODE被设为有效,那么AND门246就将SECURIYY_WARNING信号设为有效。
图4是根据本发明的实施例的可以用于IC 100(图1)中以实现安全复位发生器130(参见图1)的逻辑电路400的方框图。逻辑电路400接收以下输入信号:RESET、SCAN_ENABLE、SCAN_MODE、SECURITY_MODE、FUNCTION_MODE和SECURITY_WARNING,并产生逻辑电平取决于输入信号的逻辑电平的输出信号SECURITY_RESET和SCAN_MODE_TO_SOC.
逻辑电路400包括锁存器412,锁存器412被配置为将局部输入信号SCAN_MODE转换为系统级控制信号SCAN_MODE_TO_SOC.具体而言,当例如从相应的输入管脚将输入信号SCAN_MODE设为有效时,片上系统(SoC)作为整体不进入扫描模式,直至锁存器412将系统级控制信号SCAN_MODE_TO_SOC设为有效为止。但锁存器412的配置是将系统级控制信号SCAN_MODE_TO_SOC设为无效,除非SECURITY_RESET信号变为有效.如上已经指出的,SECURITY_RESET信号的有效导致存储在相应IC的与安全相关的扫描链(诸如扫描链120(图1))中的全部与安全相关的数据复位.
逻辑电路400进一步包括AND门402和404、及OR门408和410。在操作中,AND门402和404、及OR门408和410处理输入信号RESET、SCAN_ENABLE、SCAN_MODE、SECURITY_MODE、FUNCTION_MODE和SECURITY_WARNING,以产生SECURITY_RESET信号.以下参考图5-7更详细地描述逻辑电路400对其输入信号的逻辑电平中的变化的响应的几个代表性示例。
图5-7是用图形示出根据本发明的实施例的可以在IC 100(图1)中产生的多个信号的时序图.在适当情况下,以下提供的对图5-7的描述也可以参考图1-4.
图5用图形示出了IC用户企图通过从功能模式切换到扫描模式来访问与安全相关的数据的情形。在此情形下,IC用户将FUNCTION_MODE信号设为无效,如图5中以波形502所示的.同时,IC用户将SCAN_MODE和RESET信号设为有效,如图5中分别以波形504和505所示的.响应于RESET信号被设为有效,IC 100将SECURITY_RESET信号设为有效,如图5中以波形506所示的.锁存器412随后通过将控制信号SCAN_MODE_TO_SOC设为有效(如图5中以波形508所示的)而对SECURITY_RESET信号的有效做出响应.在SCAN_MODE_TO_SOC被设为有效后,用户可以访问扫描链的内容。但用户仍不能将任何与安全相关的数据移出,因为SECURITY_RESET信号的有效已经使得IC的与安全相关的扫描链中的全部与安全相关的数据复位.
图6用图形示出了当IC处于非安全功能模式中和当IC处于安全功能模式中时,IC用户企图通过从根部位置(诸如图1的焊盘或管脚102)使得SCAN_ENABLE信号有效来访问与安全相关的数据的情形.当如图6以波形602所示地将SECURITY_MODE信号设为有效时,出现从非安全功能模式到安全功能模式的转换。在转换前,即,当SECURITY_MODE信号被设为无效时(例如如图6中脉冲605所示的),SCAN_ENABLE信号的有效不导致安全复位.相反,在转换后,即,当SECURITY_MODE信号和FUNCTION_MODE信号都处于有效状态中时(如图6中以波形602和604所示的),当IC用户将SCAN_ENABLE信号设为有效时(例如如图6中以波形606所示的),发生安全复位。在此情形下,逻辑门402、404、408和410(参见图4)将SECURITY_RESET信号也变为有效,如图6中以波形608所示的.结果,用户将不能移出任何与安全相关的数据,因为SECURITY_RESET信号的有效使得IC的与安全相关的扫描链中的全部与安全相关的数据复位。注意,在此情形下,不需要为了安全复位生效将SECURITY_WARNING信号设为有效.
图7用图形示出了当IC处于安全功能模式中时,IC用户企图通过从除了根部位置以外的扫描使能树的任何分支使得SCAN_ENABLE信号有效来访问与安全相关的数据的情形.例如,使用的位置可以是控制扫描链的特定子集的局部扫描使能分支,诸如图2中所示的扫描使能分支208.在此情形下,施加到安全复位发生器130(图1)或400(图4)的控制信号SCAN_ENABLE可能仍保持为无效。
如同图6中所示的情况,SECURITY_MODE信号和FUNCTION_MODE信号都处于有效状态中,如图7中以波形702和704所示的。当在分支208(图2)处使得SCAN_ENABLE信号有效时(如图7以波形706所示的),可以在图7中以波形708所示的时钟信号CLK的下一个时钟周期的上升沿开始移出扫描链110和120(图2).移动的位首先由尾部寄存器2401和2402(参见图2)捕获。如果至少一个移动的位刚好处于逻辑1,例如图7中以波形710和712所示的,那么OR门244(图2)就通过将SECURITY_WARNING信号设为有效(如图7中以波形714所示的)来做出响应。当SECURITY_WARNING信号被设为有效时,安全复位发生器130(图1)或400(图4)通过将SECURITY_RESET信号设为有效(如图7中以波形716所示)来做出响应.结果,用户将不能移出任何与安全相关的数据,因为SECURITY_RESET信号的有效使得IC的与安全相关的扫描链中的与安全相关的数据复位。
在一些实施例中,本文公开的创新概念可以用于其中寄存器可连接以形成单条扫描链的IC中。这样的IC的示例性实施例包括:多个寄存器,被配置为在一条或多条扫描链中连接,用于响应于扫描使能信号被设为有效而扫描测试IC;及安全警告发生器,连接到扫描链并且被配置为响应于扫描使能信号在扫描链的第一子集处被设为有效而将安全警告信号设为有效,其中,IC自动可配置为响应于由安全警告发生器将安全警告信号设为有效来防止从至少一些寄存器读取数据.
尽管在使用触发器实现的扫描链的上下文中描述了本发明,但本领域技术人员会理解,可以使用其他类型的寄存器,诸如(非限制性地)锁存器。
会进一步理解,在不脱离以下权利要求书中表明的本发明的范围的情况下,本领域技术人员可以在为了解释本发明的本质而描述并示出的部件的细节、材料和布置中作出各种变化。
本文对“一个实施例”或“实施例”的提及表示结合该实施例所述的特定特征、结构或特性可以包括在本发明的至少一个实施例中.短语“在一个实施例中”在说明书中多个位置的出现并非必然全都指代相同的实施例,也不必然是与其他实施例相互排斥的不同的或可替换的实施例。这同样适用于术语“实现方式”.
对于本说明书的目的,术语“耦接”、“耦接”、“连接”指代本领域中已知的或以后开发的允许能量在两个或更多个元件之间传送的任何方式,并且可以想到一个或多个另外的元件的插入,尽管这不是必需的.术语“直接耦接”、“直接连接”等意味着连接的元件经由用于传送能量的导体连接或连续.
尽管按照具有相应标记的特定顺序表述了在以下方法权利要求中的步骤,但除非权利要求表述另外暗示了用于实现部分或全部这些步骤的特定顺序,这些步骤不必然要局限于按照该特定顺序来实现。

Claims (6)

1.一种集成电路,包括:
多个寄存器,被配置为连接在两条或更多条扫描链中,所述两条或更多条扫描链用于响应于扫描使能信号被设为有效而扫描测试所述集成电路;
安全警告发生器,包括:第一寄存器,响应于扫描使能信号被设为有效,能够连接到所述两条或更多条扫描链中的第一扫描链的末端;第一多路复用器,耦接在第一扫描链的最后寄存器与所述第一寄存器之间并且由扫描使能信号控制,其中,第一多路复用器的第一输入连接到第一固定逻辑电平,第一多路复用器的第二输入连接到第一扫描链的最后寄存器;及逻辑电路,响应于由第一寄存器产生的输出信号,产生安全警告信号;第二寄存器,响应于扫描使能信号被设为有效,能够连接到所述两条或更多条扫描链的第二扫描链的末端;第二多路复用器,耦接在第二扫描链的最后寄存器与所述第二寄存器之间并且由扫描使能信号控制,其中,第二多路复用器的第一输入连接到第一固定逻辑电平,第二多路复用器的第二输入连接到第二扫描链的最后寄存器;并且其中,所述逻辑电路响应于由第二寄存器产生的输出信号,产生安全警告信号;及
安全复位发生器,所述安全复位发生器响应于安全警告信号被安全警告发生器设为有效,将安全复位信号设为有效,
其中,所述集成电路能够被配置为响应于安全警告信号被安全警告发生器设为有效,而防止从所述第二扫描链中的第一预定数量的寄存器读取数据,
并且其中,响应于安全复位信号被设为有效,复位所述第二扫描链中的的所述第一预定数量的寄存器中的数据。
2.根据权利要求1所述的集成电路,进一步包括旁路开关,所述旁路开关连接在具有所述多个寄存器中的至少一个寄存器的扫描链的输入端子与输出端子之间,其中,所述旁路开关配置为在安全警告信号被设为有效时自动将输入端子与输出端子相互连接以绕过所述扫描链。
3.根据权利要求1所述的集成电路,进一步包括具有多个分支的扫描使能树,每一个分支都被配置为将扫描使能信号施加到所述两条或更多条扫描链中的相应的一条扫描链,其中,当扫描使能信号在所述多个分支中的至少一个分支处被设为有效时并且当扫描使能信号没有在所述多个分支中的至少另一个分支处被设为有效时,安全警告发生器将安全警告信号设为有效。
4.根据权利要求3所述的集成电路,其中:
所述扫描使能树包括主干,所述主干电连接到所述多个分支和集成电路的外围管脚;及
当在扫描使能树的主干处或者在集成电路的外围管脚处将扫描使能信号设为有效时,安全警告发生器将安全警告信号设为有效。
5.根据权利要求1所述的集成电路,进一步包括旁路开关,所述旁路开关配置为当安全警告信号被安全警告发生器设为有效时,防止将数据从具有所述多个寄存器中的至少一个寄存器的扫描链移出到集成电路的输出端子。
6.根据权利要求1所述的集成电路,其中,所述安全复位发生器接收扫描使能信号,并基于扫描使能信号产生安全复位信号。
CN201511010626.1A 2015-09-28 2015-09-28 能够进行安全扫描的集成电路 Active CN106556792B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201511010626.1A CN106556792B (zh) 2015-09-28 2015-09-28 能够进行安全扫描的集成电路
US15/201,503 US9927490B2 (en) 2015-09-28 2016-07-03 Integrated circuit with secure scan enable

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201511010626.1A CN106556792B (zh) 2015-09-28 2015-09-28 能够进行安全扫描的集成电路

Publications (2)

Publication Number Publication Date
CN106556792A CN106556792A (zh) 2017-04-05
CN106556792B true CN106556792B (zh) 2021-03-19

Family

ID=58408882

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201511010626.1A Active CN106556792B (zh) 2015-09-28 2015-09-28 能够进行安全扫描的集成电路

Country Status (2)

Country Link
US (1) US9927490B2 (zh)
CN (1) CN106556792B (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10222417B1 (en) * 2016-11-28 2019-03-05 Cadence Design Systems, Inc. Securing access to integrated circuit scan mode and data
US10481205B2 (en) 2017-07-27 2019-11-19 Seagate Technology Llc Robust secure testing of integrated circuits
US10502784B2 (en) * 2017-09-22 2019-12-10 Stmicroelectronics International N.V. Voltage level monitoring of an integrated circuit for production test and debug
US10990580B2 (en) * 2017-10-25 2021-04-27 New York University System, method and computer-accessible medium for stripped-functionality logic locking
US11222098B2 (en) * 2018-08-23 2022-01-11 University Of Florida Research Foundation, Incorporated Protecting obfuscated circuits against attacks that utilize test infrastructures
US11144677B2 (en) * 2019-08-08 2021-10-12 Nxp Usa, Inc. Method and apparatus for digital only secure test mode entry
US10955473B1 (en) 2019-11-01 2021-03-23 Nxp B.V. System and method of scan reset upon entering scan mode
CN111130754B (zh) * 2019-12-16 2022-02-18 西安电子科技大学 一种扫描链的加密解密电路及集成电路
US11320482B2 (en) * 2020-02-26 2022-05-03 Silicon Laboratories Inc. Secure scan entry
CN112217498B (zh) * 2020-09-24 2023-04-14 联暻半导体(山东)有限公司 一种多位脉冲锁存器电路
CN112713886B (zh) * 2020-12-02 2023-09-15 海光信息技术股份有限公司 用于扫描寄存器复位的装置和方法
US20220358230A1 (en) * 2021-05-04 2022-11-10 Texas Instruments Incorporated Methods and apparatus for using scan operations to protect secure assets
CN114076883B (zh) * 2021-11-10 2023-09-05 北京中电华大电子设计有限责任公司 老化电路、芯片老化测试方法及芯片

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7185249B2 (en) 2002-04-30 2007-02-27 Freescale Semiconductor, Inc. Method and apparatus for secure scan testing
US7334173B2 (en) 2005-06-28 2008-02-19 Transmeta Corporation Method and system for protecting processors from unauthorized debug access
US9041411B2 (en) * 2005-08-10 2015-05-26 Nxp B.V. Testing of an integrated circuit that contains secret information
EP1917535B1 (en) * 2005-08-10 2010-05-19 Nxp B.V. Testing of an integrated circuit that contains secret information
US7815249B2 (en) 2006-08-28 2010-10-19 Alcoa Inc. Lightweight hybrid material truck hood
US7975307B2 (en) 2007-09-07 2011-07-05 Freescale Semiconductor, Inc. Securing proprietary functions from scan access
US7987331B2 (en) * 2007-11-15 2011-07-26 Infineon Technologies Ag Method and circuit for protection of sensitive data in scan mode
US8120377B2 (en) * 2009-06-26 2012-02-21 Apple Inc. Integrated circuit having secure access to test modes
CN101620656B (zh) * 2009-07-29 2012-11-28 深圳国微技术有限公司 安全jtag电路及保护芯片内部信息安全的方法
US9746519B2 (en) * 2011-03-25 2017-08-29 Nxp B.V. Circuit for securing scan chain data
US8566658B2 (en) * 2011-03-25 2013-10-22 Lsi Corporation Low-power and area-efficient scan cell for integrated circuit testing
CN102967824B (zh) * 2011-08-31 2016-05-25 上海华虹集成电路有限责任公司 一种扫描链控制电路及其实现方法
US9224012B2 (en) * 2013-05-20 2015-12-29 Advanced Micro Devices, Inc. Debug functionality in a secure computing environment
US9026873B2 (en) * 2013-07-23 2015-05-05 Altera Coporation Method and apparatus for securing configuration scan chains of a programmable device
CN104182665B (zh) * 2014-08-05 2017-04-12 北京时代民芯科技有限公司 一种带有保护模块的jtag电路
CN104660466B (zh) * 2015-02-06 2018-02-09 深圳先进技术研究院 一种安全测试方法及系统

Also Published As

Publication number Publication date
CN106556792A (zh) 2017-04-05
US20170089978A1 (en) 2017-03-30
US9927490B2 (en) 2018-03-27

Similar Documents

Publication Publication Date Title
CN106556792B (zh) 能够进行安全扫描的集成电路
US9523736B2 (en) Detection of fault injection attacks using high-fanout networks
EP1499906B1 (en) Method and apparatus for secure scan testing
EP2583112B1 (en) Method and apparatus for providing scan chain security
CN107202953B (zh) 在运行时间期间支持逻辑自测试模式引入的扫描链电路
CN1329833C (zh) 用于容错和柔性测试签名生成器的方法和装置
US9746519B2 (en) Circuit for securing scan chain data
US8645778B2 (en) Scan test circuitry with delay defect bypass functionality
WO2009149160A1 (en) Method and apparatus for securing digital information on an integrated circuit during test operating modes
US9110133B2 (en) Reconfigurable circuit and decoder therefor
US7058868B2 (en) Scan testing mode control of gated clock signals for memory devices
Da Rolt et al. A smart test controller for scan chains in secure circuits
US10520550B2 (en) Reconfigurable scan network defect diagnosis
US20060107144A1 (en) Power reduction in module-based scan testing
US10215808B2 (en) Scan test circuit, scan test method, and method of designing scan test circuit
US20140365838A1 (en) Integrated circuit comprising test circuitry for testing fan-out paths of a test control primary input
US20070033461A1 (en) Method and system for encryption-based design obfuscation for an integrated circuit
US20120102376A1 (en) Methods and apparatus to test multi clock domain data paths with a shared capture clock signal
US7089471B2 (en) Scan testing mode control of gated clock signals for flip-flops
US7552372B2 (en) Semiconductor device and test method thereof
EP1678513B1 (en) Electronic circuit comprising a secret sub-module
Praneeth et al. A Novel Architecture Design of a USB Module in Wireless Modem for IOT Applications
Metra et al. Should We Make Our Design for Testability Schemes Fault Secure?
JP2004012399A (ja) スキャン機能付きフリップフロップ回路、スキャンテスト回路および半導体集積回路

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
CB02 Change of applicant information

Address after: Texas in the United States

Applicant after: NXP America Co Ltd

Address before: Texas in the United States

Applicant before: Fisical Semiconductor Inc.

CB02 Change of applicant information
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant