电子电路的制作方法

文档序号:18508104发布日期:2019-08-23 23:41阅读:188来源:国知局
电子电路的制作方法

本实用新型总体上涉及电子电路,并且在具体实施例中涉及用于随机修改逻辑电路的消耗分布的设备。



背景技术:

图1图示了被连接在电源端子BV和参考端子BR之间的反相器类型的逻辑电路CL,电源端子BV旨在接收电源电压Vdd,参考端子旨在接收参考电压(这里例如为接地)。逻辑电路CL通常包括输入端子BE和输出端子BS。

这里,输出端子BS可以被连接到集成电路CI的另一部件(未示出)的输入(例如,被连接到另一反相器)。例如由于另一反相器的晶体管的栅极电容,该连接可以生成寄生电容。

在图1中,该寄生电容由寄生电容器Cp来表示。

逻辑电路CL通常包括NMOS晶体管TRN,NMOS晶体管TRN在电源端子BV和参考端子BR之间与PMOS晶体管TRP串联连接。逻辑电路的输入端子BE被耦合到两个晶体管的栅极,并且输出端子BS被耦合到两个晶体管共用的节点,这里,该节点对于PMOS晶体管TRP的漏极和NMOS晶体管TRN的漏极是共用的。

因此,在输入端子BE上存在的信号从高态到低态的转换期间,PMOS晶体管TRP接通,并且NMOS晶体管TRN关断。然后,电容器Cp凭借流过PMOS晶体管TRP的电流Ic1来充电。由于电容器的充电时间非常短,因此该电流可以被比作充电电流峰值Ic1。

此外,同时开关两个晶体管会在非常短的时间段内在电源端子BV和参考端子BR之间产生短路。该时间段的长度随着开关时间而下降。因此,在每次开关时,短路电流峰值Ic2在电源端子BV和参考端子BR之间流过两个晶体管TRP和TRN。

在由输出端子BS递送的信号从低态到高态的转换期间所生成的电流峰值可以具有不同于在从高态到低态的转换期间所生成的电流峰值的值。

在输出端子BS上存在的信号从低态到高态的转换期间,逻辑电路CL消耗比在从高态到低态的转换期间其消耗的电流更大的电流,因为在第一种情况下,所消耗的电流是寄生电容器Cp的充电电流Ic1和短路电流Ic2之和,并且在第二种情况下,所消耗的电流仅对应于短路电流Ic2。

因此,通过分析包括逻辑门的集成电路的电流消耗,例如使用与电源端子齐平放置的电磁探针和专用算法,可以获得关于所执行的操作与关于所操纵的数据和/或关于它们的出现的信息。

此外,在输出端子BS上存在的信号从高态到低态的转换期间,寄生电容器Cp的放电生成流过集成电路的内部的附加的电流。

应当注意,该附加的电流不能从电源端子BV观察到,但是然而可以例如通过分析集成电路的整体电磁发射来检测。

因此,尽可能掩蔽集成电路的电流消耗是有利的。

确实存在用于掩蔽集成电路的电流消耗的解决方案,诸如例如双轨技术,其通过生成与电路的逻辑电路的实际电流消耗互补的电流来平滑集成电路的电流消耗。

这样一来,该解决方案是有约束的,因为它还暗示了掩蔽其消耗不需要掩蔽的逻辑门的电流消耗。此外,该技术在基板面方面是昂贵的,因为其需要集成电路的逻辑门的数量加倍。

确实存在允许逻辑电路的电流消耗被掩蔽而不掩蔽其它部件的电流消耗的解决方案,然而现有的解决方案很复杂并且需要使用很多部件。



技术实现要素:

一个或多个实施例涉及集成电路,并且尤其但不排他地涉及包括逻辑电路的集成电路。

一个或多个实施例涉及在操作期间例如对集成电路的电流消耗的管理。特别地,一些实施例涉及掩蔽集成电路的电流消耗。

根据一个实施例,提出了利用简单电路和方法来掩蔽包含在集成电路中的逻辑电路的电流消耗,该简单电路和方法允许将电流消耗的掩蔽聚焦在逻辑电路上。

