一种非易失布尔逻辑两位乘法器及运算方法与流程

文档序号:26616267发布日期:2021-09-11 00:29阅读:285来源:国知局
一种非易失布尔逻辑两位乘法器及运算方法与流程

1.本发明涉及非易失存储计算技术领域,特别是涉及一种非易失布尔逻辑两位乘法器及运算方法。


背景技术:

2.目前通信、计算机和个人消费电子产品发展,数据量的爆发式增长使市场对存储器的需求量越来越大,推动了存储技术的发展与变革。因此,实现更高速度、更大容量、更高集成度、更强可靠性和更低功耗的存储器成为人们研究的热点。相变存储器是一种新型非易失存储器,在1968年由stanford r.ovshinsky发表了硫系化合物在电场作用下能够在高阻的非晶态和低阻的多晶态间可逆转变这一研究结果,以其卓越的特性受到学术领域和工业领域的高度重视。在人工智能时代,相变存储器在各种领域中都发挥了重要作用,如非易失性存储器、神经网络加速器、布尔逻辑计算等。
3.随着摩尔定律的不断发展,冯诺依曼架构计算与存储分离的架构阻碍了计算效率的进一步提高,为了解决存储墙与功耗的瓶颈,将计算与存储结合,利用新型非易失相变存储器实现存内计算中非易失布尔逻辑计算有着广阔的研究前景。现有的非易失逻辑计算主要分为两类,一类是状态逻辑,输入和输出信号都用器件阻值表示,无需进行器件之间级联的信号转换;另一类是非状态逻辑,输入通常由电压信号表示,计算结果以阻值存储。在两种非易失布尔逻辑操作中,计算结果都是直接以阻值的形式存储在相变存储计算单元中。


技术实现要素:

