功耗平坦化标准集成电路的制作方法

文档序号:16847306发布日期:2019-02-12 22:25阅读:115来源:国知局
功耗平坦化标准集成电路的制作方法

本发明涉及信息安全领域、抗功耗攻击领域。具体讲,涉及功耗平坦化标准集成电路单元。



背景技术:

当今社会,以智能卡(smartcard)、usb钥匙(usbkey)等为代表的密码设备正广泛应用于电信、金融、付费电视等重要领域,成为这些应用的关键组件,因此,它们的安全至关重要。尽管密码设备的嵌入性使得攻击者无法直接获取密码芯片中的密钥信息,但由于大多数密码芯片都是由cmos电路构成的,在这一类电路中,电路在工作时会泄露一定的功耗,电磁等侧信道信息,攻击者利用差分功耗分析(differentialpoweranalysis,dpa)技术分析密钥数据与功耗信息之间的相关性,并通过数理统计的方式分析即可获得密钥。

抵抗dpa攻击的基本思想是消除密码芯片工作时电流与内部数据之间的相关性。其中,由于电路级防护更加关注实现密码芯片的底层电路结构而非密码算法本身,因而更加通用。电路级防护通常通过设计新型逻辑单元来实现,其主要设计思想为双轨预充电逻辑和三阶段工作模式。利用双轨预充电逻辑实现的单元主要包括敏感放大器逻辑(senseamplifierbasedlogic,sabl),行波动态差分逻辑(wavedynamicdifferentiallogic,wddl),基于延时的双轨预充电逻辑ddpl(delay-baseddual-railpre-chargelogic)和基于查找表的差分逻辑lbdl(lutbaseddifferentiallogic);利用三阶段工作模式实现的逻辑单元有三阶段双轨预充电逻辑tdpl(three-phasedual-railpre-chargelogic)和三阶段单轨预充电逻辑tspl(three-phasesingle-railpre-chargelogic)。其中tdpl采用预充电,求值,放电三阶段工作模式,避免了输出负载不匹配对单元防护性能的影响,使得逻辑单元在每一个求值周期内的功耗与输入信号没有相关性,从而有着优秀的抵抗dpa攻击的能力。然而由于采用了复杂的三相时钟,增大了对时钟信号的要求和布局布线的难度,攻击者也可以针对单元的放电信号进行攻击从而使tdpl单元有着防护失效的风险。

参考文献

1.buccim,giancanel,luzzir,etal.three-phasedual-railpre-chargelogic[c]//internationalconferenceoncryptographichardwareandembeddedsystems.springer-verlag,2006:232-241.

2.akkayanec,erbagcib,carleyr,etal.adpa-resistantself-timedthree-phasedual-railpre-chargelogicfamily[c]//ieeeinternationalsymposiumonhardwareorientedsecurityandtrust.ieee,2015:112-117.

3.hassounei,macef,flandred,etal.dynamicdifferentialself-timedlogicfamiliesforrobustandlow-powersecurityics[j].integrationthevlsijournal,2007,40(3):355-364.

4.menendeze,maik.extendedabstract:ahigh-performance,low-overhead,power-analysis-resistant,single-raillogicstyle[c]//ieeeinternationalworkshoponhardware-orientedsecurityandtrust.ieee,2008:33-36。



技术实现要素:

为克服现有技术的不足,本发明旨在提出一种适用于安全芯片的新型标准单元,该种逻辑单元可以使得单元的功耗是均衡的并且独立于内部信号活动,利用该种逻辑单元实现的安全电路在电源上不会有内部信息的泄露,使得攻击者不能通过dpa攻击获取密钥。同时由于使用了自定时的放电方法,减小放电信号被攻击的风险,提高单元的防护性能。为此,本发明采取的技术方案是,功耗平坦化标准集成电路,由依次串接的逻辑单元构成,所述逻辑单元的基本结构为双轨动态逻辑,其中a,b,是所述逻辑的输入信号,clk和是所述逻辑单元的时钟控制信号,xor是所述逻辑单元的输出信号,表示信号a和b异或运算的输出结果,xnor也是该单元的输出信号,表示信号a和b异或非运算的输出结果,done信号是单元运算完成的标志信号,dch信号是放电信号,由下一级单元的done信号提供。

所述逻辑单元包括pmos晶体管p1,pmos晶体管p2,pmos晶体管p3,pmos晶体管p4,pmos晶体管p5,pmos晶体管p6,pmos晶体管p7,nmos晶体管n1,nmos晶体管n2,nmos晶体管n3,nmos晶体管n4,nmos晶体管n5,nmos晶体管n6,nmos晶体管n7,nmos晶体管n8,nmos晶体管n9,nmos晶体管n10,nmos晶体管n11,nmos晶体管n12和反相器i1,反相器i2;pmos晶体管p1的源极接电源,栅极接输入信号dch,漏极和pmos晶体管管p2,p3的源极相连;x节点与pmos晶体管p2的漏极,p3的栅极,p4的漏极,p6的栅极,nmos晶体管n2的漏极,n5的漏极,n8的漏极以及反相器i1的输入端公共连接;y节点与pmos晶体管p3的漏极,p2的栅极,p5的栅极,p7的栅极,nmos晶体管n1的漏极,n4的漏极,n10的漏极以及反相器i2的输入端公共连接;pmos晶体管p4,p5的源极接电源,栅极接输入信号clk;pmos晶体管p6,p7的源极接电源,漏极接输出信号done;nmos晶体管n1栅极接输入信号a,源极与n2源极以及n3源极公共连接;nmos晶体管n2栅极与n4栅极接输入信号nmos晶体管n4源极与n5源极以及n6漏极公共相连;nmos晶体管n5栅极接输入信号a;nmos晶体管n3栅极接输入信号b,源极与n7漏极公共连接;nmos晶体管n6栅极接输入信号源极与n7漏极公共连接;nmos晶体管n7栅极接输入信号clk,源极接地;nmos晶体管n8栅极接输入信号dch,源极接n9漏极;nmos晶体管n9栅极接输入信号clk,源极接地;nmos晶体管n10栅极接输入信号dch,源极接n11漏极;nmos晶体管n11栅极接输入信号clk,源极接地;nmos晶体管n12漏极接输出信号done,栅极接输入信号源极接地。

所述单元的工作模式分为预充电,求值和放电三个工作阶段,具体地,当时钟为低电平时,单元处在预充电阶段,此时pmos管p4和p5导通,使得节点x,y被预充电到高电位,同时信号经过两个反向器传输到输出端,使得此时单元输出信号xor和xnor均为低电位;nmos管n12导通,使得标志信号done被拉低到低电位;由于dch信号为下一级单元的done信号,所以在预充电阶段dch信号为低电位,使得p1管导通;nmos管n7关断,使得单元的下拉网络关断,不会由于双轨互补信号的输入使得内部节点放电;nmos管n9,n11关断,使得节点x,y保持高电位而不会被拉低。

当时钟为高电平时,单元进入求值阶段,此时pmos管p4,p5关断,使得节点x,y与电源断开,不会被拉升到高电位;单元的下拉网络根据双轨互补信号a和b与的输入控制nmos管n1,n2,n3,n4,n5,n6管的通断,使得其中一条下拉通道导通,节点x和节点y中一个电位被拉低,并通过反相器传输到输出端。

当x和y其中一个节点被拉低到低电位时,此时pmos管p6,p7中的其中一个导通,标志信号done被拉升到高电位,标志着求值阶段的完成,进入放电阶段;dch信号为下一级单元的done信号,当下一级的求值完成后,dch变为高电位,使得pmos管p1关断,防止电源对内部节点的充电;同时由于nmos管n8,n9,n10,n11导通,使得节点x,y被拉低到低电位,传递到输出端,使得输出信号xor和xnor均为高电位。

本发明的特点及有益效果是:

通过设计新型的标准单元,消除了逻辑单元在运算不同信号输入下的功耗差异,使得在每个周期内,单元内部节点都会又一次求值和放电操作,保证了单元的抗dpa攻击的能力。同时利用双轨预充电逻辑输出的特点,设计了独立于时钟之外的放电信号产生电路,避免了攻击者通过分离放电信号或者放慢时钟导致防护失效的风险。

附图说明:

图1st-tdpl逻辑xor/xnor单元电路图。

图2st-tdpl单元串联逻辑结构图。

具体实施方式

为解决现有技术中的问题,本发明基于三阶段双轨预充电逻辑提出了一种自定时的三阶段双轨预充电逻辑单元(st-tdpl),该单元仅使用一个时钟信号,却仍保持着三阶段工作模式,在实现功耗与内部信号无关的基础上降低单元的复杂程度,同时提高了单元的安全性能。

为提高单元的抗dpa攻击能力,提出了一种新型的自定时三阶段双轨预充电逻辑结构(st-tdpl)。下面结合图1和图2介绍该标准单元的单元结构和工作原理。该逻辑单元的基本结构为双轨动态逻辑,图1为一个st-tdpl结构的xor/xnor单元的电路图,其中a,b,是单元的输入信号,clk和是单元的时钟控制信号,xor是该单元的输出信号,表示信号a和b异或运算的输出结果,xnor也是该单元的输出信号,表示信号a和b异或非运算的输出结果,done信号是单元运算完成的标志信号,dch信号是放电信号,由下一级单元的done信号提供。

该逻辑单元包括pmos晶体管p1,pmos晶体管p2,pmos晶体管p3,pmos晶体管p4,pmos晶体管p5,pmos晶体管p6,pmos晶体管p7,nmos晶体管n1,nmos晶体管n2,nmos晶体管n3,nmos晶体管n4,nmos晶体管n5,nmos晶体管n6,nmos晶体管n7,nmos晶体管n8,nmos晶体管n9,nmos晶体管n10,nmos晶体管n11,nmos晶体管n12和反相器i1,反相器i2;pmos晶体管p1的源极接电源,栅极接输入信号dch,漏极和pmos晶体管管p2,p3的源极相连;x节点与pmos晶体管p2的漏极,p3的栅极,p4的漏极,p6的栅极,nmos晶体管n2的漏极,n5的漏极,n8的漏极以及反相器i1的输入端公共连接;y节点与pmos晶体管p3的漏极,p2的栅极,p5的栅极,p7的栅极,nmos晶体管n1的漏极,n4的漏极,n10的漏极以及反相器i2的输入端公共连接;pmos晶体管p4,p5的源极接电源,栅极接输入信号clk;pmos晶体管p6,p7的源极接电源,漏极接输出信号done;nmos晶体管n1栅极接输入信号a,源极与n2源极以及n3源极公共连接;nmos晶体管n2栅极与n4栅极接输入信号nmos晶体管n4源极与n5源极以及n6漏极公共相连;nmos晶体管n5栅极接输入信号a;nmos晶体管n3栅极接输入信号b,源极与n7漏极,公共连接;nmos晶体管n6栅极接输入信号源极与n7漏极公共连接;nmos晶体管n7栅极接输入信号clk,源极接地;nmos晶体管n8栅极接输入信号dch,源极接n9漏极;nmos晶体管n9栅极接输入信号clk,源极接地;nmos晶体管n10栅极接输入信号dch,源极接n11漏极;nmos晶体管n11栅极接输入信号clk,源极接地;nmos晶体管n12漏极接输出信号done,栅极接输入信号源极接地。

该标准单元的工作模式分为预充电,求值和放电三个工作阶段。下面具体分析三个阶段下单元的工作情况。

当时钟为低电平时,单元处在预充电阶段,此时pmos管p4和p5导通,使得节点x,y被预充电到高电位,同时信号经过两个反向器传输到输出端,使得此时单元输出信号xor和xnor均为低电位;nmos管n12导通,使得标志信号done被拉低到低电位;由于dch信号为下一级单元的done信号,所以在预充电阶段dch信号为低电位,使得p1管导通;nmos管n7关断,使得单元的下拉网络关断,不会由于双轨互补信号的输入使得内部节点放电;nmos管n9,n11关断,使得节点x,y保持高电位而不会被拉低。

当时钟为高电平时,单元进入求值阶段,此时pmos管p4,p5关断,使得节点x,y与电源断开,不会被拉升到高电位;单元的下拉网络根据双轨互补信号a和b与的输入控制nmos管n1,n2,n3,n4,n5,n6管的通断,使得其中一条下拉通道导通,节点x和节点y中一个电位被拉低,并通过反相器传输到输出端。

当x和y其中一个节点被拉低到低电位时,此时pmos管p6,p7中的其中一个导通,标志信号done被拉升到高电位,标志着求值阶段的完成,进入放电阶段;dch信号为下一级单元的done信号,当下一级的求值完成后,dch变为高电位,使得pmos管p1关断,防止电源对内部节点的充电;同时由于nmos管n8,n9,n10,n11导通,使得节点x,y被拉低到低电位,传递到输出端,使得输出信号xor和xnor均为高电位。

在本单元中,反相器主要起到了两个作用:一是在预充电阶段使双轨输出均为低电位,保证了单元的多米诺结构连接,而在放电阶段又使双轨输出均为高电位,使得下一级nmos下拉网络中的nmos管全部导通,保证了在放电阶段所有内部节点的完全放电;二是电平修复,为了防止信号在传输过程中出现信号不完整的问题,在双轨输出端加入了一级反相器。

pmos管p2,p3在本结构中起到了锁存电位的作用:在求值阶段,当节点x和节点y中的其中一个被放电至低电位时,会使其控制的pmos管导通,从而使两者中的另一个节点连接到电源,保证求值阶段电位的保持。

本单元实现自定时的功能是通过pmos管p6,p7和nmos管n12实现的。当时钟为低电平时,nmos管n12时钟导通,使得done信号一直为“0”,而当时钟为高电平且求值完成后,节点x和节点y中一个变成低电位,使得pmos管p6,p7中的一个导通,将done信号拉升到高电位,从而产生求值完成信号。图2是多个st-tdpl单元串联的逻辑结构,其中in信号为单元运算时的正向输入信号,即图1中的a,b信号;信号为单元运算时的互补输入信号,即图1中的信号。

求值完成信号与时钟无关,而是充分考虑到双轨逻辑在求值完成时,两个输出信号中必定有一个是低电位的特点,从而利用这一特点设计了求值完成信号的产生电路。正因为放电信号不是由时钟产生器产生的,因此攻击者不能在放电阶段将放电信号分离或者消除。攻击者不能获取放电阶段的放电信息,同时在每个周期内,单元内部节点都会有一次求值和放电操作,因而st-tdpl表现出很好的功耗均衡性。

搭建st-tdpl逻辑单元时,既要考虑到单元的抗dpa攻击性能,又要保证单元的面积消耗。图1中,在设计nmos下拉网络时,要注意保证下拉网络的对称性,保证不同输入信号下单元内部节点的放电情况相同,而在设计放电信号产生电路时,则要使用尽可能少的逻辑单元,图1中仅用到了3个mos管。本发明的保护范围并不以上述实施方式为限,本领域普通技术人员根据本发明所揭示内容所作的等效修饰或变化,皆应纳入保护范围。

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