根据一个方面,一种电子电路包括电源端子和参考端子,该参考端子包括至少一个模块,该至少一个模块包括至少一个逻辑电路和至少一个辅助电路,该至少一个逻辑电路被连接在电源端子和参考端子之间并且包括输出端子,该至少一个辅助电路被连接在电源端子和参考端子之间并且被连接到输出端子,至少一个辅助电路被配置为执行从由以下所形成的组中所选择的至少一个动作:

衰减在电源端子和参考端子之间流动的电流;

增加在电源端子和参考端子之间流动的电流;

在没有通过电源端子的路径上形成流过逻辑电路的附加的电流;或者

不执行动作,根据随机标记来进行关于是否执行动作的选择以及来自组的至少一个动作的可能选择。

因此,辅助电路有利地允许产生消耗分布,其对于给定的执行逻辑操作允许修改集成电路的电流消耗,从而掩蔽逻辑电路的实际电流消耗,使得攻击者难以分析该消耗,以研究集成电路的行为。

随机标准可以在输出端子上的信号的转换的节奏下(例如同步地)进行修改,或者独立于在输出端子上的信号的转换的发生的节奏来进行修改。

根据一个实施例,辅助电路包括连接在电源端子和输出端子之间的至少一个第一电容器以及连接在输出端子和参考端子之间的至少一个电容器,至少一个第一电容器经由第一开关被连接到电源端子,第二电容器经由第二开关被连接到参考端子,并且两个电容器经由第三开关被连接到输出端子,三个开关彼此独立地由随机信号生成器控制,随机信号一起形成随机标准。

因此,每个随机标准对应于开关的一个组合,因此对应于一个电流消耗分布。

使用可经由开关激活的电容器有利地允许使用简单的并且易于通过传统制造工艺生产的电路来获得有效掩蔽电流消耗的辅助电路。

辅助电路可以包括多个第一电容器,多个第一电容器在电源端子和输出端子之间并联连接,每个第一电容器经由受随机信号生成器独立控制的单独的开关而被耦合到输出端子。

辅助电路可以包括多个第二电容器,多个第二电容器在电源端子和输出端子之间并联连接,每个第二电容器经由受随机信号生成器独立控制的单独的开关而被连接到输出端子。

通过增加可激活电容器的数量,辅助电路的可能的消耗分布的数量增加,因此有利地增加电流消耗的随机性质。

模块可以被配置为执行一系列计算操作,随机信号生成器被配置为响应于控制信号来递送随机信号,并且辅助电路包括控制电路,控制电路适于在每次新的计算操作时修改控制信号。

这允许定期地修改电流消耗分布,而不过于频繁地修改消耗分布。在一些实施例中,过于频繁地修改电流消耗在计算功率方面的昂贵的。

模块可以被配置为执行计算操作,随机信号生成器被配置为响应于控制信号来递送随机信号,并且辅助电路可以包括控制电路,控制电路适于在独立于计算操作的节奏下修改控制信号。

因此,可以使消耗分布的改变独立于由模块所执行的操作的节奏,并且例如增加分布改变的频率,从而有利地增加电流消耗的随机性质。

根据一个实施例,模块包括多个逻辑电路,每个逻辑电路与一个辅助电路相关联,每个辅助电路的开关由随机信号生成器以相同的方式来控制。

根据一个实施例,模块包括多个逻辑电路,每个逻辑电路与加速器电路相关联,每个辅助电路的开关由随机信号生成器独立地控制。

根据一个方面,提供了包括诸如上述的集成电路的系统,系统可能形成芯片卡(例如,智能卡)或者一件信息技术装置。

根据一个方面,提供了一种电子电路。该电子电路包括:电源端子;参考端子;逻辑电路,所述逻辑电路被耦合到所述电源端子和所述参考端子,所述逻辑电路具有输出端子;以及辅助电路,所述辅助电路包括:第一开关,被耦合到所述电源端子;第二开关,被耦合到所述参考端子;第三开关,被耦合到所述逻辑电路的所述输出端子;第一电容器,被耦合在所述第三开关和所述第一开关之间;第二电容器,被耦合在所述第三开关和所述第二开关之间;以及随机信号生成器,被耦合到所述第一开关、所述第二开关和所述第三开关,并且被配置为通过产生随机信号来控制所述第一开关、所述第二开关和所述第三开关。