4.本发明所要解决的技术问题是提供一种非易失布尔逻辑乘法器及运算方法,使用少量的器件快捷实现非易失乘法操作。
5.本发明解决其技术问题所采用的技术方案是:提供一种非易失布尔逻辑两位乘法器,包括四个多阻态器件、选通器件和外围控制电路,所述多阻态器件的一端作为顶端电极输入端,另一端与所述选通器件的漏端相连,所述选通器件的栅端作为所述多阻态器件的字线,源端连接底端电极输入端;所述多阻态器件用于实现非易失布尔逻辑运算,并将运算结果直接以多阻态器件的阻值状态进行存储;所述选通器件用于选通四个多阻态器件中的任意一个实现逻辑运算;所述外围控制电路,用于向选通的多阻态器件施加操作信号,使所述操作信号与所述多阻态器件的阻值状态作为输入实现逻辑操作,并在进行下一步逻辑操作之前进行状态级联使得前一步的计算结果作为下一步的逻辑输入存储在所述多阻态器件中。
6.所述多阻态器件施加输入脉冲信号后,所述多阻态器件的阻值状态发生阈值翻转。
7.所述多阻态器件施加的输入脉冲信号为reset输入脉冲时,所述多阻态器件转变为高阻态,计算结果对应二值逻辑“0”;所述多阻态器件施加的输入脉冲信号为set输入脉冲时,所述多阻态器件转变为低阻态,计算结果对应二值逻辑“1”。
8.所述逻辑操作为初始化逻辑操作时,所述外围控制电路向四个多阻态器件输入reset输入脉冲,使得四个多阻态器件均处于高阻态。
9.所述逻辑操作为与逻辑操作时,所述外围控制电路将被乘数转换为脉冲信号并施加至所述顶端电极输入端,乘数则以所述多阻态器件的阻值状态的形式存储在多阻态器件中,输出的结果以多阻态器件的阻值状态进行存储。
10.所述逻辑操作为异或逻辑操作时,所述外围控制电路将逻辑输入的二值信号施加至所述顶端电极输入端,读出所述多阻态器件的初始状态,并基于所述初始状态决定输入操作为reset操作或set操作。
11.所述多阻态器件为相变存储单元。
12.本发明解决其技术问题所采用的技术方案是:还提供一种如上述非易失布尔逻辑两位乘法器的运算方法,将四个多阻态器件记为多阻态器件c
11
、多阻态器件c
12
、多阻态器件c
21
和多阻态器件c
22
,包括以下步骤:
13.(1)对所述多阻态器件c
11
、多阻态器件c
12
、多阻态器件c
21
和多阻态器件c
22
进行初始化操作,并在完成初始化操作后分别在多阻态器件c
11
、多阻态器件c
12
、多阻态器件c
21
和多阻态器件c
22
中写入a0b0、a0b1、a1b1和a1b0;
14.(2)在多阻态器件c
11
进行一位与逻辑操作,得到a0b0a1,并读出多阻态器件c
12
和多阻态器件c
22
中存储结果;
15.(3)在多阻态器件c
11
进行一位与逻辑操作,得到a0b0a1b1,将所述步骤(2)中读出的结果在多阻态器件c
12
进行异或操作得到
16.(4)读出多阻态器件c
11
中的计算结果a0a1b0b1,并在多阻态器件c
22
写入a0b0;
17.(5)在多阻态器件c
21
实现异或操作,得到
18.有益效果
19.由于采用了上述的技术方案,本发明与现有技术相比,具有以下的优点和积极效果:本发明利用相变存储阈值转换与非易失性存储的特点,构造了相变存储非易失布尔逻辑计算两位乘法器,相比传统的逻辑计算实现两位乘法操作,其非易失布尔逻辑实现方法有助于减少数据频繁传输带来的功耗和时间的消耗,实现存储阵列中完成逻辑运算,降低能耗。
附图说明
20.图1为相变存储单元1t1r单元结构示意图;
21.图2为与(and)逻辑真值表示意图;
22.图3为2位乘法计算原理图;
23.图4为逻辑操作器件单元与操作步骤示意图;
24.图5为两位乘法器仿真输入与输出示意图。
具体实施方式
25.下面结合具体实施例,进一步阐述本发明。应理解,这些实施例仅用于说明本发明而不用于限制本发明的范围。此外应理解,在阅读了本发明讲授的内容之后,本领域技术人员可以对本发明作各种改动或修改,这些等价形式同样落于本技术所附权利要求书所限定
的范围。
26.本发明的实施方式涉及一种非易失布尔逻辑两位乘法器,包括四个多阻态器件、选通器件和外围控制电路,所述多阻态器件的一端作为顶端电极输入端,另一端与所述选通器件的漏端相连,所述选通器件的栅端作为所述多阻态器件的字线,源端连接底端电极输入端;所述多阻态器件用于实现非易失布尔逻辑运算,并将运算结果直接以多阻态器件的阻值状态进行存储;所述选通器件用于选通四个多阻态器件中的任意一个实现逻辑运算;所述外围控制电路,用于向选通的多阻态器件施加操作信号,使所述操作信号与所述多阻态器件的阻值状态作为输入实现逻辑操作,并在进行下一步逻辑操作之前进行状态级联使得前一步的计算结果作为下一步的逻辑输入存储在所述多阻态器件中。
27.本实施方式中采用的多阻态器件可以为相变存储器,由此可见,本实施方式使用1t1r相变存储单元结构,将输入信号写入非易失单元中,计算结果直接以相变存储器的阻值状态存储。仅用6个器件在五步内即可完成非易失性两位乘法计算。
28.相变存储器选通器件实现将单元选通,存储阵列特定存储单元被选择进行读写实现乘法操作操作,图1是mos晶体管作为选通器件的1t1r单元结构示意图。其中,实现相变存储单元逻辑计算的选通管由nmos晶体管(t)实现,而相变材料单元则等效为一个可变电阻(r)。在此结构中,nmos晶体管的栅端(gate)为存储单元的字线(word line,wl),漏端(drain)和相变单元的一端连接,相变单元的另外一端则为单元的顶端电极输入端t1,晶体管的源端(source)则连接底端电极输入端t2。
29.定义输入信号为二值逻辑“1”时,代表输入脉冲信号为set或reset;输入信号的二值逻辑为“0”时,代表输入电极接gnd。非易失布尔逻辑的输出信号以逻辑状态表示,定义相变存储单元为高阻态时输出二值逻辑信号为“0”,相变存储单元为低阻态时输出二值逻辑信号为“1”。
30.相变存储器施加输入脉冲信号,单元阻值状态发生阈值翻转。当相变存储器施加信号为reset输入脉冲,相变存储器转变为高阻态,计算结果对应二值逻辑“0”;当相变存储器施加信号为set输入脉冲,相变存储器转变为低阻态,计算结果对应二值逻辑“1”。
31.实现两位乘法操作输出四位计算结果,计算需进行器件状态初始化,逻辑与(and),异或(xor)操作。
32.逻辑计算器件状态初始化即四个相变存储器在计算开始之前将其置位到统一阻值状态,在初始化步骤之后进行计算。初始化步骤能够帮助逻辑计算过程更加准确,减少逻辑控制操作失误。初始化逻辑操作:在所有逻辑计算开始之前进行初始化操作,每次上电后自动配置成最优的工作状态,将所有器件初始化reset操作为高阻态,将器件充分的非晶化。
33.在布尔逻辑计算中实现一位乘法计算即实现一位与(and)逻辑操作。在非易失布相变存储器件中,计算结果直接以阻值的形式存储在相变存储计算单元中,由于其非易失特性,逻辑计算与(and)操作在初始写入数据和存储结果后写入与逻辑方式有很大不同。
34.在初始数据与逻辑写入过程中,所有器件单元被初始化reset操作为高阻状态,后续逻辑操作在高阻单元基础上写入,mos作为一个被乘数。1t1r单元中,当字线输入端电平将mos选通管选通,施加在顶电极的输入脉冲信号根据布尔逻辑计算规则改变逻辑单元阻值状态。当选通管关断,输入信号不会改变器件阻值状态。故选通端与顶电极输入信号共同
实现器件状态的转换,只有同时输入有效电平信号时,逻辑状态置为设定的逻辑值。
35.在相变存储计算单元中,初始数据存储之后,由于相变存储单元固有的非易失特性,初始输入数据作为前一步的计算结果存储在相变单元阻值状态中。设定非易失与逻辑计算规则与非易失相变存储器件特性结合,进行下一步逻辑操作之前,需进行状态级联,即前一步的计算结果作为下一步的逻辑输入存储在相变单元中。在与逻辑操作中,p作为被乘数,将被乘数转换为输入脉冲信号控制端t1;q作为乘数,以相变存储单元阻值状态的形式存储在计算单元中;输出z表示与逻辑计算结果,以阻值的形式存储于单元中。当p逻辑值为0,定义输入脉冲信号为reset操作,相变存储状态根据输入脉冲信号改变,将相变存储单元阻值置为高阻态,实现p
·
q操作;当p逻辑值为1,状态不发生改变。如图2所示为逻辑计算真值表。故在1t1r的器件单元中,一位乘法操作即与逻辑操作,将两输入变量分别定义为输入脉冲信号幅值和初始化阻值状态,从而实现非易失布尔逻辑与计算。
36.逻辑计算异或逻辑(xor)操作,由于在两位乘法器中,异或逻辑操作需要前一步的计算结果作为输入,参与异或逻辑计算,故器件的初始状态作为逻辑输入,决定操作结果。器件初始状态在初始化过程中reset置为高阻态,将逻辑输入二值信号p施加在输入上电极,读出器件初始状态,决定输入操作为reset操作或set操作。当输入逻辑值为”1”时,且初始化状态为高阻态,施加set脉冲信号,当输入逻辑值为“0”时,且初始化状态为低阻态,施加reset脉冲信号,当输入二值逻辑为“0”时,输入电极接gnd,器件保持初始化状态。
37.基于一位乘法操作,将两位数据进行与逻辑、异或逻辑组合运算完成两位非易失逻辑乘法器,两位乘法计算如图3所示,其中c0、c1、c2、c3的计算结果在公式中列出。两位乘法器中各位单元器件最终得到的逻辑计算结果直接存储在相变存储单元中,实现的结果分别为:
38.c0=a0a1b0b1;
[0039][0040][0041]
c3=a0b0;
[0042]
初始化置位为与(and)逻辑操作,选被乘数作为mos选通信号,乘数作为set置位信号输入顶电极。乘数二值逻辑值为0,则输入电极接gnd信号;乘数二值逻辑值为“1”,则输入电极施加set置位信号。当选通管选通且输入信号值不为“0”时,器件状态置为二值逻辑“1”;否则,器件状态置为二值逻辑“0”。
[0043]
本实施方式中仅需6器件5步骤即可实现二位乘法器,分别定义相变存储逻辑单元的阻值状态分别为高阻态和低阻态对应二值逻辑“0”和二值逻辑“1”。逻辑操作器件单元与操作步骤如图4所示,对于步骤列表中方框代表or逻辑操作,圆形代表read操作,三角代表xor操作。逻辑操作器件单元与操作步骤如下所示:
[0044]
步骤1:初始化操作后分别在相变存储器c
11
、相变存储器c
12
、相变存储器c
21
、相变存储器c
22
中写入a0b0、a0b1、a1b1、a1b0;
[0045]
步骤2:在相变存储器c
11
进行一位与逻辑操作,得到a0b0a1,并将相变存储器c
12
和相变存储器c
22
中的存储结果读出;
[0046]
步骤3:在相变存储器c
11
进行一位与逻辑操作,得到a0b0a1b1,将前一步读出的阻值状态转换为c
12
单元双端电极逻辑输入,在相变存储器c
12
进行异或操作得到进行异或操作得到
[0047]
步骤4:读出在相变存储器c
11
中的计算结果a0a1b0b1,并在相变存储器c
22
写入a0b0;
[0048]
步骤5:在相变存储器c
21
进行一步实现异或操作,得到
[0049]
在相变存储单元布尔逻辑两位乘法器实现中,仅使用4个相变存储单元,利用相变存储单元固有的非易失物理特性和阈值转换特性,将逻辑操作结果分为无需初始态参与计算的初始写入逻辑操作,以及需初始态参与的逻辑级联操作,将前一步逻辑计算结果的阻值状态作为下一步操作的输入结果参与计算。由于其非易失性,中间结果直接保留下次计算之时可直接调用。
[0050]
通过搭建相变存储逻辑单元的spice模型,测试相变存储非易失布尔逻辑乘法器功能。如图5为基于相变存储单元的2位二进制乘法器的仿真结果,当输入逻辑值分别为a0=1,a1=1,b0=1,b2=1时,得到的计算结果直接存储在相变存储单元中,显示为c0=a0b0=1,c3=a0a1b0b1=1,其中计算结果“0”为高阻态,“1”为低阻态。从仿真图5中可以看出,其所有的输入信号与输出状态之间的逻辑关系符合2位二进制乘法器的真值表,可以在4个相变存储单元中准确实现2位乘法器功能。
[0051]
本发明基于相变存储器单元特性,设计了相变存储布尔逻辑电路的2位二进制乘法器。通过组合相变存储非易失逻辑“与”、“异或”,在4个相变存储单元中5步骤完成2位乘法器电路计算。经过仿真分析,证明了逻辑模块能够实现2位乘法器功能,相比过去基于cmos逻辑电路中逻辑实现,本发明的乘法器电路在极大的降低了器件数量,逻辑值直接存储在相变单元中,无需器件状态多次擦除,减少逻辑级联过程中器件功耗与传输时间消耗。且相变存储阵列能够实现逻辑计算与存储功能,这进一步对新型计算架构的研究提供了更广阔的方向,是一种优良的代替冯
·
诺依曼计算架构实现高效计算的研究方案。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1