CN106448729B - 一种基于相变存储器实现双向数字运算的电路及方法 - Google Patents
一种基于相变存储器实现双向数字运算的电路及方法 Download PDFInfo
- Publication number
- CN106448729B CN106448729B CN201610830916.9A CN201610830916A CN106448729B CN 106448729 B CN106448729 B CN 106448729B CN 201610830916 A CN201610830916 A CN 201610830916A CN 106448729 B CN106448729 B CN 106448729B
- Authority
- CN
- China
- Prior art keywords
- resistance value
- phase
- value
- pulse signal
- memory cell
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0004—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements comprising amorphous/crystalline phase transition cells
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0021—Auxiliary circuits
Landscapes
- Chemical & Material Sciences (AREA)
- Crystallography & Structural Chemistry (AREA)
- Semiconductor Memories (AREA)
Abstract
本发明公开了一种基于相变存储器实现双向数字运算的电路及方法,包括:相变存储器以及控制电路;相变存储器包括SET端和RESET端,RESET端用于在当前时刻接收第一脉冲信号,SET端用于在下一个时刻接收第二脉冲信号,第一脉冲信号的幅值大于第二脉冲信号的幅值;第一脉冲信号的脉宽小于第二脉冲信号的脉宽;控制电路包括读电路和比较器;读电路用于读取相变存储器的阻值,比较器用于将相变存储器的阻值与预先设置的参考阻值进行比较,并根据比较结果输出数字运算结果。本发明通过在相变存储器单元两端电极上施加不同极性的SET和RESET脉冲对相变存储器单元的非晶化区域大小进行定量调制,相变存储器单元的电阻值随脉冲调制线性变化,实现多值的存储和数值运算。
Description
技术领域
本发明属于微电子学技术领域,更具体地,涉及一种基于相变存储器实现双向数字运算的电路及方法。
背景技术
相变存储器利用相变材料在晶态与非晶态之间有显著电阻值差异的特性:相变材料处于晶态时原子排列规律、长程有序,电阻值低;相变材料处于非晶态时,原子排列不规律、短程有序,电阻值高,通过对相变存储器施加电压脉冲改变其电阻高低,在不同电阻状态间切换,从而应用于相变存储器的工作。
相变存储器的写入需要温度满足熔点和结晶温度的要求,因此需要相对高的电压和电流来维持数据写入。目前可以通过对相变材料施加脉冲精确控制相变材料的温度,从而实现对相变材料非晶化率及电阻值的精确控制,最终实现电阻值随施加脉冲数线性变化。利用双向剪裁技术,RESET和SET动作分别控制相变存储器单元非晶化和晶化。SET动作发出正脉冲使相变存储器单元非晶化,RESET动作发出负脉冲使非晶化退化,即晶化。
相变存储器与传统的非易失存储器结构相比,具有更长的耐久性、更快的写入速度,且具有成本低和尺寸精简的优越性,良好地弥补了传统存储器功耗大、集成度低、成本高和读写速度慢的缺陷。传统冯诺曼结构的计算器与存储器分离,而更高速有效的计算方式需要计算存储一体化的结构。因此,通过双向剪裁和相变材料非晶化率线性连续变化精确控制的技术,实现双向数值运算的计算存储一体化结构是今后研究的方向。
发明内容
针对现有技术的缺陷,本发明提供了一种基于相变存储器实现双向数字运算的方法,其目的在于通过采用不同极性的RESET脉冲和SET脉冲分时施加给相变存储器单元,实现二值或多值的计算存储一体化的双向数值运算。
本发明提供了一种基于相变存储器实现双向数字运算的电路,其特征在于,包括相变存储器以及与所述相变存储器连接的控制电路;相变存储器包括SET端和RESET端,所述RESET端用于在当前时刻接收外部的第一脉冲信号,所述SET端用于在下一个时刻接收外部的第二脉冲信号,且所述第一脉冲信号的幅值大于所述第二脉冲信号的幅值;所述第一脉冲信号的脉宽小于所述第二脉冲信号的脉宽;控制电路包括:读电路和比较器;所述读电路用于读取所述相变存储器的阻值,所述比较器用于将所述相变存储器的阻值与预先设置的参考阻值进行比较,并根据比较结果输出数字运算结果。
更进一步地,所述相变存储器包括:下电极、相变层、上电极和衬底;所述下电极、相变层和上电极采用T型结构,使相变区对输入脉冲的响应更线性化。
更进一步地,所述上电极和下电极的材料均为钛钨材料,所述相变层为硫系化合物合金Ge2Sb2Te5材料。
本发明还提供了一种基于上述的相变存储器实现双向数字运算电路进行逻辑运算的方法,包括下述步骤:
(1)通过在所述相变存储器的RESET端施加一个非晶化脉冲信号,使得所述相变存储器的初始化阻值为1/2(Rmax+Rmin);非晶化脉冲信号使所述相变存储器的相变材料发生非晶化转变,调制非晶化脉冲的幅值与脉宽等参数可控制相变存储器的非晶化率,即等效于控制相变存储器的阻值。
(2)根据所述初始化阻值获得参考阻值1/2(Rmax+Rmin);
(3)当前时刻在所述相变存储器的RESET端施加第一脉冲信号,下一个时刻在所述相变存储器的SET端施加第二脉冲信号,并读取所述相变存储器的运算阻值;
(4)将所述运算阻值与所述参考阻值进行比较,并根据比较结果输出逻辑运算结果。
更进一步地,当进行逻辑与运算时,当所述运算阻值大于所述参考阻值时,输出逻辑值“1”,当所述运算阻值小于或等于所述参考阻值时,输出逻辑值“0”;当进行逻辑或运算时,当所述运算阻值大于或等于所述参考阻值时,输出逻辑值“1”,当所述运算阻值小于所述参考阻值时,输出逻辑值“0”;当进行逻辑非运算时,当所述运算阻值小于所述参考阻值时,输出逻辑值“1”,当所述运算阻值大于所述参考阻值时,输出逻辑值“0”;当进行逻辑异或运算时,当所述运算阻值等于所述参考阻值时,输出逻辑值“1”,当所述运算阻值大于或小于所述参考阻值时,输出逻辑值“0”;当进行逻辑与非运算时,当所述运算阻值小于或等于所述参考阻值时,输出逻辑值“1”,当所述运算阻值大于所述参考阻值时,输出逻辑值“0”;当进行逻辑或非运算时,当所述运算阻值小于所述参考阻值时,输出逻辑值“1”,当所述运算阻值大于或等于所述参考阻值时,输出逻辑值“0”。
本发明还提供了一种基于相变存储器实现双向数字运算的电路,包括相变存储器以及与所述相变存储器连接的控制电路;
所述相变存储器包括:n个相变存储单元,第i个相变存储单元包括:第一信号输入端RESET、第二信号输入端SET、第一反馈端、第二反馈端和输出端;所述第一信号输入端RESET用于在当前时刻接收外部的第一脉冲信号,所述第二信号输入端SET用于在下一个时刻接收外部的第二脉冲信号,且所述第一脉冲信号的幅值大于所述第二脉冲信号的幅值;所述第一脉冲信号的脉宽小于所述第二脉冲信号的脉宽;所述控制电路包括:n个控制单元,第i个控制单元包括:第一控制信号输出端,第二控制信号输出端、第三控制信号输出端、第四控制信号输出端、读输入端和数值输出端;i为1,2,……n的正整数;第i个控制单元的第一控制信号输出端与第i个相变存储单元的第一反馈端连接,用于当第i个相变存储单元的阻值为最小值时输出控制所述第i个相变存储单元的阻值为满值的第一控制信号;第i个控制单元的第二控制信号输出端与第i个相变存储单元的第二反馈端连接,用于当所述第i个相变存储单元的阻值为最大值时输出控制所述第i个相变存储单元的阻值为最小值的第二控制信号;第i个控制单元的第三控制信号输出端与第i+1个相变存储单元的第一信号输入端RESET连接,用于当所述第i个相变存储单元的阻值为最大值时输出控制第i+1个相变存储单元的数值加1的第三控制信号;第i个控制单元的第四控制信号输出端与第i+1个相变存储单元的第二信号输入端SET连接,用于当所述第i个相变存储单元的阻值为最小值时输出控制第i+1个相变存储单元的数值减1的第四控制信号;第i个控制单元的读输入端用于读取第i个相变存储单元的阻值;第i个控制单元的数值输出端用于输出数值运算结果。
更进一步地,所述控制单元包括:读电路、比较器和控制器;所述读电路的输入端作为所述控制单元的读输入端,所述比较器的输入端连接至所述读电路的输出端,所述比较器的输出端作为所述控制单元的数值输出端;所述控制器包括四个输出端分别作为所述控制单元的第一控制信号输出端、第二控制信号输出端、第三控制信号输出端和第四控制信号输出端。
本发明还提供了一种基于上述的电路实现加法数值运算的方法,包括下述步骤:
(1)在第1个相变存储单元的第一信号输入端RESET输入X个第一脉冲信号;
(2)判断此时第i个相变存储单元的阻值是否等于最大阻值,若是,则进入步骤(5),若否,则进入步骤(3);i=1;
(3)在第1个相变存储单元的第一信号输入端RESET输入Y个中剩余未被输入的第一脉冲信号;
(4)判断此时第i个相变存储单元的阻值是否等于最大阻值,若是,则进入步骤(5),若否,则进入步骤(7);
(5)通过第i个控制单元的第二控制信号输出端输出的第二控制信号使得所述第i个相变存储单元的阻值最小;并通过第i个控制单元的第三控制信号输出端输出的第三控制信号使得所述第i+1个相变存储单元的数值加1;i=i+1;
(6)判断此时第i个相变存储单元的阻值是否等于最大阻值,若是,则返回至步骤(5);若否,则在第1个相变存储单元的第一信号输入端RESET继续输入X个中剩余未被输入的第一脉冲信号,并返回至步骤(2);
(7)获得X+Y的数值运算结果。
本发明还提供了一种基于上述的电路实现减法数值运算的方法,包括下述步骤:
(1)在第1个相变存储单元的第一信号输入端RESET输入X个第一脉冲信号;
(2)判断此时第i个相变存储单元的阻值是否等于最大阻值,若是,则进入步骤(5),若否,则进入步骤(3);i=1;
(3)在第1个相变存储单元的第二信号输入端SET输入Y个中剩余未被输入的第二脉冲信号;
(4)判断此时第j个相变存储单元的阻值是否等于最小阻值,若是,则进入步骤(7),若否,则进入步骤(9);X大于Y;j=1;
(5)通过第i个控制单元的第二控制信号输出端输出的第二控制信号使得所述第i个相变存储单元的阻值最小;并通过第i个控制单元的第三控制信号输出端输出的第三控制信号使得所述第i+1个相变存储单元的数值加1;i=i+1;
(6)判断此时第i个相变存储单元的阻值是否等于最大阻值,若是,则返回至步骤(5);若否,则在第1个相变存储单元的第一信号输入端RESET继续输入X个中剩余未被输入的第一脉冲信号,并返回至步骤(2);
(7)通过第j个控制单元的第一控制信号输出端输出的第一控制信号使得所述第j个相变存储单元的阻值最大;且通过第j个控制单元的第四控制信号输出端输出的第四控制信号使得所述第j+1个相变存储单元的数值减一;j=j+1;
(8)判断此时第j个相变存储单元的阻值是否等于最小阻值,若是,则返回至步骤(7);若否,则返回至步骤(3);
(9)获得X-Y的数值运算结果。
通过本发明所构思的以上技术方案,与现有技术相比,由于将存储器与计算器合并为一体,存储操作与运算操作并行,构建了一种新型CPU系统,通过采用不同极性的RESET脉冲和SET脉冲分时施加给相变存储器单元,实现二值或多值的计算存储一体化的双向数值运算的同时能够取得有效提升CPU运行速度的有益效果。
附图说明
图1是根据本发明实施例的相变存储器单元的结构图。
图2代表相变存储器单元中相变材料的阻值与施加脉冲的线性关系。
图3是各输入脉冲信号幅值与对应温度的关系。
图4是根据本发明实施例的一种相变计算存储器结构的示意性框图。
图5(a)是进行逻辑运算时输入布尔值1所需要的RESET脉冲信号示意图,图5(b)是进行逻辑运算时输入布尔值0所需要的SET脉冲信号示意图。
图6是根据本发明实施例的另一种相变计算存储器结构的示意性框图。
图7(a)是进行加法运算时输入加数和被加数所需的RESET脉冲信号示意图,图7(b)是进行加法运算时相变存储器单元满值后继续叠加所需的清零脉冲信号示意图,图7(c)是进行加法运算时相变存储器单元满值后向下一单元进位所需的进位脉冲信号示意图。
图8(a)是进行减法运算时输入被减数所需的RESET脉冲信号示意图,图8(b)是进行减法运算时输入减数所需的SET脉冲信号示意图,图8(c)是进行减法运算时相变存储器单元减至零值时向上一单元借位所需的借位脉冲信号示意图,图8(d)是进行减法运算时相变存储器单元减至零值时向上一单元借位后使本单元满值的满值脉冲信号示意图。
图9(a)为模拟进行一个加法数字运算过程的仿真示意图;图9(b)为模拟进行一个加法数字运算结果的仿真示意图。
图10为一个减法的数字运算模拟实例。
图11为一个逻辑运算模拟实例。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
相变存储器至今仍主要应用于信息存储领域,然而目前已有技术可实现相变存储器非晶化率的线性调制,且相变材料电阻值与非晶化率线性相关,按阻值变化可表现多态,因此利用相变存储器亦可能实现计算功能,完成计算存储一体化的技术进步。
本发明提供了一种基于相变存储器双向数值运算的方法,其目的在于采用不同极性的RESET脉冲和SET脉冲分时施加给相变存储器单元,使相变存储器单元晶态非晶态线性变化,表征为相变存储器单元电阻值的线性变化,以实现二值或多值的计算存储一体化的双向数值运算。
本发明提供了一种基于相变存储器双向数值运算的方法,包括下述步骤:
通过在相变计算存储器单元两极上分别施加不同极性的RESET脉冲和SET脉冲,调制RESET脉冲和SET脉冲的幅值、脉宽及脉冲间隔,使相变存储器单元的非晶化率随之线性变化。
其中,基于相变存储器实现二值双向逻辑运算的方法包括下述步骤:
相变计算存储器的结构包括单个相变存储器单元和读电路。相变存储器单元包括配置为进行数据计算与存储的相变存储器元件,控制电路包括读电路、比较器、控制器。
首先利用相变存储器单元电阻值随施加脉冲数线性变化且可逆的特性,适当的选取中间阻值,划分相变存储器单元中高阻区和低阻区,代表逻辑运算中的布尔值0和1。
然后,定义RESET端输入一个脉冲即为输入1,SET端输入一个脉冲即为输入0。相变存储器两端输入信号包括:1/0、0/1、0/0、1/1。
输入一组脉冲后,根据与、或、非等不同逻辑运算的需要选取合适的参考阻值,由读电路读取输入脉冲后相变存储器单元的电阻值,送入比较器比较该电阻值和参考阻值,最后输出运算结果。
其中,基于相变存储器实现多值双向数值运算的方法包括下述步骤:
相变计算存储器结构包括相变存储器单元、控制电路。相变计算存储器由一行多个相变存储器单元构成,每个相变存储器单元包括配置为进行数据计算与存储的相变存储器元件,以及连接到该相变存储器元件和选择该元件的选择器件。控制电路包括读电路、比较器、控制器。
首先利用相变存储器单元电阻值随施加脉冲数线性变化且可逆的特性,将其电阻值按动态电阻范围划分出10个区间,分别代表数字0~9。
在SET端输入脉冲的叠加即为数值加法过程,RESET端输入负脉冲即为数值减法过程。运算结果存储在相变存储器单元,以阻值形式表示,由读电路读取输入脉冲后相变存储器单元的电阻值,送入比较器比较该电阻值和参考阻值,最后输出运算结果。
本发明的有益效果如下:通过提出一种基于相变存储器的双向数值运算的方法,实现区别于传统冯诺依曼结构计算的高速读写计算,集计算器与存储器于一体,精简器件结构,提升计算效率。
通过下述详细说明并结合附图,并以示例的方式阐述本发明的原理,讲述了本发明实施例的其他方面和优点。
可以容易地理解,可以多种不同的结构对本文中一般性描述以及所附附图中示出实施例的元件进行布置和设计。因此,如附图中所呈现的下述多个实施例的以下具体描述不限制本发明的范围,而是仅代表多种实施方式。虽然附图中呈现了实施例的多个方面,但是附图不必按比例绘制,除非特别指出。
所述实施例在所有方面都认为仅是说明性而非限制性的。因此,本发明的范围由所附权利要求表示,而不是由该详细说明表示。落入权利要求等价物的含义和范国内的所有改变都包含在这些权利要求的范围内。
本说明书中对特征、优点或类似语言的提及不意味者通过本发明实现的所有的特征和优点应该或者实际属于任何单个实施例中。相反,提及这些特征和优点的语言应理解为,意味着在某个实施例中描述的具体特征、优点或特性也包含在至少一个实施例中。因此,本说明书中有关这些特征、优点以及类似语言的讨论可以但是不必指相同的实施例。
此外,本发明所描述的特征、优点和特性可以用任何适当的方式在一个或多个实施例中组合。相关领域的技术人员在本说明书的启发下将认识到,即使缺乏某特定实施例的具体特征或优点的一个或多个也可以实现本发明。在其它情况下,在某些实施例中可以认识到的附加特征和优点可能不存在于本发明的所有实施例中。
在本说明书中提及“一个实施例”、“某实施例”或类似的语言表示结合所指出的实施例描述的特定特征、结构或特性包括在至少一个实施例中。因此,在本说明书中,有关“在一个实施例中”、“在某实施例中”或类似语言的表述可能但非必须全部指的是相同的实施例。
图1是根据本发明实施例的相变存储器单元的结构图。图中其上电极和下电极1都是由Tiw构成,隔离层2都为SiO2材料,相变单元中相变层3材料为GST材料,衬底4为Si材料。
图2代表相变存储器单元中相变材料的阻值与施加脉冲的线性关系。相变存储器单元电阻值随施加脉冲数线性变化,且所述电阻值为非易失性参数,因而可以实现二值或多值的计算和存储。
图3是各输入脉冲信号幅值与对应温度的关系。输入脉冲幅值越大,相变存储器单元的温度越高。RESET端输入脉冲,即非晶化脉冲,幅值较高,使相变存储器单元温度高于相变材料熔点,使材料非晶化。SET端输入脉冲,即晶化脉冲,幅值稍低,但能相变存储器单元温度高于晶化温度,使材料晶化。读电路在相变存储器两端所加电压很小,低于熔点和晶化温度,避免影响相变存储器单元内的信息。
图4是根据本发明实施例的一种相变计算存储器结构的示意性框图;图5(a)是进行逻辑运算时输入布尔值1所需要的RESET脉冲信号示意图,图5(b)是进行逻辑运算时输入布尔值0所需要的SET脉冲信号示意图;该结构中,输入为1则从RESET端输入一个非晶化脉冲,输入为0则从SET端输入一个晶化脉冲。进行不同的逻辑运算时,相变存储器单元的初始状态各有不同。读电路连接到相变存储器单元的两端,用来读出相变存储器单元电阻值信息,输送到比较器与参考阻值进行比较。
若进行与运算,可取相变存储器单元的初始阻值状态为中间阻值,即1/2(Rmax+Rmin),Rmax为相变存储器单元最大电阻值,Rmin为相变存储器单元最小电阻值。另外取参考阻值为1/2(Rmax+Rmin)。输入布尔值1即在RESET端输入一个脉冲信号,输入布尔值0即在SET端输入一个脉冲信号。当输入与运算的两个运算值分别代表的脉冲信号后,相变存储器单元的电阻值随之相应变化。若读电路读出相变存储器单元的电阻值经由比较器与设定的参考阻值相比,小于或等于参考阻值时,OUT端输出与运算结果为0;若读电路读出相变存储器单元的电阻值经由比较器与设定的参考阻值相比,大于参考阻值时,OUT端输出与运算结果为1。以输入为0与0为例,从RESET端输入两个晶化脉冲,相变存储器单元电阻值小于参考阻值,OUT端输出为0,即0与0等于0。输入为1与0或0与1时,相变存储器单元电阻值等于参考阻值,OUT端输出为0,即1与0或0与1等于0。输入为1与1时,相变存储器单元电阻值大于参考阻值,OUT端输出为1,即1与1等于1。
若进行或运算,可取相变存储器单元的初始阻值状态为中间阻值,取参考阻值为1/2(Rmax+Rmin)。输入布尔值1即在RESET端输入一个脉冲信号,输入布尔值0即在SET端输入一个脉冲信号。当输入或运算的两个运算值分别代表的脉冲信号后,相变存储器单元的电阻值随之相应变化。若读电路读出相变存储器单元的电阻值经由比较器与设定的参考阻值相比,小于参考阻值时,OUT端输出或运算结果为0;若读电路读出相变存储器单元的电阻值经由比较器与设定的参考阻值相比,大于或等于参考阻值时,OUT端输出或运算结果为1。以输入为0或0为例,从RESET端输入两个晶化脉冲,相变存储器单元电阻值小于参考阻值,OUT端输出为0,即0或0等于0。输入为1或0和0或1时,相变存储器单元电阻值等于参考阻值,OUT端输出为1,即1或0和0或1等于1。输入为1或1时,相变存储器单元电阻值大于参考阻值,OUT端输出为1,即1或1等于1。
若进行非运算,相变存储器单元的初始阻值状态为中间阻值,参考阻值取为1/2(Rmax+Rmin),当输入信号后相变存储器单元的阻值小于参考阻值时,输出为1;当相变存储器单元的阻值大于参考阻值时,输出为0。
若进行异或运算,相变存储器单元的初始阻值状态为中间阻值,参考阻值取为1/2(Rmax+Rmin),当输入信号后相变存储器单元的阻值大于或小于参考阻值时,输出为0;当相变存储器单元的阻值等于参考阻值时,输出为1。
若进行与非运算,相变存储器单元的初始阻值状态为中间阻值,参考阻值取为1/2(Rmax+Rmin),当输入信号后相变存储器单元的阻值小于或等于参考阻值时,输出为1;当相变存储器单元的阻值大于参考阻值时,输出为0。
若进行或非运算,相变存储器单元的初始阻值状态为中间阻值,参考阻值取为1/2(Rmax+Rmin),当输入信号后相变存储器单元的阻值小于参考阻值时,输出为1;当相变存储器单元的阻值大于或等于参考阻值时,输出为0。
图6是根据本发明实施例的另一种相变计算存储器结构的示意性框图。由n个一致的相变存储器单元构成,单元1代表个位,单元2代表十位,单元3代表百位,以此类推,是一个多位加减法运算存储器。
如图6所示,以单元1为例,控制电路(CONTROLLER)经线路3连接到到单元1两端,控制电路中的读电路监测相变存储器单元的相变材料电阻值信息,通过线路4和线路5将处理后的信号反馈到相变存储器单元1,通过线路6和线路7连接到下一相变存储器单元。
进行加法运算时,由RESET端输入与相加数字对应的脉冲数,当输入9个脉冲后,若继续施加脉冲,设定相变存储器单元1阻值已达到最大参考阻值,由比较器比较确认后,经由线路7向下一个相变存储器单元2发送一个进位脉冲信号,使相变存储器单元2数值加1,同时由5向相变存储器单元1反馈一个长脉冲清零信号。此时继续向清零后的相变存储器单元1输入相加脉冲信号,若脉冲数满9则继续向下一单元进位,同时清零本单元。以此类推,可以通过不断输入脉冲完成累加。
进行减法运算时,由RESET端先输入被减数对应的脉冲数,被减数输入完成后由SET端输入减数所对应的脉冲数。当输入足够数量的脉冲后相变存储器单元1达到最小电阻值,此时单元1对应数值为0,由比较器比较确认后,施加一个长脉冲清零信号清零本单元,经由线路6向下一个相变存储器单元2发送一个借位脉冲信号,使相变存储器单元2数值减1,同时由线路4向相变存储器单元1反馈9个RESET脉冲满值信号,使相变存储器单元1代表数值为9。此时继续向满值后的相变存储器单元1施加相减脉冲信号,若单元代表数值为0,则继续向下一单元借位,同时使本单元满值。以此类推,可以通过不断输入脉冲完成相减。
图7(a)是进行加法运算时输入加数和被加数所需的RESET脉冲信号示意图,图7(b)是进行加法运算时相变存储器单元满值后继续叠加所需的清零脉冲信号示意图,图7(c)是进行加法运算时相变存储器单元满值后向下一单元进位所需的进位脉冲信号示意图。如图所示,进行加法运算时各脉冲信号;清零脉冲信号使相变存储器元件阻值达到最小值。进位脉冲信号为一个RESET脉冲。
图8(a)是进行减法运算时输入被减数所需的RESET脉冲信号示意图,图8(b)是进行减法运算时输入减数所需的SET脉冲信号示意图,图8(c)是进行减法运算时相变存储器单元减至零值时向上一单元借位所需的借位脉冲信号示意图,图8(d)是进行减法运算时相变存储器单元减至零值时向上一单元借位后使本单元满值的满值脉冲信号示意图。如图所示,进行减法运算时各脉冲信号;借位脉冲信号为一个SET脉冲。满值脉冲信号为9个RESET脉冲。
图9(a)为模拟进行一个加法数字运算过程的仿真示意图;图9(b)为模拟进行一个加法数字运算结果的仿真示意图;如图所示,一个加法的数字运算模拟实例;该例中模拟的是3+3的加法运算过程,选取合适的参考电阻,3个正向(RESET)脉冲与三个正向脉冲叠加后结果与6个脉冲作用后结果一致,实现3+3=6的加法运算过程。
如图10所示为一个减法的数字运算模拟实例。该例中模拟的是9-9的减法运算过程,选取合适的参考电阻,先输入9个正向脉冲为被减数,后施加9个反向(SET)脉冲为减数,此时再接续一个清零(CLEAR)脉冲,实现9-9=0的减法运算过程。
如图11所示为一个逻辑运算模拟实例。该例中模拟的是1与0的逻辑运算过程,选取合适的参考电阻,输入一个正向脉冲后,再施加一个逆向脉冲,最终阻值与参考阻值相近,约等于Rref,则1与0的逻辑运算结果为0。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种基于相变存储器实现双向数字运算的电路,其特征在于,包括相变存储器以及与所述相变存储器连接的控制电路;
所述相变存储器包括SET端和RESET端,所述RESET端用于在当前时刻接收外部的第一脉冲信号,所述SET端用于在下一个时刻接收外部的第二脉冲信号,且所述第一脉冲信号的幅值大于所述第二脉冲信号的幅值;所述第一脉冲信号的脉宽小于所述第二脉冲信号的脉宽;相变存储器的阻值随施加所述第一脉冲信号或第二脉冲信号的数量线性变化;从所述RESET端输入一个用于非晶化的第一脉冲信号表示输入为“1”,从所述SET端输入一个用于晶化的第二脉冲信号表示输入为“0”;
所述控制电路包括:读电路和比较器;所述读电路用于读取所述相变存储器的阻值,所述比较器用于将所述相变存储器的阻值与预先设置的参考阻值进行比较,并根据比较结果输出逻辑运算结果;
当进行逻辑与运算时,当所述阻值大于所述参考阻值时,输出逻辑值“1”;当所述阻值小于或等于所述参考阻值时,输出逻辑值“0”;
当进行逻辑或运算时,当所述阻值大于或等于所述参考阻值时,输出逻辑值“1”;当所述阻值小于所述参考阻值时,输出逻辑值“0”;
当进行逻辑非运算时,当所述阻值小于所述参考阻值时,输出逻辑值“1”;当所述阻值大于所述参考阻值时,输出逻辑值“0”;
当进行逻辑异或运算时,当所述阻值等于所述参考阻值时,输出逻辑值“1”;当所述阻值大于或小于所述参考阻值时,输出逻辑值“0”;
当进行逻辑与非运算时,当所述阻值小于或等于所述参考阻值时,输出逻辑值“1”;当所述阻值大于所述参考阻值时,输出逻辑值“0”;
当进行逻辑或非运算时,当所述阻值小于所述参考阻值时,输出逻辑值“1”;当所述阻值大于或等于所述参考阻值时,输出逻辑值“0”。
2.如权利要求1所述的电路,其特征在于,所述相变存储器包括:下电极、相变层、上电极和衬底;所述下电极、相变层和上电极采用T型结构,使相变区对输入脉冲的响应更线性化。
3.如权利要求2所述的电路,其特征在于,所述上电极和下电极的材料均为钛钨材料,所述相变层为硫系化合物合金Ge2Sb2Te5材料。
4.一种基于相变存储器实现双向数字运算的电路进行逻辑运算的方法,电路包括相变存储器以及与所述相变存储器连接的控制电路;所述相变存储器包括SET端和RESET端,所述RESET端用于在当前时刻接收外部的第一脉冲信号,所述SET端用于在下一个时刻接收外部的第二脉冲信号,且所述第一脉冲信号的幅值大于所述第二脉冲信号的幅值;所述第一脉冲信号的脉宽小于所述第二脉冲信号的脉宽;相变存储器的阻值随施加所述第一脉冲信号或第二脉冲信号的数量线性变化;从所述RESET端输入一个用于非晶化的第一脉冲信号表示输入为“1”,从所述SET端输入一个用于晶化的第二脉冲信号表示输入为“0”;所述控制电路包括:读电路和比较器;所述读电路用于读取所述相变存储器的阻值,所述比较器用于将所述相变存储器的阻值与预先设置的参考阻值进行比较,并根据比较结果输出逻辑运算结果;其特征在于,所述方法包括下述步骤:
(1)通过在所述相变存储器的RESET端施加一个非晶化脉冲信号,使得所述相变存储器的初始化阻值为(Rmax+Rmin)/2;
(2)根据所述初始化阻值获得参考阻值(Rmax+Rmin)/2;
(3)当前时刻在所述相变存储器的RESET端施加第一脉冲信号,下一个时刻在所述相变存储器的SET端施加第二脉冲信号,并读取所述相变存储器的阻值;
(4)将所述阻值与所述参考阻值进行比较,并根据比较结果输出逻辑运算结果;Rmax为相变存储器单元的最大阻值,Rmin为相变存储器单元的最小阻值;
当进行逻辑与运算时,当所述阻值大于所述参考阻值时,输出逻辑值“1”;当所述阻值小于或等于所述参考阻值时,输出逻辑值“0”;
当进行逻辑或运算时,当所述阻值大于或等于所述参考阻值时,输出逻辑值“1”;当所述阻值小于所述参考阻值时,输出逻辑值“0”;
当进行逻辑非运算时,当所述阻值小于所述参考阻值时,输出逻辑值“1”;当所述阻值大于所述参考阻值时,输出逻辑值“0”;
当进行逻辑异或运算时,当所述阻值等于所述参考阻值时,输出逻辑值“1”;当所述阻值大于或小于所述参考阻值时,输出逻辑值“0”;
当进行逻辑与非运算时,当所述阻值小于或等于所述参考阻值时,输出逻辑值“1”;当所述阻值大于所述参考阻值时,输出逻辑值“0”;
当进行逻辑或非运算时,当所述阻值小于所述参考阻值时,输出逻辑值“1”;当所述阻值大于或等于所述参考阻值时,输出逻辑值“0”。
5.一种基于相变存储器实现双向数字运算的电路,其特征在于,包括相变存储器以及与所述相变存储器连接的控制电路;
所述相变存储器包括:n个相变存储单元,第i个相变存储单元包括:第一信号输入端RESET、第二信号输入端SET、第一反馈端、第二反馈端和输出端;所述第一信号输入端RESET用于在当前时刻接收外部的第一脉冲信号,所述第二信号输入端SET用于在下一个时刻接收外部的第二脉冲信号,且所述第一脉冲信号的幅值大于所述第二脉冲信号的幅值;所述第一脉冲信号的脉宽小于所述第二脉冲信号的脉宽;相变存储器的阻值随施加所述第一脉冲信号或第二脉冲信号的数量线性变化;从所述RESET端输入一个用于非晶化的第一脉冲信号表示输入为“1”,从所述SET端输入一个用于晶化的第二脉冲信号表示输入为“0”;
所述控制电路包括:n个控制单元,第i个控制单元包括:第一控制信号输出端,第二控制信号输出端、第三控制信号输出端、第四控制信号输出端、读输入端和数值输出端;i为1,2,……n的正整数;
第i个控制单元的第一控制信号输出端与第i个相变存储单元的第一反馈端连接,用于当第i个相变存储单元的阻值为最小值时输出控制所述第i个相变存储单元的阻值为满值的第一控制信号;
第i个控制单元的第二控制信号输出端与第i个相变存储单元的第二反馈端连接,用于当所述第i个相变存储单元的阻值为最大值时输出控制所述第i个相变存储单元的阻值为最小值的第二控制信号;
第i个控制单元的第三控制信号输出端与第i+1个相变存储单元的第一信号输入端RESET连接,用于当所述第i个相变存储单元的阻值为最大值时输出控制第i+1个相变存储单元的数值加1的第三控制信号;
第i个控制单元的第四控制信号输出端与第i+1个相变存储单元的第二信号输入端SET连接,用于当所述第i个相变存储单元的阻值为最小值时输出控制第i+1个相变存储单元的数值减1的第四控制信号;
第i个控制单元的读输入端用于读取第i个相变存储单元的阻值;
第i个控制单元的数值输出端用于输出数值运算结果。
6.如权利要求5所述的电路,其特征在于,所述控制单元包括:读电路、比较器和控制器;
所述读电路的输入端作为所述控制单元的读输入端,所述比较器的输入端连接至所述读电路的输出端,所述比较器的输出端作为所述控制单元的数值输出端;
所述控制器包括四个输出端分别作为所述控制单元的第一控制信号输出端、第二控制信号输出端、第三控制信号输出端和第四控制信号输出端。
7.一种基于权利要求5所述的电路实现加法数值运算的方法,其特征在于,包括下述步骤:
(1)在第i个相变存储单元的第一信号输入端RESET输入一个第一脉冲信号;其中i=1;m初值为0,执行m=m+1;
(2)判断此时第i个相变存储单元的阻值是否等于最大阻值,若是,则进入步骤(5),若否,判断m是否等于X,若是,则进入步骤(3),若否,则进入步骤(1);
(3)在第i个相变存储单元的第一信号输入端RESET输入一个第一脉冲信号;j初值为0,执行j=j+1;
(4)判断此时第i个相变存储单元的阻值是否等于最大阻值,若是,则进入步骤(5),若否,判断j是否等于Y,若是,则进入步骤(7),若否,则进入步骤(3);
(5)通过第i个控制单元的第二控制信号输出端输出的第二控制信号使得所述第i个相变存储单元的阻值最小;并通过第i个控制单元的第三控制信号输出端输出的第三控制信号使得所述第i+1个相变存储单元的数值加1;执行i=i+1;
(6)判断此时第i个相变存储单元的阻值是否等于最大阻值,若是,则返回至步骤(5);若否,则执行i=1,并返回至步骤(2);
(7)获得X+Y的数值运算结果。
8.一种基于权利要求5所述的电路实现减法数值运算的方法,其特征在于,包括下述步骤:
(1)在第1个相变存储单元的第一信号输入端RESET输入一个第一脉冲信号;其中m初值为0,执行m=m+1;
(2)判断此时第i个相变存储单元的阻值是否等于最大阻值,若是,则进入步骤(5),若否,判断m是否等于X,若是,则进入步骤(3),若否,则进入步骤(1),其中i=1;
(3)在第1个相变存储单元的第二信号输入端SET输入一个第二脉冲信号;k初值为0,执行k=k+1;
(4)判断此时第j个相变存储单元的阻值是否等于最小阻值,若是,则进入步骤(7),若否,判断k是否等于Y,若是则进入步骤(9),若否则进入步骤(3);X大于Y;其中j=1;
(5)通过第i个控制单元的第二控制信号输出端输出的第二控制信号使得所述第i个相变存储单元的阻值最小;并通过第i个控制单元的第三控制信号输出端输出的第三控制信号使得所述第i+1个相变存储单元的数值加1;执行i=i+1;
(6)判断此时第i个相变存储单元阻值是否等于最大值,若是,则返回至步骤(5);若否,则执行i=1,并返回至步骤(2);
(7)通过第j个控制单元的第一控制信号输出端输出的第一控制信号使得所述第j个相变存储单元的阻值最大;且通过第j个控制单元的第四控制信号输出端输出的第四控制信号使得第j+1个相变存储单元的数值减一;执行j=j+1;
(8)判断此时第j个相变存储单元的阻值是否等于最小值,若是,则返回至步骤(7);若否,则执行j=1,并返回至步骤(4);
(9)获得X-Y的数值运算结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610830916.9A CN106448729B (zh) | 2016-09-19 | 2016-09-19 | 一种基于相变存储器实现双向数字运算的电路及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610830916.9A CN106448729B (zh) | 2016-09-19 | 2016-09-19 | 一种基于相变存储器实现双向数字运算的电路及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106448729A CN106448729A (zh) | 2017-02-22 |
CN106448729B true CN106448729B (zh) | 2019-09-27 |
Family
ID=58168763
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610830916.9A Active CN106448729B (zh) | 2016-09-19 | 2016-09-19 | 一种基于相变存储器实现双向数字运算的电路及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106448729B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107908878B (zh) * | 2017-11-17 | 2020-05-19 | 华中科技大学 | 一种模拟相变存储计算单元的电路模型 |
JP6725482B2 (ja) * | 2017-12-05 | 2020-07-22 | 矢崎総業株式会社 | 演算装置 |
CN109841242A (zh) * | 2019-01-08 | 2019-06-04 | 华中科技大学 | 一种基于相变存储器实现二进制并行加法的方法及系统 |
KR20230008732A (ko) * | 2020-04-07 | 2023-01-16 | 테크니온 리서치 엔드 디벨로프먼트 화운데이션 엘티디. | 위상 변경 메모리를 이용한 논리 게이트들 및 상태저장 로직 |
CN113380296A (zh) * | 2021-05-07 | 2021-09-10 | 中国科学院上海微系统与信息技术研究所 | 一种相变存储单元布尔逻辑的图像处理装置及方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101369450A (zh) * | 2007-08-17 | 2009-02-18 | 财团法人工业技术研究院 | 相变存储器的感测电路 |
CN102522500A (zh) * | 2011-12-09 | 2012-06-27 | 华中科技大学 | 一种相变随机存储器阵列的制备方法 |
CN103714852A (zh) * | 2013-12-18 | 2014-04-09 | 华中科技大学 | 一种精确控制微纳尺寸相变材料非晶化率连续变化的方法 |
CN103716038A (zh) * | 2013-12-25 | 2014-04-09 | 华中科技大学 | 一种基于相变存储器的非易失性逻辑门电路 |
CN103794224A (zh) * | 2014-01-27 | 2014-05-14 | 华中科技大学 | 一种基于相变磁性材料的非易失性逻辑器件及逻辑操作方法 |
CN105356876A (zh) * | 2015-11-16 | 2016-02-24 | 华中科技大学 | 基于忆阻器的逻辑门电路 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7969769B2 (en) * | 2007-03-15 | 2011-06-28 | Ovonyx, Inc. | Multi-terminal chalcogenide logic circuits |
-
2016
- 2016-09-19 CN CN201610830916.9A patent/CN106448729B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101369450A (zh) * | 2007-08-17 | 2009-02-18 | 财团法人工业技术研究院 | 相变存储器的感测电路 |
CN102522500A (zh) * | 2011-12-09 | 2012-06-27 | 华中科技大学 | 一种相变随机存储器阵列的制备方法 |
CN103714852A (zh) * | 2013-12-18 | 2014-04-09 | 华中科技大学 | 一种精确控制微纳尺寸相变材料非晶化率连续变化的方法 |
CN103716038A (zh) * | 2013-12-25 | 2014-04-09 | 华中科技大学 | 一种基于相变存储器的非易失性逻辑门电路 |
CN103794224A (zh) * | 2014-01-27 | 2014-05-14 | 华中科技大学 | 一种基于相变磁性材料的非易失性逻辑器件及逻辑操作方法 |
CN105356876A (zh) * | 2015-11-16 | 2016-02-24 | 华中科技大学 | 基于忆阻器的逻辑门电路 |
Non-Patent Citations (1)
Title |
---|
"Phase-change-memory-based storage elements for configurable logic";Pierre-Emmanuel Gaillardon;《Field-Programmable Technology》;20110106;17-20 * |
Also Published As
Publication number | Publication date |
---|---|
CN106448729A (zh) | 2017-02-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106448729B (zh) | 一种基于相变存储器实现双向数字运算的电路及方法 | |
US10643119B2 (en) | Differential non-volatile memory cell for artificial neural network | |
Suri et al. | Physical aspects of low power synapses based on phase change memory devices | |
Suri et al. | Phase change memory as synapse for ultra-dense neuromorphic systems: Application to complex visual pattern extraction | |
CN103917992B (zh) | 用于按概率性方式使用存储器来存储神经网络的突触权重的方法和装置 | |
CN106374912B (zh) | 一种逻辑运算电路与操作方法 | |
CN108475519A (zh) | 包含存储器及其操作的设备及方法 | |
CN109564767A (zh) | 包含多电平存储器单元的设备及其操作方法 | |
CN107533668A (zh) | 用于计算神经网络的节点值的硬件加速器 | |
CN107273972B (zh) | 一种基于阻变器件和适应-激发神经元的神经形态系统及实现方法 | |
JP2009282782A (ja) | 抵抗変化型可変抵抗素子を備えた積演算装置、及び積和演算装置、これらの装置を各ニューロン素子に備えるニューラルネットワーク、並びに積演算方法 | |
CN107194462A (zh) | 三值神经网络突触阵列及利用其的神经形态计算网络 | |
CN110362291A (zh) | 一种利用忆阻器进行非易失性复杂运算的方法 | |
US11347999B2 (en) | Closed loop programming of phase-change memory | |
Kang et al. | Emulation of spike-timing dependent plasticity in nano-scale phase change memory | |
Yakopcic et al. | Filament formation in lithium niobate memristors supports neuromorphic programming capability | |
CN107077887A (zh) | 生成分组忆阻器的代表性逻辑指示符 | |
CN103530690A (zh) | 一种神经元器件及神经网络 | |
Gutsche et al. | Exploring area-dependent Pr0. 7Ca0. 3MnO3-based memristive devices as synapses in spiking and artificial neural networks | |
CN102822900A (zh) | 对至少一个多级相变存储器单元进行编程 | |
Zayer et al. | Modeling framework and comparison of memristive devices and associated STDP learning windows for neuromorphic applications | |
US11170852B1 (en) | Cross-bar arrays having steering element with diode | |
CN103594112A (zh) | 一种相变存储器的写操作方法及设备 | |
Lalchhandama et al. | CoMIC: Complementary Memristor based in-memory computing in 3D architecture | |
CN105632551B (zh) | 存储阵列、存储对象逻辑关系的存储芯片及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |