抗熵漏前馈网络研究
ON ENTROPY IMMUNITY OF FEEDFORWARD NETWORKS
-
摘要: 本文从实际出发减弱了Siegenthaler的相关免疫限制条件,实现了在不作出实质性牺牲的前提下避免了相关免疫性与线性复杂度之间的折衷(trade-off)。接着将Bent函数引入前馈网络的线性逼近熵漏现象的研究之中,得出了一些新结果。文中的研究方法也与前人不同。
-
关键词:
- 密码; 前馈网络; 相关免疫; 抗熵漏
Abstract: From practical point of view, the Siegenthaler s definition of correlation immunity is improved. Under the new definition there exists no trade-off between the generalized correlation immunity and linear complexity of the output key streams. The famous Bent functions are used for the study of entropy immunity in feedforward netforks. New results and new methods are also presented. -
1. 引言
随着晶体管在物理材料、能耗、性能退化以及经济方面的限制,摩尔定律正在受到挑战[1]。为了延续摩尔定律,人们提出了许多思路,其中之一是寻找一种尺寸更小的器件,用以代替互补金属氧化物半导体(Complementary Metal Oxide Semiconductor, CMOS)晶体管。
1971年Chua提出了忆阻器的定义[2],然而直到2008年惠普实验室才发现了首个纳米级忆阻器[3]。研究表明,忆阻器可应用于非易失存储器[4]、人工神经网络[5]、数字逻辑运算[6]、混沌电路等领域[7,8]。忆阻器的出现为摩尔定律的延续提供了一条新的道路。
忆阻器可以实现存储与运算的一体化,基于忆阻器的数字逻辑电路也为高级计算机体系构架开辟了新的途径。目前基于忆阻器的数字逻辑电路研究主要有:(1)仅由忆阻器构成的逻辑电路:忆阻器辅助逻辑(Memristor-Aided loGIC, MAGIC)[9],忆阻器蕴含逻辑(material IMPlication, IMPLY)[10];(2)由忆阻器和CMOS晶体管混合组成的逻辑电路:结合CMOS晶体管和忆阻器构建基本的布尔逻辑,也称忆阻器比例逻辑(Memristor-Ratioed Logic, MRL)[11];(3)基于忆阻器的可编程逻辑阵列:通过横纵交错的连接线与忆阻器组成一个交叉阵列[12]。
由于不同的忆阻器逻辑电路设计方法优劣不同,IMPLY需要多个操作步骤,使得电路运行时间延长,MAGIC则由于其结构原因无法实现多个逻辑门之间的级联以及多个扇出。相比而言,CMOS晶体管和忆阻器组成的混合比例逻辑,虽然在减少占用面积上不如前两者,但忆阻器和CMOS晶体管可以很好地兼容,即忆阻器可以在CMOS晶体管的金属层上制造[11]。因此,比例逻辑不仅在很大程度上缩减了晶体管的使用数量,同时也能大幅提升逻辑电路的运行速度。本文以比例逻辑为基础,对乘法器电路展开研究。
目前,以比例逻辑为基础的逻辑电路主要有异或(exclusive-OR, XOR)门(同或(equivalence, XNOR)门)[13-15]和全加器[14,16-19],还涉及到乘法器,包括基于通用逻辑门(2T-4M构成的具有异或以及与逻辑运算的电路)的2位二进制乘法器[20]等基本数字逻辑电路的设计。此外,对于忆阻乘法器的设计,除了使用比例逻辑,还可以使用蕴含逻辑等方法[20,21]。
本文主要研究忆阻器乘法器电路的设计,由于蕴含逻辑、辅助逻辑等方法操作复杂,且需要增加额外的输入输出读写电路;传统的比例逻辑则增加了晶体管的使用数量,这在一定程度上会增加电路功耗和延迟。因此本文使用了两种新的方法设计了忆阻乘法器。第1种是基于传统的比例逻辑,改进提出了新型比例逻辑,即由1个忆阻器和1个N型金属–氧化物–半导体(N-Metal-Oxide-Semiconductor, NMOS)管构成的单元门电路设计了一种2位二进制乘法器;第2种是改进提出了一种可以同时实现“异或”及“与”逻辑的多功能逻辑模块,并以此设计2位二进制乘法器电路。这两种方法设计的乘法器相比于过去的忆阻乘法器,减少很多元件使用数量(尤其是晶体管数量),同时也无需添加额外的读写电路。本文结构安排如下:第2节介绍了构建乘法器的忆阻器模型。第3节介绍了由忆阻器与CMOS晶体管构成的布尔逻辑电路:“与门”、“或门”、“非门”以及改进型的具有“异或”和“与”输出的多功能逻辑模块电路。第4节则是介绍了所设计的两种结构的2位二进制乘法器。第5节给出了LTSPICE仿真结果,并与其他论文设计的乘法器进行了比较分析。在最后进行全文总结。
2. 忆阻器模型
文献[22]提出了一种通用忆阻器模型,该模型可以实现包含多达256个忆阻器的逻辑电路,与其它忆阻器模型相比,该模型在收敛性问题上有很大的改善。该模型较好地模拟了金属-绝缘-金属结构忆阻器的电流、电压关系,以状态变量的运动构建了一个阈值电压函数,以空穴和离子漂移构建了非线性速率函数,其忆模型为
I(t)={a1x(t)sinh(bV(t)),V(t)≥0a2x(t)sinh(bV(t)),V(t)<0 (1) 其中,I(t)和V(t)分别表示电流和电压,a1, a2和b是实数,x(t)满足的状态方程为
dxdt=ηg(V(t))f(x(t)) (2) 其中,
η 表示施加电压的正负极性,当取值为1时,表示正向电压;取值为–1时,表示反向电压。g(V(t)) 为g(V(t))={Ap(eV(t)−eVp), V(t)>Vp−An(e−V(t)−eVn),V(t)<−V0, −Vn≤V(t)≤Vp (3) 其中,
Ap 和An 是可调节的幅值,Vp 和Vn 是正负阈值电压。f(x(t)) 为f(x)={e−∂p(x−xp)wp(x,xp),x≥xp1,x<xp (4) f(x)={e∂n(x+xn−1)wn(x,xn),x≤1−xn1,x>1−xn (5) 其中,窗函数
wp(x,xp) 和wn(x,xn) 分别表示为wp(x,xp)=xp−x1−xp+1 (6) wn(x,xn)=x1−xn (7) 其中,
xp 和xn 分别是忆阻器靠近正端Vp 的一个状态值和靠接负端Vn 的一个状态值,窗函数wp(x,xp) 是为了确保当x(t)=1 时,f(x)=0 ;窗函数wn(x,xn) 则是为了确保当电流反向时,x(t) 的值不小于0。通过给定该模型特定的初始参数,可以通过LTSPICS仿真得到如图1所示的滞回曲线图。
3. 忆阻器比例逻辑门电路
Kvatinsky在文献[11]中首次提出了利用忆阻器和CMOS混合构建逻辑电路的想法,并提出了由忆阻器构建的“或门”和“与门”电路,如图2(a)和2(b)所示。“或门”由两个极性相反的忆阻器串联构成,两忆阻器正端(本文中设定不带黑实线的一端为正端)分别接输入电压信号。本文将高电压(Vhigh)量化为“1”,低电压(Vlow)量化为“0”。当输入电压
VIN−1=1 ,VIN−2=0 时,输入与输出之间的关系为VOUT=ROFFRON+ROFFVhigh≈Vhigh=1 (8) 类似地,当两端输入信号取“1,1”, “0,0”, “0,1”时,其输入与输出关系的真值表均符合“或门”逻辑。同样“与门”也可以用相同的方法验证。然而这种与、或门电路的输出端信号是经过分压输出的,输出信号在一定程度上会有衰退。从式(8)中看到,尽管
ROFF>>RON ,输出电压VOUT 近似为高电压Vhigh (对应状态“1”),虽然这个近似值在单个与门、或门逻辑电路中并不会有直接影响,但在组合逻辑电路中,需要用到多个“与门”、“或门”时,这一细微的信号衰退将会对电路产生重大的影响。因此,通常在“或门”、“与门”后增加一个CMOS反相器,构成“或非门”和“与非门”来对信号进行抬升,如图2(c)和2(d)所示。图2(e)和2(f)分别是N输入“或门”和“与门”。通常,在组合逻辑电路中使用时也需要增加CMOS反相器抬升信号。Kvatinsky在其关于比例逻辑的论文中,并未提出关于如何构建“非门”逻辑,因而许多论文在设计基于忆阻器的组合逻辑电路时,大多用的是CMOS反相器来代替非门,这在一定程度上增加了集成芯片的使用面积。文献[17]提出了由1个忆阻器及1个NMOS管构建的非门逻辑电路,如图3(a)所示。该非门逻辑电路在忆阻器正端接直流电压
VCC ,以VIN 作为输入信号,VOUT 作为输出信号。当输入信号为高电压逻辑“1”时,即VIN=1 时,忆阻器正向偏置,忆阻值RM=RON ,此时NMOS处于饱和状态,相当于其导通电阻RT≈0 ,输出电压为VOUT=RTRON+RTVCC≈0 (9) 当输入信号为
VIN=0 时,NMOS管处于截止状态,相当于断开状态RT=RCUTOFF≈ ∞,则输出为VOUT=RTRON+RTVCC≈1 (10) 基于该“非门”电路,如果将直流电压VCC端作为一个输入信号端(A),可得到一个
A⋅ˉB 的逻辑电路,如图3(b)所示。更进一步,图3(c)和3(d)为2输入“或非门”以及N输入“或非门”。在忆阻器比例逻辑电路的设计过程中,通过此类方法构建的逻辑门电路可以节省大量的CMOS器件。文献[14]提出了一种由1个CMOS管、4个忆阻器以及1个电阻构成的新型逻辑电路模块,如图4所示。它可以同时实现“异或”和“与”两种逻辑,不仅可以提高集成芯片的面积利用率,同时也能提升运行效率、减小功耗。然而这种结构存在一个缺点,即它必须使用一个阻值较大的电阻,大电阻通常会占用更多的芯片面积。本文基于此,改进并提出了一种由1个NMOS管和5个忆阻器构成的逻辑模块,具体结构如图4所示。其中右侧电路(M5和T1组成),实现了
¯VA⋅VB 的逻辑,整个电路原理可由式(11)和式(12)表示VA=X1⋅X2,VB=X1+X2 (11) VXOR=¯VA⋅VB=(¯X1⋅¯X2)⋅(X1+X2)=X1⊕X2 (12) 对该多功能逻辑模块电路的仿真如图5所示。
表1对不同的“异或门”使用的元器件进行了比较,相比于其它忆阻器“异或门”电路,本文所设计的异或模块仅使用了1个晶体管,也没有增加额外的电阻。
4. 基于忆阻器的乘法器
在数字电路以及超大规模集成电路应用中,乘法器起着关键性的作用。在数字信号处理系统中,乘法器也被广泛的使用。在某些DSP算法中,硬件实现成本、功耗和整个系统的执行时间在很大程度上取决于乘法器的尺寸、功耗和速度。因此,高速率和低功耗的乘法器是现代数字处理系统中必不可少的电路之一[20]。图6为2位二进制乘法器的框图和真值表。
根据真值表可以得到该乘法器的逻辑输出表达式
S0=A0B0S1=¯A1A0B1+A0B1¯B0+A1¯A0B0+A1¯B1B0=A0B1⊕A1B0S2=A1B1¯B0+A1¯A0B1=A1A0B1B0⊕A1B1S3=A1A0B1B0} (13) 4.1 基于新型比例逻辑的2位二进制乘法器
常规的忆阻器比例逻辑,其与门(或门)逻辑单元电路通常由2个忆阻器和2个CMOS管构成。文献[21]提出了通过1个忆阻器和1个NMOS构建的新型比例逻辑来设计组合逻辑电路。相比于常规的忆阻器比例逻辑,新型比例逻辑的信号输出并非是通过分压来得到输出信号,它是通过NMOS端的输入信号的高低电压,确定NMOS管的饱和及截止区,以此来实现一个开关作用,用于选择是否输出忆阻器正端的信号,如图3。基于这种新型的比例逻辑,结合式(13),乘法器电路图如图7所示。
4.2 基于多功能模块的2位二进制乘法器
本文所提多功能模块同时具有“异或”和“与”逻辑输出,基于该多功能逻辑模块,结合式(13),可以得到如图8的忆阻器乘法器电路。使用该方法构建的逻辑电路优点在于,不仅可以在很大程度减少忆阻器和CMOS的使用数量,而且由于使用的元器件数量减少,在芯片占用面积,延迟等方面也将相应的有所改善。
5. LTspice仿真结果及性能分析
本文基于通用忆阻器模型设计了两种二进制乘法器,并与其他文献的忆阻器乘法器进行了比较分析。在进行LTSPICE仿真时,NMOS管的参数L = 0.01 μm, W = 40 μm。
如图9所示为基于新比例逻辑的2位二进制乘法器的仿真结果。根据电路图7所示,使用LTSPICE验证该电路的逻辑特性。V(A1), V(A0), V(B1), V(B0)为输入信号,它们的高电压为2 V(逻辑“1”),低电压0 V(逻辑“0”), V(S0)至V(S3)则为输出信号。从图9中可以看到,在该电路的仿真测试中,所有的信号输入与输出之间的关系均与其真值表相一致,故该电路能实现2位乘法器的功能。
如图10所示为基于多功能逻辑模块乘法器的仿真结果。根据电路图8,由于在LTSPICE仿真时该电路的输入信号与图7相同,因此该电路的输出信号理论上与图9是一致的。比较图9以及图10可以看出,两者仿真的输出信号几乎一致,故基于多功能逻辑模块的乘法器同样可以实现该乘法器的逻辑特性,该电路能实现2位乘法器的功能。
表2对不同方法构建的2位二进制乘法器所使用元器件的数量进行了比较。从表2中可以看到,本文所设计的忆阻乘法器,在减少晶体管的使用数量上有很大的改善;基于新型比例路逻辑设计的乘法器在忆阻器的使用量上稍多些,不过从元器件尺寸考虑,忆阻器的大小要远小于CMOS,且忆阻器可以在CMOS的金属层上制造,忆阻器数量的增加并不会对乘法器的大小产生很大影响。基于多功能模块设计的乘法器则兼顾了使用少量晶体管和忆阻器的优势,在将晶体管的数量减少至2个的同时,也仅使用了18个忆阻器,相比而言,即优于本文中的基于新型比例逻辑的乘法器,也优于其他文献设计的乘法器。
综上,由于忆阻器作为纳米级器件,其在尺寸上是远小于CMOS晶体管;忆阻器又与CMOS晶体管可以很好地兼容,即忆阻器的制造工艺可以在CMOS的金属层上完成。因此,在使用相同元器件的情况下,同一逻辑电路中忆阻器的占比越大,所构成的逻辑电路的芯片占用面积也越小。此外,在化学原理上,基于CMOS管的逻辑电路,其延迟取决于CMOS管的空穴与电子的迁移速率;基于忆阻器的组合逻辑电路则取决于掺杂区和非掺杂区域之间边界的移动速度,而通常后者的速度是前者的104倍以上[23]。因此,基于忆阻器比例逻辑的电路其延迟会远小于传统的基于CMOS管的逻辑电路。同时由于忆阻器的边界移动速度更快,其所消耗的功率也相比而言更少。
6. 结论
相比于传统的忆阻器比例逻辑,本文采用了两种方法设计了2位二进制乘法器:即将传统的由2个忆阻器和2个CMOS管构成的逻辑单元门改进,以1个NMOS和1个忆阻器为1个单元门的形式的新型比例逻辑设计了2位乘法器;另一种方法是,改进并设计了1T-5M多功能逻辑模块,结合该逻辑模块设计了2位二进制乘法器。本文中通过LTSPICE仿真软件进行了仿真验证,并与其他的忆阻乘法器进行了比较分析。本文所提乘法器相比于其他的忆阻乘法器电路,使用了更少的晶体管。
-
T. Siegenthaler, IEEE Int. Symp. Inform. Theory, Saint Jovite, Canada, 26-29, Sept. (1983).[2]T. Siegenthaler, IEEE Trans. on IT, IT-30(1954), 776-780.[3]T. Siegenthaler, IEEE Trans. on C, C-34(1985), 81-85.[4]R. Rueppel, Analysis and Design of Stream Ciphers, Springer-Verlag, New York, (1986).[5]曾肯成, 密码体制中的墒漏现象, 中科院研究生院数据处理中心报告,1988年.[6]Yang Yi Xian, IEE Electronics Letters, 23(1987), 1335-1336.[7]杨义先, 北京邮电学院学报, 1988年, 第3期, 第1-10页.[8]F. Macwilliams, N. Sloane, The Theory of Error-Correcting Codes, North-Holland, New York, (1977). -
计量
- 文章访问数: 1900
- HTML全文浏览量: 135
- PDF下载量: 457
- 被引次数: 0