附图说明

通过检查本实用新型的完全非限制性实现和实施例的详细描述以及附图,本实用新型的其它优点和特征将变得明显,其中:

图1如上所述图示了现有技术;以及

图2至图9图示了本实用新型的实现和实施例。

具体实施方式

图2从电气角度示意性地图示了集成电路CI,集成电路CI包含模块M,模块M包含逻辑电路CL,逻辑电路CL包括输入端子BE和输出端子BS,并且被连接到辅助电路Cx。

逻辑电路CL和辅助电路Cx都被连接在电源端子BV和参考端子BR之间,电源端子BV被配置为接收例如由电源模块(未示出)所递送的电源电压Vdd,参考端子BR被配置为接收参考电压(这里为接地)。

逻辑电路CL包括PMOS晶体管TRP和NMOS晶体管TRN,PMOS晶体管TRP和NMOS晶体管TRN被串联安装在电源端子BV和参考端子BR之间。可以使用其它逻辑电路。

反相器包括输入端子BE和输出端子BS,输入端子BE被连接到PMOS晶体管TRP的栅极和NMOS晶体管TRN的栅极,输出端子BS被连接在NMOS晶体管TRN和PMOS晶体管TRP之间,并被连接到另一逻辑电路,其连接生成第一寄生电容Cp1。

输出端子BS可以被连接到集成电路CI的另一部件(未示出)的输入(例如,被连接到另一反相器)。特别地由于另一反相器的栅极电容,该连接可以生成寄生电容。

在图2中,这些寄生电容由第一寄生电容Cp1来表示。

应当注意,尽管为了简单起见,图2中已经描述了形成反相器的逻辑电路,但是逻辑电路CL可以是任何类型的逻辑电路或者任何逻辑电路组件,其输出端子BS适于递送能够取至少两个态的输出信号,低态对应于输出端子BS到参考端子BR的连接,高态对应于输出端子BS到电源端子BV的连接。

辅助电路包括第一电容器C1和第二电容器C2,第一电容器C1被连接在电源端子BV和输出端子BS之间,第二电容器C2被连接在输出端子BS和参考端子BR之间。第一电容器C1和第二电容器C2具有不同的电容。在一些实施例中,C1和C2具有相同的电容。

第一电容器C1经由第一开关IN1被连接到电源端子,第二电容器C2经由第二开关IN2被连接到参考端子BR,并且两个电容器C1和C2经由第三开关IN3被连接到输出端子BS。

在一些实施例中,开关例如是MOS晶体管,其接通态对应于开关的闭合位置,并且其关断态对应于开关的断开态。

辅助电路Cx包括随机信号生成器RDM,这里包括三个输出,这三个输出被配置为递送第一信号S1、第二信号S2和第三信号S3,分别允许第一开关IN1、第二开关IN2和第三开关IN3被控制。

三个信号S1、S2和S3可以取两个态,这两个态对应于断开和闭合开关的命令。

响应于由控制装置CMD递送到生成器RDM的控制信号SC,信号S1、S2和S3由随机信号生成器RDM以随机态来递送。

随机信号的这些态的每个组合形成随机标准。

在操作中,当模块M执行一系列计算操作(例如,密码操作)时,控制电路CMD在每次新的计算操作时传输控制信号SC。

因此,生成器RDM递送随机标准(例如,处于随机态的三个信号),并且在每次密码操作的持续时间期间保持该随机标准不改变。

在密码操作期间,逻辑电路CL的输出可以多次改变状态。

辅助电路具有八种配置,这八种配置对应于开关的八种可能的组合,从而对应于八个随机标准。

每种配置对应于模块M的一种电流消耗分布,例如针对由逻辑电路CL所执行的给定的操作,电流消耗可以因配置的不同而不同。

在第一配置、第二配置和第三配置中,第三开关IN3是断开的,并且另两个开关IN1和IN2中的至少一个开关是断开的。

在这三个第一配置中,辅助电路Cx对逻辑门的电流消耗没有影响。因此集成电路CI就像不存在辅助电路那样来操作。

在第四配置中,第三开关IN3是断开的,并且第一开关IN1和第二开关IN2是闭合的。

在该第四配置中,第一电容器C1和第二电容器C2在电源端子BV和参考端子BR之间串联连接。因此,第一电容器C1和第二电容器C2表现为去耦电容器。

因此,在逻辑电路CL的输出端子BS上的信号的状态的转换期间,短路电流峰值以及可能的第一寄生电容器Cp1的充电电流峰值不仅仅归因于被连接到电源端子BV的电源模块,而是部分归因于电容器C1和C2。

因此,第四配置允许在电源端子BV处所观察到的电流消耗被衰减。

在第五配置中,第三开关IN3是闭合的,并且第一开关IN1和第二开关IN2是断开的。

在该第五配置中,第一电容器C1和第二电容器C2都具有浮动电极,因此对辅助电路Cx的操作没有影响。

这样一来,输出端子和两个晶体管之间的连接与闭合的第三开关IN3生成寄生电容,该连接包括金属轨道,闭合的第三开关IN3通常包括处于接通态的晶体管。

这些寄生电容可以由连接在输出端子和参考端子之间的第二寄生电容器Cp2来表示,如图3所示。

因此,在输出端子BS上的信号从高态到低态的转换期间,生成用于对第二寄生电容器Cp2充电的第二充电电流。

在输入端子BE上的信号从低态到高态的转换期间,第二寄生电容器Cp2通过NMOS晶体管TRN的放电生成流过集成电路的内部的附加电流。

应当注意,该电流不能从电源端子BV观察到,但是可以通过在操作中采用对模块M的电磁发射的分析的攻击来检测。

因此,第五配置允许在逻辑门从高态到低态的转换的情况下增加从电源端子观察到的电流消耗,并且在从高态到低态的转换的情况下增加流过模块内部的电流。

第二寄生电容器Cp2存在于其中第三开关IN3是闭合的所有配置中,例如上面研究的第五配置,以及下面描述的第六配置、第七配置和第八配置。在一些实施例中,考虑到由第一电容器C1和第二电容器C2所产生的影响,第二寄生电容器Cp2通常可以忽略不计。

在第六配置中,第三开关IN3是闭合的,第一开关IN1是断开的,并且第二开关IN2是闭合的。

在该第六配置中,第二电容器C2表现为与第一寄生电容器Cp1相同的方式。

因此,在输出端子BS上的信号的状态从低态到高态的改变期间,输出端子BS被连接到电源端子BV,并且第二电容器C2在这里通过PMOS晶体管TRP来充电。因此,生成了附加的充电电流。

在输出端子上的信号的状态从高态到低态的改变期间,第二电容器C2在这里通过NMOS晶体管TRN来放电到接地,并且生成放电电流,该放电电流在集成电路内部,因此不能从电源端子观察到。

由于第二电容器C2在这里不是实际的寄生电容器,因此其电容以及因此其生成的电流大于第一寄生电容器Cp1和第二寄生电容器Cp2的电容及其生成的电流。

因此,第六配置除了产生上述第五配置的影响之外,还允许在输出端子上的信号从低态到高态的转换期间增加由集成电路所消耗的电流,以及在输出端子上的信号从高态到低态的转换期间生成内部电流。

在第七配置中,第一开关IN1和第三开关IN3是闭合的,并且第二开关IN2是断开的。

在该第七配置中,第一电容器C1被连接在电源端子BV和输出端子BS之间,并且第二电容器C2被断开连接。

在输出端子BS上的信号从低态到高态的转换期间,第一电容C1的两个电极连接到电源端子BV。在该情况中,第一电容C1对集成电路CI的电流消耗没有影响,并且仅产生上述的第二寄生电容器Cp2的影响。

