发明内容
本发明实施例提供一种芯片及其检测方法,以解决现有芯片中集成的激光探测器的探测准确度低的问题。
本发明实施例提供了一种芯片,该芯片包括:
衬底;
位于所述衬底上的至少一个激光探测电路,
所述激光探测电路包括多个激光检测单元,所述激光检测单元包括一个监测二极管和一个第一充电晶体管,所述监测二极管的正极通过所述衬底接地,所述第一充电晶体管的输入端与所述衬底直接接触且与电源电连接、以及所述第一充电晶体管的栅极接收第一时钟信号,所述监测二极管的负极和所述第一充电晶体管的输出端电连接并作为所述激光检测单元的输出端,
所述激光探测电路还包括至少一个与非逻辑单元和至少一个与逻辑单元信号,所述与非逻辑单元包括至少一个输入端、以及所述与非逻辑单元的每个输入端与一个所述激光检测单元的输出端电连接,所述与逻辑单元的第一输入端与至少一个所述与非逻辑单元的输出端电连接、以及所述与逻辑单元的第二输入端接收使能信号,
被激光照射的所述激光检测单元输出激光监测信号以使对应的所述与非逻辑单元向所述与逻辑单元输出激光报警信号;以及,
位于所述衬底上的多个关键电路模块,其中,每个所述关键电路模块与至少一个所述激光检测单元相邻设置。
进一步地,所述多个关键电路模块至少包括:数据通路模块、安全算法模块和寄存器。
进一步地,所述关键电路模块与相邻的每个所述激光检测单元的间距小于或等于1微米。
进一步地,所述衬底为P型衬底。
进一步地,所述第一充电晶体管为PMOS。
进一步地,所述第一充电晶体管为NMOS。
进一步地,所述第一充电晶体管的源极与所述衬底直接接触且与所述电源电连接、以及所述第一充电晶体管的漏极与所述监测二极管的负极电连接。
进一步地,所述监测二极管的PN结尺寸大于所述第一充电晶体管的源极尺寸。
进一步地,所述激光检测单元还包括:第二充电晶体管;
所述第二充电晶体管的输入端与所述衬底直接接触且与所述电源电连接、以及所述第二充电晶体管的栅极接收第二时钟信号,所述监测二极管的负极、所述第一充电晶体管的输出端、以及所述第二充电晶体管的输出端电连接并作为所述激光检测单元的输出端,
其中,所述第一时钟信号控制所述第一充电晶体管导通同时所述第二时钟信号控制所述第二充电晶体管导通,以及,所述第一时钟信号控制所述第一充电晶体管关断同时所述第二时钟信号控制所述第二充电晶体管关断。
进一步地,所述第二充电晶体管为NMOS以及所述第一充电晶体管为PMOS,或者,所述第二充电晶体管为PMOS以及所述第一充电晶体管为NMOS。
进一步地,所述第二充电晶体管的源极与所述衬底直接接触且与所述电源电连接、以及所述第二充电晶体管的漏极与所述监测二极管的负极电连接。
进一步地,所述监测二极管的PN结尺寸大于所述第二充电晶体管的源极尺寸。
进一步地,所述芯片还包括:位于所述衬底上的时钟控制电路,所述时钟控制电路包括时钟源、与所述激光检测单元一一对应设置的多个逐级连接的时钟分频器、以及多路选通器,所述时钟源与首级所述时钟分频器的触发端电连接,每个所述时钟分频器的输出端与所述多路选通器的一个输入端电连接,所述多路选通器的输出端与每个所述激光检测单元电连接以向所述激光检测单元传输时钟信号。
本发明实施例还提供了一种芯片的检测方法,该芯片包括:衬底;位于所述衬底上的至少一个激光探测电路,所述激光探测电路包括多个激光检测单元,所述激光检测单元包括一个监测二极管和一个第一充电晶体管,所述监测二极管的正极通过所述衬底接地,所述第一充电晶体管的输入端与所述衬底直接接触且与电源电连接、以及所述第一充电晶体管的栅极接收第一时钟信号,所述监测二极管的负极和所述第一充电晶体管的输出端电连接并作为所述激光检测单元的输出端,所述激光探测电路还包括至少一个与非逻辑单元和至少一个与逻辑单元信号,所述与非逻辑单元包括至少一个输入端、以及所述与非逻辑单元的每个输入端与一个所述激光检测单元的输出端电连接,所述与逻辑单元的第一输入端与至少一个所述与非逻辑单元的输出端电连接、以及所述与逻辑单元的第二输入端接收使能信号,被激光照射的所述激光检测单元输出激光监测信号以使对应的所述与非逻辑单元向所述与逻辑单元输出激光报警信号;以及,位于所述衬底上的多个关键电路模块,其中,每个所述关键电路模块与至少一个所述激光检测单元相邻设置;
该芯片的检测方法包括:
输出第一使能信号以控制所述与逻辑单元关闭,同时控制所述第一充电晶体管保持关断,则所述激光探测电路处于休眠状态;
输出第二使能信号以控制所述与逻辑单元导通,同时控制所述第一充电晶体管导通,则所述激光探测电路处于充电状态;
输出所述第二使能信号以控制所述与逻辑单元导通,同时控制所述第一充电晶体管关断,则所述激光探测电路处于监测状态。
本发明实施例提供的芯片,衬底上设置有激光探测电路和多个关键电路模块,激光探测电路包括多个激光检测单元、至少一个与非逻辑单元和至少一个与逻辑单元,被激光照射的激光检测单元输出激光监测信号以使对应的与非逻辑单元向与逻辑单元输出激光报警信号。本发明实施例中,激光探测电路的结构简单,并且能够与任意一种类型的芯片的工艺兼容,工艺适应性非常强;激光检测单元的占空空间小,芯片中可集成数量较多的激光检测单元,有效提高激光探测准确度;激光注入攻击关键电路模块时,激光并不能完全避开每一个激光检测单元,避免漏检测,提高了芯片的安全性和安全级别。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,以下将参照本发明实施例中的附图,通过实施方式清楚、完整地描述本发明的技术方案,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参考图1所示,为本发明实施例提供的一种芯片的示意图。本发明实施例提供的芯片可以集成在各种设备中,不限定芯片的类型。参考图2~图3所示,为本发明实施例提供的多种激光探测电路的示意图。
本实施例提供的芯片包括:衬底10;位于衬底10上的至少一个激光探测电路,激光探测电路包括多个激光检测单元21,激光检测单元21包括一个监测二极管211(Diode)和一个第一充电晶体管212(MOS),监测二极管211的正极通过衬底10接地,第一充电晶体管212的输入端与衬底10直接接触且与电源VDD电连接、以及第一充电晶体管212的栅极接收第一时钟信号CLK,监测二极管211的负极和第一充电晶体管212的输出端电连接并作为激光检测单元21的输出端net,激光探测电路还包括至少一个与非逻辑单元22和至少一个与逻辑单元信号23,与非逻辑单元22包括至少一个输入端、以及与非逻辑单元22的每个输入端与一个激光检测单元21的输出端net电连接,与逻辑单元23的第一输入端与至少一个与非逻辑单元22的输出端电连接、以及与逻辑单元23的第二输入端接收使能信号EN,被激光照射的激光检测单元21输出激光监测信号以使对应的与非逻辑单元22向与逻辑单元23输出激光报警信号;以及,位于衬底10上的多个关键电路模块30,其中,每个关键电路模块30与至少一个激光检测单元21相邻设置。
如图1所示仅示出了芯片的4个单元通道(row1~row4),每个单元通道内设置有至少一个关键电路模块30,在本实施例中可选关键电路模块30为关键寄存器,每个关键寄存器与至少一个激光检测单元21相邻设置。需要说明的是,本领域技术人员可以根据产品所需,自行设计激光检测单元与关键电路模块的相对位置关系,例如可以设置在关键电路模块的第一侧、第二侧、第三侧和第四侧中的至少一侧;芯片的结构也不限于图1所示的单元通道及其中的关键寄存器,现有任意一种种类的芯片均落入本发明的保护范围;以及,还可以自行设计每个关键电路模块周围的激光检测单元的数量,并不限于图1所示。
如图2所示示出了每个激光检测单元21的第一充电晶体管212均为PMOS,相应的第一时钟信号为CLK。如图3所示示出了每个激光检测单元21的第一充电晶体管212均为NMOS,相应的第一时钟信号为CLK!。
本实施例中,激光探测电路设置在衬底10上。激光探测电路用于探测是否有激光注入芯片中,并在监测到有激光注入时输出激光报警信号,达到实时监测激光注入攻击的目的。另一方面,激光探测电路中激光检测单元21与芯片中的关键电路模块30相邻位置,与现有技术中激光探测器的设计相比,激光检测单元21与关键电路模块30的间距较小,能够实现芯片内关键电路区域被激光注入攻击时的有效探测。
本实施例中,激光探测电路包括多个激光检测单元21,激光检测单元21包括一个监测二极管211和一个第一充电晶体管212,监测二极管211的正极通过衬底10接地,第一充电晶体管212的输入端与衬底10直接接触且与电源VDD电连接、以及第一充电晶体管212的栅极接收第一时钟信号CLK,监测二极管211的负极和第一充电晶体管212的输出端电连接并作为激光检测单元21的输出端。激光探测电路还包括至少一个与非逻辑单元22和至少一个与逻辑单元信号23,与非逻辑单元22包括至少一个输入端、以及与非逻辑单元22的每个输入端与一个激光检测单元21的输出端电连接,与逻辑单元23的第一输入端与至少一个与非逻辑单元22的输出端电连接、以及与逻辑单元23的第二输入端接收使能信号EN。
本实施例中,激光探测电路至少包括充电状态和监测状态。需要说明的是,与非逻辑单元22中设置有输入端的门限电压值,该门限电压值作为激光报警信号输出的参考电压值,便于进行激光探测结果的输出,相关设计人员可根据芯片的参数合理设定该门限电压值。
在充电状态下,激光探测电路的第一充电晶体管212导通并给监测二极管211的PN结(未示出)充电,由于第一充电晶体管212的输入端接芯片的电源电压VDD,因此充电状态下监测二极管211的PN结被充电至电源电压VDD。需要说明的是,监测二极管211的负极和第一充电晶体管212的输出端电连接并作为激光检测单元21的输出端net电连接与非逻辑单元22的一个输入端,因此充电状态下,与非逻辑单元22的每个输入端的电压被充电至电源电压VDD,即为逻辑“1”。相应的,与逻辑单元23输出逻辑“1”,即与逻辑单元23不输出激光报警信号。
在监测状态下,激光探测电路的第一充电晶体管212关断,监测二极管211用于监测是否有激光注入。监测二极管11在被激光照射后,由于内光电效应,监测二极管11产生光漏电流,由于监测二极管11的正极接地,则监测二极管11的PN结中存储的电荷会迅速通过衬底10流向大地,即被激光照射的激光检测单元21电连接的与非逻辑单元22的输入端的电压迅速下降至低于与非逻辑单元22的输入端的门限电压,即为逻辑“0”;而未被激光照射的激光检测单元21电连接的与非逻辑单元22的输入端的电压保持电源电压VDD,即为逻辑“1”。相应的,至少一个与非逻辑单元22输出逻辑“0”时,与逻辑单元23输出逻辑“0”,此时与逻辑单元23输出的逻辑“0”即为激光报警信号,该激光报警信号传输至芯片系统后,芯片系统可进行相应的响应处理。由此实现实时监测激光注入攻击的目的,达到芯片被激光注入攻击时的有效探测和报警。
与非逻辑单元22(XNOR)含有多个输入端,每个输入端连接一个激光检测单元21,能够减少逻辑开销,降低成本。与非逻辑单元22的输出端电连接与逻辑单元23(AND)的第一输出端,与逻辑单元23的第二输入端接收使能信号(EN)。若激光探测电路中至少一个激光检测单元21输出逻辑“0”,则与非逻辑单元22(XNOR)向与逻辑单元23传输激光报警信号。具体的,若激光探测电路中至少一个激光检测单元21输出逻辑“0”,则对应的与非逻辑单元22(XNOR)输出逻辑“0”,相应的与逻辑单元23输出逻辑“0”,与逻辑单元23输出的逻辑“0”即为激光报警信号,由此,芯片的系统根据与逻辑单元23输出的逻辑“0”可以判定芯片某一位置出现光环境异常,则芯片的系统可进入异常处置程序;若激光探测电路中任意一个激光检测单元21输出逻辑“1”,则对应的与非逻辑单元22(XNOR)输出逻辑“1”,相应的与逻辑单元23输出逻辑“1”,芯片系统根据与逻辑单元23输出的逻辑“1”判定正常。
需要说明的是,充电状态或监测状态下,与逻辑单元23的第二输入端接收的使能信号EN为逻辑“1”,此时与逻辑单元23能够输出信号,否则与逻辑单元23的第二输入端接收的使能信号EN为逻辑“0”时,与逻辑单元23无法输出信号。
本实施例中,芯片内使用多个抗激光注入攻击的激光检测单元21,增加了激光检测点,实现了更大的报警点覆盖范围,达到了更好的安全效果。本发明实施例中可以根据芯片的空间灵活配置集成在其中的激光检测单元的数量和间距,相应的,可以灵活配置与非逻辑单元和与逻辑单元的数量,以及灵活配置激光检测单元、与非逻辑单元和与逻辑单元的对应关系。
例如,可以每5个激光检测单元对应配置一个与非逻辑单元,每4个与非逻辑单元对应配置一个与逻辑单元,每个与逻辑单元分别输出信号。本领域技术人员,可以根据芯片的空间灵活设计激光探测电路,在本发明中不进行具体限定。
本实施例中,衬底10上还设置有多个关键电路模块30,每个关键电路模块30与至少一个激光检测单元21相邻设置,则激光注入攻击任一关键电路模块30时,激光会照射到与关键电路模块30相邻设置的至少一个激光检测单元21上,激光检测单元21被激光照射后会输出逻辑“0”以使与非逻辑单元22(XNOR)向与逻辑单元23传输激光报警信号,实现实时监测激光注入攻击的目的,达到芯片内任一关键电路模块30被激光注入攻击时的有效探测和报警。可选该多个关键电路模块30至少包括:数据通路模块、安全算法模块和寄存器。
需要说明的是,芯片种类不同,芯片中关键电路模块可能不同。在设计芯片时,设计人员可根据安全需求统计需要保护的关键电路模块,这些关键电路模块包括数据通路算法模块、涉及安全的算法模块、存储关键数据的寄存器和涉及芯片状态的寄存器等,确定所需的关键电路模块后,设计人员可设计抗激光注入攻击的激光检测单元的数量和位置、配合使用的与非逻辑单元的数量和位置、以及与逻辑单元的数量和位置。其中,激光检测单元的数量大于或等于统计的芯片的关键电路模块的数量,配合使用的多个与非逻辑单元(XNOR)、与逻辑单元(AND)的数量可根据空间节省原则自行配置。
本实施例中,激光检测单元21的结构简单、功耗低、占用空间非常小、以及成本低,因此可以在芯片中集成数量较多的激光检测单元21,使得每个关键电路模块30与至少一个激光检测单元21相邻设置,由此可提高激光探测准确度。实际中,相关从业人员可设计在芯片中集成上百个激光检测单元21。
本实施例中,激光检测单元占用的面积较小,因此激光检测单元和芯片中关键电路模块的间距可以做到非常小,例如可以做到间距为几微米。如此,攻击者扫描芯片的表面,并不能定位得到激光探测电路的物理位置;而即使攻击者定位得到激光探测电路的物理位置,基于激光检测单元和关键电路模块的间距小,激光注入攻击关键电路模块时,激光并不能完全避开每一个激光检测单元,被激光照射的任一激光检测单元实现实时对激光注入攻击的探测。因此本实施例提供的芯片,其中集成的激光探测电路不会出现漏检测的问题,可以有效保护芯片。
需要说明的是,当芯片遭受到激光注入攻击时,激光探测电路检测到光环境异常并输出报警信号,此时芯片能够根据该报警信号确定光环境异常的位置并判断威胁程度,然后针对性的做出响应,例如复位、甚至擦除数据等。
需要说明的是,本发明实施例提供的芯片,其激光探测电路中与非逻辑单元还可替换为异或非逻辑单元,在本发明中不限定激光探测电路中逻辑单元的类型,与激光检测单元结合且能够实现激光探测电路的激光报警信号输出功能的逻辑单元均落入本发明的保护范围。
本实施例提供的芯片,衬底上设置有激光探测电路和多个关键电路模块,激光探测电路包括多个激光检测单元、至少一个与非逻辑单元和至少一个与逻辑单元,被激光照射的激光检测单元输出激光监测信号以使对应的与非逻辑单元向与逻辑单元输出激光报警信号。本实施例中,激光探测电路的结构简单,并且能够与任意一种类型的芯片的工艺兼容,工艺适应性非常强;激光检测单元的占空空间小,芯片中可集成数量较多的激光检测单元,有效提高激光探测准确度;激光注入攻击关键电路模块时,激光并不能完全避开每一个激光检测单元,避免漏检测,提高了芯片的安全性和安全级别。
示例性的,在上述技术方案的基础上,可选关键电路模块与相邻的每个激光检测单元的间距小于或等于1微米。本实施例中,芯片包括多个关键电路模块,用于进行逻辑处理和/或数据处理,图1仅示出了关键电路模块的位置,并未示出关键电路模块的具体结构,芯片中执行不同功能的关键电路模块的具体结构不同,在此不再限定。
现有激光注入位置的定位精度已经达到5微米,激光光斑约1微米,因此为了避免漏检测的问题,可选关键电路模块与相邻的每个激光检测单元的间距小于或等于1微米,由于激光检测单元的占用空间小且制造工艺简单成熟,因此关键电路模块与相邻的每个激光检测单元的间距可以做到小于或等于1微米。由此,激光注入攻击芯片时,激光注入攻击其中的关键电路模块时,激光光线均会照射到与关键电路模块相邻设置的至少一个激光检测单元上,进而激光检测单元监测到光环境异常以使与逻辑单元输出报警信号,实现实时对激光注入攻击的探测和报警,避免了漏检测,提高了激光探测准确度和监测精度。
本领域技术人员可以理解,根据激光注入定位精度、芯片尺寸不同,激光检测单元和关键电路模块的间距可进行相应调整,并不限定为1微米,例如可以选择间距小于1微米进行设计,也可以选择其他间距规格进行设计。
示例性的,在上述技术方案的基础上,参考图4所示,图4是图1沿A-A'的剖视图,可选衬底10为P型衬底。芯片中任一电路的组成器件至少包括晶体管器件(MOS),基于此,芯片采用P型衬底的优势在于:NMOS采用正电压开启,使用比PMOS便捷,NOMS的导电沟道通过电流的能力比PMOS强,响应速度比PMOS快,而在P型衬底上可以直接制造N型晶体管(NMOS),工艺简单;在P型衬底上做n+扩散的工艺比较成熟,且比在N型衬底上做p+扩散的成本低;P型衬底有较大的内阻,防止PN结导通,能够起到保护电路的作用。基于此,本实施例中可选衬底10为P型衬底。本领域技术人员也可以理解,在其他实施例中,还可选芯片的衬底为N型衬底,在本发明中不对芯片的衬底类型进行具体限定,现有任意一种芯片的衬底类型均落入本发明的保护范围。
如图2所示,可选第一充电晶体管212为PMOS。具体的,结合图2和图4所示,可选每个第一充电晶体管212为PMOS。在此以芯片的衬底10为P型衬底为例进行说明。可选第一充电晶体管212的源极与衬底10直接接触且与电源VDD电连接、以及第一充电晶体管212的漏极与监测二极管211的负极电连接。本实施例中第一充电晶体管212的漏极与监测二极管211的负极电连接并作为激光检测单元21的输出端。
本实施例中,监测二极管211包括正极P和负极N,第一充电晶体管212为PMOS,该PMOS包括源极S、漏极D和栅极G。监测二极管211的负极N接PMOS的漏极D,监测二极管211的正极P接衬底10即接地;PMOS用于给监测二极管211中PN结上的电容充电,其中PMOS的源极S和衬底10接触并接电源VDD、以及栅极G接第一时钟信号CLK,PMOS的漏极D还和与非逻辑单元22的输入端电连接。具体的,P型衬底(P-sub)上设置有监测二极管211,监测二极管211的正极P与P型衬底直接接触;P型衬底(P-sub)上还设置有一N阱(N-well),该N阱内为PMOS与N阱接触(N+),即PMOS的源极S和衬底10接触并接电源VDD。
本实施例中,当第一时钟信号为逻辑0时,PMOS导通,并为监测二极管211的PN结充电;当第一时钟信号为逻辑1时,PMOS关断,则监测二极管211进入监测状态。
本实施例中,还可选监测二极管211的PN结尺寸大于第一充电晶体管212的源极尺寸。设计中将监测二极管211的尺寸做的大于第一充电晶体管PMOS的源极尺寸,可以保证在监测状态下,监测二极管211中PN结在激光注入时快速释放PN结上电荷,以拉低与非逻辑单元22的输入端的电压以使与非逻辑单元22的输入端的电压低于门限电压值,进而使得与非逻辑单元22的输出端输出逻辑“0”,相应的与逻辑单元23输出激光报警信号。
示例性的,在上述技术方案的基础上,参考图5所示,图5是图1沿A-A'的另一种剖视图,可选衬底10为P型衬底。芯片采用P型衬底的优势如上所述,在此不再赘述。如图3所示,可选第一充电晶体管212为NMOS。具体的,结合图3和图5所示,可选每个第一充电晶体管212为NMOS。在此以芯片的衬底10为P型衬底为例进行说明。可选第一充电晶体管212的源极与衬底10直接接触且与电源VDD电连接、以及第一充电晶体管212的漏极与监测二极管211的负极电连接。本实施例中第一充电晶体管212的漏极与监测二极管211的负极电连接并作为激光检测单元21的输出端。
本实施例中,监测二极管211包括正极P和负极N,第一充电晶体管212为NMOS,该NMOS包括源极S、漏极D和栅极G。监测二极管211的负极N接NMOS的漏极D,监测二极管211的正极P接衬底10即接地;NMOS用于给监测二极管211中PN结上的电容充电,其中NMOS的源极S和衬底10接触并接电源VDD、以及栅极G接第一时钟信号CLK,NMOS的漏极D还和与非逻辑单元22的输入端电连接。具体的,P型衬底(P-sub)上设置有监测二极管211,监测二极管211的正极P与P型衬底直接接触并接地;P型衬底(P-sub)上还设置有N阱接触(N+)以形成NMOS,且NMOS的源极S和衬底10接触并接电源VDD。
本实施例中,当第一时钟信号为逻辑1时,NMOS导通,并为监测二极管211的PN结充电;当第一时钟信号为逻辑0时,NMOS关断,则监测二极管211进入监测状态。
本实施例中,还可选监测二极管211的PN结尺寸大于第一充电晶体管212的源极尺寸。设计中将监测二极管211的尺寸做的大于第一充电晶体管NMOS的源极尺寸,可以保证在监测状态下,监测二极管211中PN结在激光注入时快速释放PN结上电荷,以拉低与非逻辑单元22的输入端的电压以使与非逻辑单元22的输入端的电压低于门限电压值,进而使得与非逻辑单元22的输出端输出逻辑“0”,相应的与逻辑单元23输出激光报警信号。
示例性的,在上述技术方案的基础上,如图6所示,可选芯片中,激光检测单元21还包括:第二充电晶体管213;第二充电晶体管213的输入端与衬底10直接接触且与电源VDD电连接、以及第二充电晶体管213的栅极接收第二时钟信号,监测二极管211的负极、第一充电晶体管212的输出端、以及第二充电晶体管213的输出端电连接并作为激光检测单元21的输出端,其中,第一时钟信号控制第一充电晶体管212导通同时第二时钟信号控制第二充电晶体管213导通,以及,第一时钟信号控制第一充电晶体管212关断同时第二时钟信号控制第二充电晶体管213关断。
本发明中可选第一充电晶体管和第二充电晶体管相同,可选第一充电晶体管和第二充电晶体管均为NMOS,相应的,第二充电晶体管的连接方式和第一充电晶体管的连接方式相同,以及第二充电晶体管接收的第二时钟信号和第一时钟信号相同。设置相同的第一充电晶体管和第二充电晶体管的效果在于,能够在充电状态下,快速给监测二极管的PN结充电。在其他实施例中还可选第一充电晶体管和第二充电晶体管相同且可选第一充电晶体管和第二充电晶体管均为PMOS。
在本实施例中,可选第二充电晶体管213为NMOS以及第一充电晶体管212为PMOS;可选第二充电晶体管213的源极与衬底10直接接触且与电源VDD电连接、以及第二充电晶体管213的漏极与监测二极管211的负极电连接。相应的,第一时钟信号为CLK,以及第二时钟信号为CLK!,即第一时钟信号和第二时钟信号的输出波形相反。基于此,第一时钟信号和第二时钟信号会同时控制第一充电晶体管212和第二充电晶体管213导通,以及,第一时钟信号和第二时钟信号还会同时控制第一充电晶体管212和第二充电晶体管213关断。在其他实施例中还可选第二充电晶体管为PMOS以及第一充电晶体管为NMOS。
在充电状态下,激光探测电路的各第一充电晶体管212和第二充电晶体管213导通,则能够给监测二极管211的PN结(未示出)充电。具体过程与独立的第一充电晶体管给监测二极管211的PN结充电的过程类似,在此不再赘述。
在监测状态下,激光探测电路的各第一充电晶体管212和第二充电晶体管213关断,则监测二极管211用于监测是否有激光注入。具体过程与上述实施例中监测二极管的监测过程类似,在此不再赘述。
在图6所示激光探测电路的基础上,可选图7是图1沿A-A'的第三种剖视图,可选衬底10为P型衬底,可选第二充电晶体管213为NMOS以及第一充电晶体管212为PMOS。本实施例中,当第一时钟信号为逻辑0时,PMOS导通,并为监测二极管211的PN结充电;当第一时钟信号为逻辑1时,PMOS关断,则监测二极管211进入监测状态。本实施例中,当第二时钟信号为逻辑1时,NMOS导通,并为监测二极管211的PN结充电;当第二时钟信号为逻辑0时,NMOS关断,则监测二极管211进入监测状态。
本实施例中,还可选监测二极管211的PN结尺寸大于第一充电晶体管212的源极尺寸,和/或,监测二极管211的PN结尺寸大于第二充电晶体管213的源极尺寸。
示例性的,在上述技术方案的基础上,如图8所示,可选芯片还包括:位于衬底10上的时钟控制电路40,时钟控制电路40包括时钟源、与激光检测单元21一一对应设置的多个逐级连接的时钟分频器401、以及多路选通器402,时钟源与首级时钟分频器401的触发端电连接,每个时钟分频器401的输出端与多路选通器402的一个输入端电连接,多路选通器402的输出端与每个激光检测单元21电连接以向激光检测单元21传输时钟信号。本实施例中,相关从业人员可根据芯片种类和设计布局,自行设计时钟控制电路40所在的位置,在本发明中不进行具体限定,在此仅通过图8示出时钟控制电路的结构示意图。
已知第一时钟信号在充电状态下控制第一充电晶体管导通,以使第一充电晶体管为监测二极管的PN结充电,以及第一时钟信号在监测状态下控制第一充电晶体管关断,以使监测二极管对激光注入进入监测,被激光照射的监测二极管的PN结放电,由此可知,第一时钟信号的频率需与充电时间和放电时间对应。第一时钟信号在充电周期内需保证第一充电晶体管能够为监测二极管的PN结充满电荷,即监测二极管的PN结的电容电压为VDD;以及第一时钟信号在放电周期内需保证,监测二极管的PN结正常的漏电流不会漏电至PN结电压过低引发误报警。因此采用时钟控制电路可确保得到合理的第一时钟信号周期。
时钟控制电路40的工作原理是:时钟源经过多个(n个)时钟分频器401生成频率不同的多个时钟信号CLK1~CLKn,多个时钟信号CLK1~CLKn经过多路选通器402输出用于激光检测单元21的时钟信号CLK或CLK!。需要说明的是,芯片的系统可以通过配置,灵活选择合适的时钟信号,以满足监测二极管的PN结充电的要求和避免PN结的漏电流漏电所致的PN结电压过低引发误报警的要求,因此通过配置时钟的方式可以大大增加激光检测单元的工艺适应性,使得激光检测单元的设计适用于不同的芯片工艺。
需要说明的是,本领域技术人员可以理解多路选通器和时钟分频器的结构、连接方式和工作原理,在本发明中不进行具体限制,现有的任意一种能够应用于芯片的时钟控制电路的结构均落入本发明的保护范围。
若激光探测电路中仅包括第一充电晶体管,则时钟控制电路输出第一时钟信号至第一充电晶体管。若激光探测电路中还包括第二充电晶体管,则时钟控制电路输出第一时钟信号至第一充电晶体管,以及还输出与第一时钟信号的输出波形相反的第二时钟信号至第二充电晶体管。
本发明实施例还提供一种芯片的检测方法,该芯片为如上任意实施例所述的芯片,该芯片包括:衬底;位于衬底上的至少一个激光探测电路,激光探测电路包括多个激光检测单元,激光检测单元包括一个监测二极管和一个第一充电晶体管,监测二极管的正极通过衬底接地,第一充电晶体管的输入端与衬底直接接触且与电源电连接、以及第一充电晶体管的栅极接收第一时钟信号,监测二极管的负极和第一充电晶体管的输出端电连接并作为激光检测单元的输出端,激光探测电路还包括至少一个与非逻辑单元和至少一个与逻辑单元信号,与非逻辑单元包括至少一个输入端、以及与非逻辑单元的每个输入端与一个激光检测单元的输出端电连接,与逻辑单元的第一输入端与至少一个与非逻辑单元的输出端电连接、以及与逻辑单元的第二输入端接收使能信号,被激光照射的激光检测单元输出激光监测信号以使对应的与非逻辑单元向与逻辑单元输出激光报警信号;以及,位于衬底上的多个关键电路模块,其中,每个关键电路模块与至少一个激光检测单元相邻设置。
如图9所示,该芯片的检测方法包括:
步骤110、输出第一使能信号以控制与逻辑单元关闭,同时控制第一充电晶体管保持关断,则激光探测电路处于休眠状态。
步骤120、输出第二使能信号以控制与逻辑单元导通,同时控制第一充电晶体管导通,则激光探测电路处于充电状态。
步骤130、输出第二使能信号以控制与逻辑单元导通,同时控制第一充电晶体管关断,则激光探测电路处于监测状态。
可选芯片中,多个关键电路模块至少包括:数据通路模块、安全算法模块和寄存器。可选芯片中,关键电路模块与相邻的每个激光检测单元的间距小于或等于1微米。可选芯片中,衬底为P型衬底。可选芯片中,至少一个第一充电晶体管为PMOS。可选芯片中,至少一个第一充电晶体管为NMOS。可选芯片中,第一充电晶体管的源极与衬底直接接触且与电源电连接、以及第一充电晶体管的漏极与监测二极管的负极电连接。可选芯片中,监测二极管的PN结尺寸大于第一充电晶体管的源极尺寸。
可选芯片中,激光检测单元还包括:第二充电晶体管;第二充电晶体管的输入端与衬底直接接触且与电源电连接、以及第二充电晶体管的栅极接收第二时钟信号,监测二极管的负极、第一充电晶体管的输出端、以及第二充电晶体管的输出端电连接并作为激光检测单元的输出端,其中,第一时钟信号控制第一充电晶体管导通同时第二时钟信号控制第二充电晶体管导通,以及,第一时钟信号控制第一充电晶体管关断同时第二时钟信号控制第二充电晶体管关断。可选芯片中,第二充电晶体管为NMOS以及第一充电晶体管为PMOS,或者,第二充电晶体管为PMOS以及第一充电晶体管为NMOS。可选芯片中,第二充电晶体管的源极与衬底直接接触且与电源电连接、以及第二充电晶体管的漏极与监测二极管的负极电连接。可选芯片中,监测二极管的PN结尺寸大于第二充电晶体管的源极尺寸。
可选芯片还包括:位于衬底上的时钟控制电路,时钟控制电路包括时钟源、与激光检测单元一一对应设置的多个逐级连接的时钟分频器、以及多路选通器,时钟源与首级时钟分频器的触发端电连接,每个时钟分频器的输出端与多路选通器的一个输入端电连接,多路选通器的输出端与每个激光检测单元电连接以向激光检测单元传输时钟信号。
本实施例中,该芯片的激光探测电路包括3个工作状态:休眠状态、充电状态和监测状态。
以各第一充电晶体管为PMOS为例,当第一时钟信号为固定逻辑1时,激光探测电路为休眠状态;当第一时钟信号为逻辑0时,激光探测电路为充电状态;当第一时钟信号为逻辑1时,激光探测电路为监测状态。
休眠状态时,关键电路模块未被选中即不工作时,与逻辑单元的第二输入端接收的使能信号EN=0,该EN=0即为第一使能信号,则与逻辑单元(AND)输出固定逻辑0,第一时钟信号CLK为固定电平即逻辑1,此时激光探测电路没有时钟信号通过,相应的第一充电晶体管截止,监测二极管不工作,激光探测电路输出固定电平;
充电状态时,关键电路模块工作即启用关键寄存器时,与逻辑单元的第二输入端接收的使能信号EN=1,该EN=1即为第二使能信号,则与逻辑单元准备输出;第一时钟信号CLK为逻辑0和逻辑1交错的信号,当第一时钟信号为逻辑0时,第一充电晶体管饱和导通并为监测二极管的PN结充电,由于充电电流大于监测二极管的PN结反向漏电流,因此监测二极管的PN结电容的电荷增加直至电源电压VDD。每个监测二极管的PN结充电完成后,则激光监测单元输出为逻辑1,相应的与非逻辑单元输出逻辑1,与逻辑单元输出逻辑1。即激光探测电路处于充电状态时,不产生报警信号。
监测状态时,关键电路模块工作即启用关键寄存器,与逻辑单元的第二输入端接收的使能信号EN=1,则与逻辑单元准备输出;第一时钟信号CLK为逻辑0和逻辑1交错的信号,当第一时钟信号为逻辑1时,第一充电晶体管关断,则监测二极管进入激光检测状态。如果每个监测二极管均没有检测到激光,则激光探测电路输出逻辑1。
如果有激光照射到至少一个监测二极管上,由于内光电效应,监测二极管产生光漏电流,监测二极管中PN结电容内存储的电荷迅速通过衬底流向大地,监测二极管中PN结电容器的电压迅速下降,其中,监测二极管的光漏电流远大于第一充电晶体管的PN结反向漏电流;监测二极管中PN结电容内存储的电荷迅速流失也使得与非逻辑单元的输入端的电压迅速下降,当与非逻辑单元的输入端的电压低于与非逻辑单元的门限电压值时,与非逻辑单元判断至少一个输入端的电平发生变化,此时与非逻辑单元输出逻辑0,因此与逻辑单元输出逻辑0即产生并输出激光报警信号。芯片的系统采集并锁存该激光报警信号,并根据安全设计要求可选择单次报警响应或多次报警响应等不同的方案。
本发明实施例还提出了一种芯片的激光探测电路的设计方案。通过使用该设计方案可以在芯片中集成激光探测电路,实现对每一个关键电路模块尤其是关键寄存器的抗激光注入保护,并且与现有自动化版图设计流程兼容、使用简单,达到实时监测激光注入攻击的目的,达到解决芯片数字逻辑区域被激光注入攻击时的有效探测问题。
本发明实施例提供的设计方案不依赖于EDA设计工具,可在任何自动布局布线工具中实现,设计流程如下:
第一步,在设计芯片数字逻辑部分时,根据安全需求统计需要抗激光注入攻击的激光检测单元保护的关键电路模块,并列出关键电路模块的名单。通常这些关键电路模块为数据通路、涉及安全的算法模块,存储关键数据的寄存器和涉及芯片状态的寄存器。根据关键电路模块名单,在逻辑网表中加入足够数量的抗激光注入攻击的激光检测单元、以及配合使用的多个与非逻辑单元和与逻辑单元。激光检测单元的数量大于或等于名单中的关键电路模块的数量,配合使用的多个与非逻辑单元和与逻辑单元的数量根据空间节省原则自行配置。
第二步,建立特殊单元组(Group)并命名。每一个特殊单元组由一个关键电路模块和保护该关键电路模块的至少一个激光检测单元组成,在使用布局布线工具的单元摆放(Place)阶段,将会以特殊单元组为单位进行摆放。例如有100个关键寄存器,那么在使用布局布线工具的设计流程里,命名特殊单元组为AGxxx(xxx为数字)并建立100个特殊单元组(AG001~AG100)。
第三步,设置特殊单元组(Group)的摆放规则。使用布局布线工具建立AG摆放规则(AG rule),规则定义同一个组内的单元相邻距离最小,即关键电路模块和同组的一个或多个激光检测单元在摆放时间距为0。不同的布局布线工具对于设立摆放(Place)规则的实现定义并不相同,不影响本发明的实现。
第四步,布局布线工具根据特殊单元组(Group)摆放规则(AG rule)进行自动摆放(Auto Place)。布局布线工具根据第三步的AG rule完成数字逻辑部分的自动摆放,完成后特殊单元组(AG001~AG100)所定义的每一个关键寄存器周围至少会存在一个激光检测单元(LD)。由于不同自动布局布线工具的摆放(Place)优化策略不同,关键寄存器与激光检测单元的相对空间关系是随机的,它们的相对位置(上下左右)关系不影响激光注入攻击检测功能的实现。当一个关键寄存器周围有更多的激光检测单元时,会有更好的保护效果。
本发明实施例提供的芯片,激光检测单元和关键电路模块在物理上紧密相邻,即使黑客从芯片外部定位到关键电路模块的位置,在进行激光注入操作时也无法避免被激光检测单元捕获激光注入行为,进而直接产生应激响应,中断操作、报警甚至擦除关键数据区,解决了现有激光探测器与关键逻辑单元之间空间距离大引发的漏检测问题。
本发明实施例提供的芯片,激光探测电路的结构简单,可以简单集成到任何数字逻辑区域,数字逻辑区域可设置多个激光探测电路,一个激光探测电路中包含多组或多个激光检测单元。具体的,本实施例的芯片内设计的激光检测单元的数量可达到上百个,并且激光探测电路的结构可与多种工艺兼容。解决了现有激光探测器的数量限制、激光检测单元数量不足的问题。
本发明实施例提供的芯片,还给出了一种容易实现的自动化单元摆放(Place)设计流程,可以实现关键电路模块的临近区域内存在激光检测单元,而且激光检测单元的位置随机、定位难度大,增加了芯片产品的安全性。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整、相互结合和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。