在输出端子BS上的信号从高态到低态的转换期间,第一电容C1通过MOS晶体管TRN放电到接地。

因此,电流在集成电路CI内流动,在其内部流动,因此是以从电源端子BV无法观察的方式流动。向该电流添加由第二寄生电容器Cp2的放电所产生的电流。

在第八配置中,开关IN1、IN2和IN3是闭合的。

因此,在该情况下,辅助电路Cx产生第四配置到第七配置的影响。

因此,由于信号S1、S2和S3是随机递送的,因此辅助电路Cx随机地处在其配置中的一个配置或另一配置中。

在逻辑电路CL的输出端子BS上的信号的每次改变时可观察到的电流消耗随机地变化。

从一个随机选择的配置到另一随机选择的配置的过渡,即响应于控制信号SC随机生成新标准,可以在由模块M执行的每个新操作上发生,或者可以独立于由模块M执行的操作在由时钟信号定义的节奏下定期发生。在一些实施例中,从一个随机选择的配置到另一随机选择的配置的过渡可以随机地发生。

为了进一步提升模块M的电流消耗的随机行为,如图4所示,辅助电路Cx可以包括多个第一电容器和多个第二电容器。在一些实施例中,多个第一电容器和第二电容器中的每个电容器具有相同的电容。在其它实施例中,多个第一电容器和第二电容器中的一些或所有电容器具有不同的电容。

如图4所示,辅助电路Cx包括三个第一电容器C10、C11和C12,其在电源端子BV和输出端子BS之间并联连接,并且经由三个第一开关IN10、IN11、IN12耦合到电源端子BV。

辅助电路Cx包括三个第二电容器C20、C21和C22,其在输出端子BS和参考端子BR之间并联连接,并且经由三个第二开关IN20、IN21、IN22耦合到参考端子BR。

每个电容器具有不同的电容,但是电容器可以全部具有相同的电容,或者只有其中某些电容器具有相同的电容。

开关IN10、IN11、IN12、IN20、IN21、IN22和IN3被配置为彼此独立地由随机信号生成器RDM可控。

因此,随机信号生成器RDM包括七个输出,这七个输出被配置为将七个信号S10、S11、S12、S20、S21、S22、S3分别递送到开关IN10、IN11、IN12、IN20、IN21、IN22和IN3。

七个信号可以随机地取对应于相关联的开关的闭合态和断开态的两个状态。

因此,辅助电路Cx允许实现128个开关组合(即,128个消耗分布),从而进一步提升模块M的消耗的随机性质。

如图5和图6所示,辅助电路Cx还可以包括不同数量的第一电容器和第二电容器。

因此,在图5中,辅助电路Cx包括单个第一电容器C1和三个第二电容器C20、C21、C22。

在图6中,辅助电路Cx包括单个第二电容器C2和三个第一电容器C10、C11、C12。

这有利地允许简化集成电路的设计,特别是随机信号生成器RDM,因为辅助电路Cx操作所需的输出数量受到限制。

图7图示了包括模块M的集成电路CI的俯视图,模块M被配置为执行密码操作。

这里,模块M包括串联连接的多个逻辑电路CL,每个逻辑电路CL与根据上面参照图2至图6所描述的实施例中的任何一个实施例的辅助电路相关联。

如图7中所示,逻辑电路CL中的每个逻辑电路(可以彼此相同或者不同)与辅助电路相关联,其中每个辅助电路彼此相同。每个辅助电路以相同的方式由相同的随机信号生成器RDM控制。因此,模块M的所有辅助电路取决于相同的随机标准,因此处于相同的配置。

然而,逻辑电路CL可以与不同的辅助电路相关联,和/或取决于不同随机标准独立于另一辅助电路而被控制,例如给定的随机信号生成器RDM递送多个随机标准,或者每个标准由单独的随机信号生成器递送。

集成电路CI可以被集成到任何类型的电子系统(例如,如图8中所示的芯片卡CP)或者如图9中所示的膝上型计算机SI的一件信息技术装置。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1