CN114721622B - Adder based on memristor, driving method and electronic equipment - Google Patents
Adder based on memristor, driving method and electronic equipment Download PDFInfo
- Publication number
- CN114721622B CN114721622B CN202210450982.9A CN202210450982A CN114721622B CN 114721622 B CN114721622 B CN 114721622B CN 202210450982 A CN202210450982 A CN 202210450982A CN 114721622 B CN114721622 B CN 114721622B
- Authority
- CN
- China
- Prior art keywords
- memristor
- subarray
- unit
- array
- sub
- 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
- 238000000034 method Methods 0.000 title claims abstract description 58
- 230000002093 peripheral effect Effects 0.000 claims abstract description 44
- 238000004590 computer program Methods 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 abstract description 38
- 230000008569 process Effects 0.000 description 33
- 238000010586 diagram Methods 0.000 description 21
- 101100233916 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) KAR5 gene Proteins 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 238000003491 array Methods 0.000 description 5
- 101001121408 Homo sapiens L-amino-acid oxidase Proteins 0.000 description 4
- 102100026388 L-amino-acid oxidase Human genes 0.000 description 4
- 230000010354 integration Effects 0.000 description 4
- 239000000758 substrate Substances 0.000 description 4
- 101000827703 Homo sapiens Polyphosphoinositide phosphatase Proteins 0.000 description 3
- 102100023591 Polyphosphoinositide phosphatase Human genes 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 235000013902 inosinic acid Nutrition 0.000 description 2
- 230000015654 memory Effects 0.000 description 2
- CIWBSHSKHKDKBQ-JLAZNSOCSA-N Ascorbic acid Chemical compound OC[C@H](O)[C@H]1OC(=O)C(O)=C1O CIWBSHSKHKDKBQ-JLAZNSOCSA-N 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000004907 flux Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000004886 process control Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/50—Adding; Subtracting
- G06F7/505—Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination
-
- 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
- G11C13/004—Reading or sensing circuits or methods
-
- 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
- G11C13/0069—Writing or programming circuits or methods
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Mathematical Optimization (AREA)
- General Engineering & Computer Science (AREA)
- Semiconductor Integrated Circuits (AREA)
Abstract
Description
技术领域Technical Field
本发明涉及电子技术领域,具体而言,涉及一种基于忆阻器的加法器、驱动方法及电子设备。The present invention relates to the field of electronic technology, and in particular to an adder based on a memristor, a driving method and an electronic device.
背景技术Background technique
现有计算机系统主要采用冯诺依曼结构进行设计,冯诺依曼结构具有存储、计算分离的特点,导致“存储墙”、“功耗墙”等瓶颈,严重制约了计算系统性能的发展。忆阻器是描述电荷和通量之间关系的基本电路元件,其电阻状态随外加激励(电压或电流)的变化而变化,当激励撤销时电阻状态保持不变。根据忆阻器的特性所提出的忆阻器逻辑,能实现存储、计算一体化。运用忆阻器逻辑设计的新型计算系统,有望突破冯诺依曼结构瓶颈。Existing computer systems are mainly designed using the von Neumann structure. The von Neumann structure has the characteristics of separation of storage and computing, which leads to bottlenecks such as "storage wall" and "power consumption wall", which seriously restricts the development of computing system performance. Memristor is a basic circuit element that describes the relationship between charge and flux. Its resistance state changes with the change of external stimulus (voltage or current), and the resistance state remains unchanged when the stimulus is removed. The memristor logic proposed based on the characteristics of memristors can realize the integration of storage and computing. The new computing system designed using memristor logic is expected to break through the bottleneck of the von Neumann structure.
加法器是数字系统中的基本电路,是构建乘法器等复杂逻辑运算单元的基础。构建在时延、面积、计算结果非易失等方面更具优势的加法器,对设计高性能计算系统具有重要意义。例如,用IMP设计N-bit加法器的方法已经被研究,但是N-bit加法器的操作仍然比较复杂。基于阈值门、MeMOS的加法器无法实现存储、计算一体化,而且和基于IMP的加法器相比,他们的结构更难集成。Lauren Guckert等提出了MAD并提出了基于MAD的加法器,它的时延较小但结构复杂。尚无一种加法器在能够实现存储、计算一体化的同时具备易于集成、低时延及集成面积小的特点。Adders are basic circuits in digital systems and are the basis for building complex logic units such as multipliers. Building adders with advantages in terms of latency, area, and non-volatility of calculation results is of great significance for designing high-performance computing systems. For example, methods for designing N-bit adders using IMPs have been studied, but the operation of N-bit adders is still relatively complex. Adders based on threshold gates and MeMOS cannot achieve storage and computing integration, and their structures are more difficult to integrate than IMP-based adders. Lauren Guckert et al. proposed MAD and proposed an adder based on MAD, which has a small latency but a complex structure. There is no adder that can achieve storage and computing integration while being easy to integrate, having low latency, and having a small integration area.
发明内容Summary of the invention
为了解决上述问题,本公开实施例提供了一种基于忆阻器的加法器、驱动方法及电子设备。In order to solve the above problems, the embodiments of the present disclosure provide an adder based on a memristor, a driving method and an electronic device.
第一方面,本申请实施例提供了一种基于忆阻器的加法器,包括:In a first aspect, an embodiment of the present application provides an adder based on a memristor, comprising:
1T1R阵列、N个外围电路,所述1T1R阵列包括依次设置的第一1T1R子阵列、第二1T1R子阵列、第三1T1R子阵列、第四1T1R子阵列、第五1T1R子阵列,所述第一1T1R子阵列、所述第二1T1R子阵列、所述第三1T1R子阵列、所述第四1T1R子阵列分别包括N个1T1R单元,所述第五1T1R子阵列包括N+1个1T1R单元,各1T1R单元包括忆阻器及MOS管,所述忆阻器的底电极与所述MOS管的源极或漏极相连;A 1T1R array and N peripheral circuits, wherein the 1T1R array comprises a first 1T1R subarray, a second 1T1R subarray, a third 1T1R subarray, a fourth 1T1R subarray and a fifth 1T1R subarray which are arranged in sequence, wherein the first 1T1R subarray, the second 1T1R subarray, the third 1T1R subarray and the fourth 1T1R subarray respectively comprise N 1T1R units, the fifth 1T1R subarray comprises N+1 1T1R units, each 1T1R unit comprises a memristor and a MOS tube, and the bottom electrode of the memristor is connected to the source or drain of the MOS tube;
各1T1R子阵列的各1T1R单元中的MOS管的漏极或源极连接于对应列的字线,各1T1R子阵列的各1T1R单元中的MOS管的栅极连接于对应列的栅极控制线;The drain or source of the MOS transistor in each 1T1R unit of each 1T1R sub-array is connected to the word line of the corresponding column, and the gate of the MOS transistor in each 1T1R unit of each 1T1R sub-array is connected to the gate control line of the corresponding column;
所述第一1T1R子阵列的第i个1T1R单元及所述第二1T1R子阵列的第i个1T1R单元中的忆阻器的顶电极连接在第i个第一位线上,所述第三1T1R子阵列的第i个1T1R单元、所述第四1T1R子阵列的第i个1T1R单元及所述第五1T1R子阵列的第i个1T1R单元中的忆阻器的顶电极连接在第i个第二位线上,所述第五1T1R子阵列的第N+1个1T1R单元中的忆阻器的顶电极连接在第三位线上,第i个第一位线的第二端与第i个第二位线的第一端通过开关模块连接,1≤i≤N;The top electrodes of the memristors in the i-th 1T1R unit of the first 1T1R subarray and the i-th 1T1R unit of the second 1T1R subarray are connected to the i-th first bit line, the top electrodes of the memristors in the i-th 1T1R unit of the third 1T1R subarray, the i-th 1T1R unit of the fourth 1T1R subarray and the i-th 1T1R unit of the fifth 1T1R subarray are connected to the i-th second bit line, the top electrode of the memristor in the N+1-th 1T1R unit of the fifth 1T1R subarray is connected to the third bit line, the second end of the i-th first bit line is connected to the first end of the i-th second bit line through the switch module, 1≤i≤N;
第i个外围电路的第二端与第i个第一位线的第一端连接,第i个外围电路的第一端与第i+1个第二位线的第二端连接,1≤i≤N-1,第N个外围电路的第一端与第三位线的第一端或第二端连接。The second end of the i-th peripheral circuit is connected to the first end of the i-th first bit line, the first end of the i-th peripheral circuit is connected to the second end of the i+1-th second bit line, 1≤i≤N-1, and the first end of the N-th peripheral circuit is connected to the first end or the second end of the third bit line.
第二方面,本申请实施例提供了一种加法器的驱动方法,包括:In a second aspect, an embodiment of the present application provides a method for driving an adder, comprising:
根据第一1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值、第二1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值及第三1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值,确定第三1T1R子阵列的第i+1个1T1R单元中的忆阻器的逻辑值,1≤i≤N-1,以及根据第一1T1R子阵列的第N个1T1R单元中的忆阻器的逻辑值、第二1T1R子阵列的第N个1T1R单元中的忆阻器的逻辑值及第三1T1R子阵列的第N个1T1R单元中的忆阻器的逻辑值,确定第五1T1R子阵列的第N+1个1T1R单元中的忆阻器的逻辑值;Determine the logical value of the memristor in the i+1th 1T1R cell of the third 1T1R subarray according to the logical value of the memristor in the i-th 1T1R cell of the first 1T1R subarray, the logical value of the memristor in the i-th 1T1R cell of the second 1T1R subarray, and the logical value of the memristor in the i-th 1T1R cell of the third 1T1R subarray, 1≤i≤N-1; and determine the logical value of the memristor in the N+1th 1T1R cell of the fifth 1T1R subarray according to the logical value of the memristor in the N-th 1T1R cell of the first 1T1R subarray, the logical value of the memristor in the N-th 1T1R cell of the second 1T1R subarray, and the logical value of the memristor in the N-th 1T1R cell of the third 1T1R subarray;
根据所述第一1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值及所述第二1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值,确定所述第四1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值,1≤i≤N;Determine the logic value of the memristor in the i-th 1T1R unit of the fourth 1T1R subarray according to the logic value of the memristor in the i-th 1T1R unit of the first 1T1R subarray and the logic value of the memristor in the i-th 1T1R unit of the second 1T1R subarray, 1≤i≤N;
根据所述第三1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值及所述第四1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值,确定所述第五1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值,1≤i≤N;Determine the logic value of the memristor in the i-th 1T1R unit of the fifth 1T1R subarray according to the logic value of the memristor in the i-th 1T1R unit of the third 1T1R subarray and the logic value of the memristor in the i-th 1T1R unit of the fourth 1T1R subarray, 1≤i≤N;
根据所述第五1T1R子阵列的N+1个1T1R单元中的忆阻器的逻辑值确定最终结果,其中,忆阻器的逻辑值由忆阻器的阻态确定,忆阻器的高阻态代表逻辑值0,忆阻器的低阻态代表逻辑值1。The final result is determined according to the logic value of the memristor in the N+1 1T1R units of the fifth 1T1R subarray, wherein the logic value of the memristor is determined by the resistance state of the memristor, the high resistance state of the memristor represents the logic value 0, and the low resistance state of the memristor represents the logic value 1.
第三方面,本申请实施例提供了一种电子设备,其存储有计算机程序,所述计算机程序在处理器上运行时执行第二方面的所提供的加法器的驱动方法。In a third aspect, an embodiment of the present application provides an electronic device storing a computer program, which, when running on a processor, executes the driving method of the adder provided in the second aspect.
本申请实施例提供的基于忆阻器的加法器保留了1T1R阵列的主体结构,易于集成,并具有较小的面积,同时计算结果直接存储在忆阻器中,具有非易失性,通过忆阻器与外围电路的组合,在实现进位操作的同时省去了对齐工作,减少了计算时延。The memristor-based adder provided in the embodiment of the present application retains the main structure of the 1T1R array, is easy to integrate, and has a small area. At the same time, the calculation results are directly stored in the memristor and are non-volatile. Through the combination of the memristor and the peripheral circuit, the alignment work is omitted while the carry operation is realized, thereby reducing the calculation delay.
附图说明BRIEF DESCRIPTION OF THE DRAWINGS
为了更清楚地说明本发明的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对本发明保护范围的限定。在各个附图中,类似的构成部分采用类似的编号。In order to more clearly illustrate the technical solution of the present invention, the following will briefly introduce the drawings required for use in the embodiments. It should be understood that the following drawings only illustrate certain embodiments of the present invention and should not be regarded as limiting the scope of protection of the present invention. In each of the drawings, similar components are numbered similarly.
图1示出了本发明实施例所提供的基于忆阻器的加法器的一结构示意图;FIG1 shows a schematic diagram of a structure of a memristor-based adder provided in an embodiment of the present invention;
图2A示出了本发明实施例所提供的1T1R单元的一结构示意图;FIG2A shows a schematic structural diagram of a 1T1R unit provided in an embodiment of the present invention;
图2B示出了本发明实施例所提供的1T1R单元的另一结构示意图;FIG2B shows another schematic structural diagram of a 1T1R unit provided in an embodiment of the present invention;
图3示出了本发明实施例所提供的CCAU的结构示意图;FIG3 shows a schematic structural diagram of a CCAU provided by an embodiment of the present invention;
图4示出了本发明实施例所提供的延时线产生脉冲Di的过程示意图;FIG4 is a schematic diagram showing a process of generating a pulse Di by a delay line provided in an embodiment of the present invention;
图5示出了本发明实施例所提供的脉冲Di衰减产生脉冲Pi的过程示意图;FIG5 is a schematic diagram showing a process of attenuating a pulse Di to generate a pulse Pi provided by an embodiment of the present invention;
图6示出了本发明实施例所提供的忆阻器的高阻态与低阻态对应的切换电压图示;FIG6 is a diagram showing switching voltages corresponding to the high resistance state and the low resistance state of the memristor provided in an embodiment of the present invention;
图7A示出了本发明实施例所提供的一种MAGIC OR门示意图;FIG7A shows a schematic diagram of a MAGIC OR gate provided by an embodiment of the present invention;
图7B示出了本发明实施例所提供的一种MAGIC NAND门示意图;FIG7B shows a schematic diagram of a MAGIC NAND gate provided by an embodiment of the present invention;
图7C示出了本发明实施例所提供的另一种MAGIC OR门示意图;FIG7C shows another schematic diagram of a MAGIC OR gate provided by an embodiment of the present invention;
图7D示出了本发明实施例所提供的另一种MAGIC NAND门示意图;FIG7D shows another schematic diagram of a MAGIC NAND gate provided by an embodiment of the present invention;
图8A示出了本发明实施例所提供的1T1R阵列的一结构示意图;FIG8A shows a schematic structural diagram of a 1T1R array provided in an embodiment of the present invention;
图8B示出了本发明实施例所提供的1T1R阵列的另一结构示意图;FIG8B shows another schematic diagram of the structure of a 1T1R array provided in an embodiment of the present invention;
图9示出了本发明实施例所提供的一种加法器的驱动方法的流程示意图;FIG9 is a schematic flow chart showing a method for driving an adder provided by an embodiment of the present invention;
图10A示出了本发明实施例所提供的实现异或运算的过程中第一次施加驱动电压的示意图;FIG10A is a schematic diagram showing the first application of a driving voltage in the process of implementing an XOR operation provided by an embodiment of the present invention;
图10B示出了本发明实施例所提供的实现异或运算的过程中第二次施加驱动电压的示意图。FIG. 10B is a schematic diagram showing a second application of a driving voltage in the process of implementing an XOR operation provided by an embodiment of the present invention.
具体实施方式Detailed ways
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。The technical solutions in the embodiments of the present invention will be described clearly and completely below in conjunction with the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, rather than all the embodiments.
通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。The components of the embodiments of the present invention generally described and shown in the drawings herein may be arranged and designed in a variety of different configurations. Therefore, the following detailed description of the embodiments of the present invention provided in the drawings is not intended to limit the scope of the claimed invention, but merely represents selected embodiments of the present invention. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative work are within the scope of protection of the present invention.
在下文中,可在本发明的各种实施例中使用的术语“包括”、“具有”及其同源词仅意在表示特定特征、数字、步骤、操作、元件、组件或前述项的组合,并且不应被理解为首先排除一个或更多个其它特征、数字、步骤、操作、元件、组件或前述项的组合的存在或增加一个或更多个特征、数字、步骤、操作、元件、组件或前述项的组合的可能性。Hereinafter, the terms "including", "having" and their cognates, which may be used in various embodiments of the present invention, are intended only to indicate specific features, numbers, steps, operations, elements, components or combinations of the foregoing items, and should not be understood as first excluding the existence of one or more other features, numbers, steps, operations, elements, components or combinations of the foregoing items or adding the possibility of one or more features, numbers, steps, operations, elements, components or combinations of the foregoing items.
此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。Furthermore, the terms “first”, “second”, “third”, etc. are merely used for distinguishing descriptions and are not to be understood as indicating or implying relative importance.
除非另有限定,否则在这里使用的所有术语(包括技术术语和科学术语)具有与本发明的各种实施例所属领域普通技术人员通常理解的含义相同的含义。所述术语(诸如在一般使用的词典中限定的术语)将被解释为具有与在相关技术领域中的语境含义相同的含义并且将不被解释为具有理想化的含义或过于正式的含义,除非在本发明的各种实施例中被清楚地限定。Unless otherwise defined, all terms (including technical terms and scientific terms) used herein have the same meanings as those generally understood by those skilled in the art to which the various embodiments of the present invention belong. The terms (such as those defined in generally used dictionaries) will be interpreted as having the same meanings as the contextual meanings in the relevant technical field and will not be interpreted as having idealized meanings or overly formal meanings unless clearly defined in the various embodiments of the present invention.
实施例1Example 1
参照图1,图1为本实施例提供的一种基于忆阻器的加法器的结构示意图。如图1所示,所述基于忆阻器的加法器包括:Referring to Figure 1, Figure 1 is a schematic diagram of the structure of a memristor-based adder provided in this embodiment. As shown in Figure 1, the memristor-based adder includes:
1T1R阵列、N个外围电路,所述1T1R阵列包括依次设置的第一1T1R子阵列、第二1T1R子阵列、第三1T1R子阵列、第四1T1R子阵列、第五1T1R子阵列,所述第一1T1R子阵列、所述第二1T1R子阵列、所述第三1T1R子阵列、所述第四1T1R子阵列分别包括N个1T1R单元,所述第五1T1R子阵列包括N+1个1T1R单元,各1T1R单元包括忆阻器及MOS管,所述忆阻器的底电极与所述MOS管的源极或漏极相连;A 1T1R array and N peripheral circuits, wherein the 1T1R array comprises a first 1T1R subarray, a second 1T1R subarray, a third 1T1R subarray, a fourth 1T1R subarray and a fifth 1T1R subarray which are arranged in sequence, wherein the first 1T1R subarray, the second 1T1R subarray, the third 1T1R subarray and the fourth 1T1R subarray respectively comprise N 1T1R units, the fifth 1T1R subarray comprises N+1 1T1R units, each 1T1R unit comprises a memristor and a MOS tube, and the bottom electrode of the memristor is connected to the source or drain of the MOS tube;
各1T1R子阵列的各1T1R单元中的MOS管的漏极或源极连接于对应列的字线,各1T1R子阵列的各1T1R单元中的MOS管的栅极连接于对应列的栅极控制线;The drain or source of the MOS transistor in each 1T1R unit of each 1T1R sub-array is connected to the word line of the corresponding column, and the gate of the MOS transistor in each 1T1R unit of each 1T1R sub-array is connected to the gate control line of the corresponding column;
所述第一1T1R子阵列的第i个1T1R单元及所述第二1T1R子阵列的第i个1T1R单元中的忆阻器的顶电极连接在第i个第一位线上,所述第三1T1R子阵列的第i个1T1R单元、所述第四1T1R子阵列的第i个1T1R单元及所述第五1T1R子阵列的第i个1T1R单元中的忆阻器的顶电极连接在第i个第二位线上,所述第五1T1R子阵列的第N+1个1T1R单元中的忆阻器的顶电极连接在第三位线上,第i个第一位线的第二端与第i个第二位线的第一端通过开关模块连接,1≤i≤N;The top electrodes of the memristors in the i-th 1T1R unit of the first 1T1R subarray and the i-th 1T1R unit of the second 1T1R subarray are connected to the i-th first bit line, the top electrodes of the memristors in the i-th 1T1R unit of the third 1T1R subarray, the i-th 1T1R unit of the fourth 1T1R subarray and the i-th 1T1R unit of the fifth 1T1R subarray are connected to the i-th second bit line, the top electrode of the memristor in the N+1-th 1T1R unit of the fifth 1T1R subarray is connected to the third bit line, the second end of the i-th first bit line is connected to the first end of the i-th second bit line through the switch module, 1≤i≤N;
第i个外围电路的第二端与第i个第一位线的第一端连接,第i个外围电路的第一端与第i+1个第二位线的第二端连接,1≤i≤N-1,第N个外围电路的第一端与第三位线的第一端或第二端连接。The second end of the i-th peripheral circuit is connected to the first end of the i-th first bit line, the first end of the i-th peripheral circuit is connected to the second end of the i+1-th second bit line, 1≤i≤N-1, and the first end of the N-th peripheral circuit is connected to the first end or the second end of the third bit line.
具体的,请参阅图1,忆阻器的主体为1T1R阵列结构,包括五个1T1R子阵列,其中,A1、A2...AN表示第一1T1R子阵列的第1至N个1T1R单元的编号,B1、B2…BN表示第二1T1R子阵列的第1至N个1T1R单元的编号,C1、C2…CN表示第三1T1R子阵列的第1至N个1T1R单元的编号,L1、L2…LN表示第四1T1R子阵列的第1至N个1T1R单元的编号,S1、S2…SN及CN+1表示第五1T1R子阵列的第1至N+1个1T1R单元的编号。Specifically, referring to FIG. 1 , the main body of the memristor is a 1T1R array structure, including five 1T1R sub-arrays, wherein A 1 , A 2 .. . AN represent numbers of the 1st to Nth 1T1R units of the first 1T1R sub-array, B 1 , B 2 .. . AN represent numbers of the 1st to Nth 1T1R units of the second 1T1R sub-array, C 1 , C 2 .. . CN represent numbers of the 1st to Nth 1T1R units of the third 1T1R sub-array, L 1 , L 2 .. . . NL represent numbers of the 1st to Nth 1T1R units of the fourth 1T1R sub-array, and S 1 , S 2 .. . SN and CN +1 represent numbers of the 1st to N+1st 1T1R units of the fifth 1T1R sub-array.
请参阅图2A,图2A示出了本实施例所提供的1T1R单元的一结构示意图,其中,1T1R单元包括一个忆阻器M及一个作为开关的MOS管,该MOS管用于控制与其串联的忆阻器的选通,忆阻器M的顶电极连接在对应的位线WLi上。请参阅图1,在1T1R阵列结构中,位线WL1经开关模块1隔开为第一位线WL1-1与第二位线WL1-2,位线WL2经开关模块2隔开为第一位线WL2-1与第二位线WL2-2…位线WLN经开关模块N隔开为第一位线WLN-1与第二位线WLN-2,位线WLN+1即为第三位线WLN+1。Please refer to FIG2A, which shows a schematic diagram of the structure of the 1T1R unit provided by the present embodiment, wherein the 1T1R unit includes a memristor M and a MOS transistor as a switch, the MOS transistor is used to control the gating of the memristor connected in series therewith, and the top electrode of the memristor M is connected to the corresponding bit line WL i . Please refer to FIG1, in the 1T1R array structure, the bit line WL 1 is separated into a first bit line WL 1-1 and a second bit line WL 1-2 by a switch module 1, the bit line WL 2 is separated into a first bit line WL 2-1 and a second bit line WL 2-2 by a switch module 2, ... the bit line WL N is separated into a first bit line WL N-1 and a second bit line WL N-2 by a switch module N, and the bit line WL N+1 is the third bit line WL N+1 .
综上所述,1T1R阵列中的位线WLi经开关模块i隔开为第一位线WLi-1与第二位线WLi-2。用于连接第一位线WLi-1与第二位线WLi-2的开关模块i可以为MOS管,即第一位线WLi-1与第二位线WLi-2之间可以通过MOS管控制选通,因为MOS管没有设置衬底,因此第一位线WLi-1的第二端可以与MOS管的源极或者漏极连接,对应的,第二位线WLi-2的第一端与MOS管的漏极或源极连接。请再次参阅图1,在1T1R阵列结构中,1T1R单元Ai与1T1R单元Bi中的忆阻器的顶电极连接在第一位线WLi-1上,1T1R单元Ci、1T1R单元Li及1T1R单元Si中的忆阻器的顶电极连接在第二位线WLi-2上,1≤i≤N,1T1R单元CN+1的顶电极连接在第三位线WLN+1上。In summary, the bit line WL i in the 1T1R array is separated into a first bit line WL i- 1 and a second bit line WL i- 2 by a switch module i. The switch module i for connecting the first bit line WL i- 1 and the second bit line WL i- 2 may be a MOS tube, that is, the first bit line WL i- 1 and the second bit line WL i- 2 may be controlled by the MOS tube for gating. Since the MOS tube has no substrate, the second end of the first bit line WL i- 1 may be connected to the source or drain of the MOS tube, and correspondingly, the first end of the second bit line WL i- 2 may be connected to the drain or source of the MOS tube. Please refer to Figure 1 again. In the 1T1R array structure, the top electrodes of the memristors in the 1T1R cells A i and 1T1R cells B i are connected to the first bit line WL i-1 , the top electrodes of the memristors in the 1T1R cells C i , 1T1R cells L i and 1T1R cells S i are connected to the second bit line WL i-2 , 1≤i≤N, and the top electrode of the 1T1R cell C N+1 is connected to the third bit line WL N+1 .
请再次参阅图2A,忆阻器M的底电极与MOS管的源极连接,MOS管的栅极连接在栅极控制线Gm上,1≤m≤5,MOS管的漏极连接在字线BLk上,1≤k≤5,请参阅图1,在1T1R阵列结构中,第一1T1R子阵列的各1T1R单元中的MOS管的栅极和漏极分别连接在栅极控制线G1和字线BL1上、第二1T1R子阵列的各1T1R单元中的MOS管的栅极和漏极分别连接在栅极控制线G2和字线BL2上、第三1T1R子阵列的各1T1R单元中的MOS管的栅极和漏极分别连接在栅极控制线G3和字线BL3上、第四1T1R子阵列的各1T1R单元中的MOS管的栅极和漏极分别连接在栅极控制线G4和字线BL4上、第五1T1R子阵列的各1T1R单元中的MOS管的栅极和漏极分别连接在栅极控制线G5和字线BL5上。请参阅图2B,由于MOS管未设置衬底,因此,1T1R单元的结构还可以如图2B所示,其中,忆阻器M的顶电极与MOS管的漏极连接,对应的,MOS管的源极连接在对应行的位线WLi上,忆阻器M的底电极连接在对应列的字线BLk上,MOS管的栅极连接在对应列的栅极控制线Gm上。本实施例中采用的1T1R单元为图2A所示的1T1R单元结构,采用图2B所示的1T1R单元结构可以实现相同的功能,具体采用哪一种1T1R单元结构可根据实际需求进行选择,在此不作限定。Please refer to FIG. 2A again. The bottom electrode of the memristor M is connected to the source of the MOS transistor. The gate of the MOS transistor is connected to the gate control line G m , 1≤m≤5. The drain of the MOS transistor is connected to the word line BL k , 1≤k≤5. Please refer to FIG. 1. In the 1T1R array structure, the gate and drain of the MOS transistor in each 1T1R unit of the first 1T1R sub-array are respectively connected to the gate control line G 1 and the word line BL 1 , the gate and drain of the MOS transistor in each 1T1R unit of the second 1T1R sub-array are respectively connected to the gate control line G 2 and the word line BL 2 , the gate and drain of the MOS transistor in each 1T1R unit of the third 1T1R sub-array are respectively connected to the gate control line G 3 and the word line BL 3 , and the gate and drain of the MOS transistor in each 1T1R unit of the fourth 1T1R sub-array are respectively connected to the gate control line G 4 and the word line BL 4 , the gate and drain of the MOS tube in each 1T1R unit of the fifth 1T1R sub-array are connected to the gate control line G5 and the word line BL5 respectively. Please refer to FIG2B. Since the MOS tube is not provided with a substrate, the structure of the 1T1R unit can also be as shown in FIG2B, wherein the top electrode of the memristor M is connected to the drain of the MOS tube, and correspondingly, the source of the MOS tube is connected to the bit line WL i of the corresponding row, the bottom electrode of the memristor M is connected to the word line BL k of the corresponding column, and the gate of the MOS tube is connected to the gate control line G m of the corresponding column. The 1T1R unit used in this embodiment is the 1T1R unit structure shown in FIG2A. The 1T1R unit structure shown in FIG2B can achieve the same function. Which 1T1R unit structure to use can be selected according to actual needs and is not limited here.
请参阅图1,如图1所示的1T1R阵列结构,各虚线框所包括的1T1R单元Ai、1T1R单元Bi、1T1R单元Ci、第i个作为开关的MOS管、第一位线WLi-1及第一位线WLi-1的第一端所连接的外围电路共同构成了CCAUi,1≤i≤N,CCAU即为进位计算、对齐单元(Carry Calculationand Alignment Uni,CCAU)。Please refer to Figure 1. In the 1T1R array structure shown in Figure 1, the 1T1R unit Ai , 1T1R unit Bi , 1T1R unit Ci , the i-th MOS tube used as a switch, the first bit line WL i-1 and the peripheral circuit connected to the first end of the first bit line WL i-1 included in each dotted box together constitute CCAU i , 1≤i≤N, CCAU is the carry calculation and alignment unit (CCAU).
请参阅图3,图3所示为本实施例提供的CCAU的一结构示意图,图3与图1中的CCAU的区别之处在于,图3中省去了各个作为开关的MOS管,因为在构成CCAU时,各作为开关的MOS管均处于导通状态,处于导通状态的MOS管具体包括用于连接第一位线WLi-1与第二位线WLi-2的MOS管,以及1T1R单元Ai、1T1R单元Bi及1T1R单元Ci中的各MOS管,1≤i≤N,因此,为了便于描述,在图3中省去了上述的各个MOS管,此外,相较于图1,图3中对外围电路的具体组成也进行了展开。Please refer to FIG3 , which is a schematic diagram of the structure of the CCAU provided in the present embodiment. The difference between FIG3 and the CCAU in FIG1 is that each MOS transistor used as a switch is omitted in FIG3 , because when the CCAU is formed, each MOS transistor used as a switch is in an on state, and the MOS transistor in the on state specifically includes a MOS transistor used to connect the first bit line WL i-1 and the second bit line WL i-2 , and each MOS transistor in the 1T1R unit A i , 1T1R unit B i and 1T1R unit C i , 1≤i≤N, therefore, for the convenience of description, the above-mentioned each MOS transistor is omitted in FIG3 , and in addition, compared with FIG1 , the specific composition of the peripheral circuit is also expanded in FIG3 .
在本实施例中,第i个外围电路的第一端与第二位线WL(i+1)-2的第二端连接,用于向第二位线WL(i+1)-2输出高电平或者低电平,第N个外围电路的第一端与第三位线WLN+1的第一端或者第二端连接,用于向第三位线WLN+1输出高电平或者低电平,1≤i≤N。此外,在CCAU中,外围电路的第一端即为CCAU的输出端,由此可知,第i个CCAU的输出端用于向第二位线WL(i+1)-2输出高电平或者低电平,第N个CCAU的输出端用于向第三位线WLN+1输出高电平或者低电平。In this embodiment, the first end of the i-th peripheral circuit is connected to the second end of the second bit line WL (i+1)-2 , and is used to output a high level or a low level to the second bit line WL (i+1)-2 . The first end of the N-th peripheral circuit is connected to the first end or the second end of the third bit line WL N+1 , and is used to output a high level or a low level to the third bit line WL N+1 , 1≤i≤N. In addition, in the CCAU, the first end of the peripheral circuit is the output end of the CCAU, so it can be seen that the output end of the i-th CCAU is used to output a high level or a low level to the second bit line WL (i+1)-2 , and the output end of the N-th CCAU is used to output a high level or a low level to the third bit line WL N+1 .
可选的,本实施例中所提供的外围电路的组成为:Optionally, the peripheral circuit provided in this embodiment is composed of:
在一具体的实施例中,各外围电路包括反相器及分压电阻,所述分压电阻与所述反相器的输入端连接,所述反相器的输出端为所述外围电路的第一端,所述反相器的输入端为各外围电路的第二端,所述忆阻器的阻态包括高阻态和低阻态,所述分压电阻的阻值等于所述忆阻器在低阻态时对应的阻值。In a specific embodiment, each peripheral circuit includes an inverter and a voltage divider resistor, the voltage divider resistor is connected to the input end of the inverter, the output end of the inverter is the first end of the peripheral circuit, the input end of the inverter is the second end of each peripheral circuit, the resistance state of the memristor includes a high resistance state and a low resistance state, and the resistance value of the voltage divider resistor is equal to the resistance value corresponding to the memristor in the low resistance state.
具体的,外围电路包括一个反相器和一个分压电阻,如图3所示,该分压电阻为定值电阻R,该定值电阻R的阻值与忆阻器在低阻态时对应的阻值相等,需要说明的是,本实施例中所采用的忆阻器均相同,各忆阻器包括高阻态和低阻态。定值电阻R的一端与反相器的输入端串联,电压V0为通过定值电阻R向反相器输入的电压,输入电压UR为电压V0经分压后对反相器的实际输入电压,分压通过定值电阻R与1T1R单元Ai、1T1R单元Bi及1T1R单元Ci中的各忆阻器共同完成。Specifically, the peripheral circuit includes an inverter and a voltage-dividing resistor, as shown in FIG3 , the voltage-dividing resistor is a fixed resistor R, the resistance of the fixed resistor R is equal to the resistance corresponding to the memristor in the low resistance state, it should be noted that the memristors used in this embodiment are the same, and each memristor includes a high resistance state and a low resistance state. One end of the fixed resistor R is connected in series with the input end of the inverter, the voltage V 0 is the voltage input to the inverter through the fixed resistor R, the input voltage UR is the actual input voltage of the voltage V 0 to the inverter after voltage division, and the voltage division is completed by the fixed resistor R and each memristor in the 1T1R unit A i , 1T1R unit B i and 1T1R unit C i .
反相器的输入端即为外围电路的第二端,反相器的输出端即作为外围电路的第一端,因为外围电路的第一端为CCAU的输出端,因此,反相器的输出端即为CCAU的输出端。通过定值电阻R向反相器输入电压V0,以实现向反相器输入电压UR,反相器根据输入电压UR的大小来确定输出端的输出为高电平或者低电平,从而使得CCAU的输出端向与其输出端对应连接的位线输出高电平或者低电平。The input end of the inverter is the second end of the peripheral circuit, and the output end of the inverter is the first end of the peripheral circuit. Because the first end of the peripheral circuit is the output end of the CCAU, the output end of the inverter is the output end of the CCAU. The voltage V 0 is input to the inverter through the fixed resistor R to input the voltage UR to the inverter. The inverter determines whether the output of the output end is a high level or a low level according to the size of the input voltage UR , so that the output end of the CCAU outputs a high level or a low level to the bit line corresponding to the output end.
可选的,本实施例中所提供的反相器的组成为:Optionally, the inverter provided in this embodiment is composed of:
所述反相器包括PMOS管及NMOS管,所述PMOS管的栅极与所述NMOS管的栅极连接共同作为所述反相器的输入端,所述PMOS管的漏极与所述NMOS管的漏极连接共同作为所述反相器的输出端,所述PMOS管的源极连接电源供应端,所述NMOS管的源极接地。The inverter includes a PMOS tube and an NMOS tube, the gate of the PMOS tube is connected to the gate of the NMOS tube and serves as the input end of the inverter, the drain of the PMOS tube is connected to the drain of the NMOS tube and serves as the output end of the inverter, the source of the PMOS tube is connected to the power supply end, and the source of the NMOS tube is grounded.
具体的,反相器包括PMOS管及NMOS管,PMOS管与NMOS管的栅极衔接在一起共同作为反相器的输入端,PMOS管与NMOS管的漏极衔接在一起共同作为反相器的输出端,如图3所示,PMOS管的源极与衬底连接电源供应端,电源供应端向PMOS管的源极输入3.3V的高电平,NMOS管的源极与衬底接地。Specifically, the inverter includes a PMOS tube and an NMOS tube. The gates of the PMOS tube and the NMOS tube are connected together as the input end of the inverter. The drains of the PMOS tube and the NMOS tube are connected together as the output end of the inverter. As shown in FIG. 3 , the source and substrate of the PMOS tube are connected to the power supply end. The power supply end inputs a high level of 3.3V to the source of the PMOS tube. The source and substrate of the NMOS tube are grounded.
需要说明的是,反相器的高电平,即电源供应端向PMOS管的源极所输入的高电平采用的是幅度为3.3V的脉冲,请参阅图4,如图4所示的脉冲D1、D2、D3...DN即表示反相器的高电平所采用的幅度为3.3V的脉冲,脉冲D1、D2、D3...DN由延时线产生,脉冲D1、D2、D3...DN在文中可用脉冲Di表示,1≤i≤N。Delay Ts表示相邻两个控制信号之间的延时为Ts。It should be noted that the high level of the inverter, i.e., the high level inputted by the power supply end to the source of the PMOS tube, adopts a pulse with an amplitude of 3.3V. Please refer to FIG4. The pulses D1 , D2 , D3 ... DN shown in FIG4 represent pulses with an amplitude of 3.3V adopted by the high level of the inverter. The pulses D1 , D2 , D3 ... DN are generated by a delay line. The pulses D1 , D2 , D3 ... DN can be represented by pulses Di in the text, 1≤i≤N. Delay Ts represents that the delay between two adjacent control signals is Ts .
上述通过定值电阻R向反相器输入的电压V0可以定义为CCAU的驱动电压,CCAU的驱动电压采用的是幅度为V0的脉冲Pi,如图1所示的P1、P2…PN即为各个CCAU的驱动电压所采用的脉冲Pi的编号,脉冲Pi由脉冲Di衰减产生,请参阅图5,图5为脉冲Di通过电阻R1与电阻R2分压衰减生成脉冲Pi的示意图,1≤i≤N,Tpulse表示脉冲Di的高电平时间。The voltage V0 input to the inverter through the fixed resistor R can be defined as the driving voltage of CCAU. The driving voltage of CCAU adopts a pulse Pi with an amplitude of V0 . P1 , P2 ... PN as shown in Figure 1 are the numbers of the pulses Pi adopted by the driving voltages of each CCAU. Pulse Pi is generated by attenuation of pulse Di. Please refer to Figure 5, which is a schematic diagram of generating pulse Pi by attenuating pulse Di through the voltage divider of resistors R1 and R2 , 1≤i≤N, and T pulse represents the high level time of pulse Di.
具体实施时,需要通过脉冲Di衰减得到的脉冲Pi来调节CCAU的驱动电压V0,使V0与反相器中的NMOS管的导通电压VGS-th(N)满足: 以作为CCAU执行其功能的前置条件。此外,在CCAU工作前,还需要将各进位忆阻器的阻态初始化为高阻态,在本实施例中,进位忆阻器包括1T1R单元Ci中的忆阻器,2≤i≤N+1,即进位忆阻器包括第三1T1R子阵列的第2至第N个1T1R单元中的忆阻器,以及第五1T1R子阵列的第N+1个1T1R单元中的忆阻器。In specific implementation, the driving voltage V 0 of CCAU needs to be adjusted by the pulse P i obtained by attenuating the pulse D i , so that V 0 and the on-voltage V GS-th (N) of the NMOS tube in the inverter satisfy: As a prerequisite for CCAU to perform its function. In addition, before CCAU works, the resistance state of each carry memristor needs to be initialized to a high resistance state. In this embodiment, the carry memristor includes the memristor in the 1T1R unit Ci , 2≤i≤N+1, that is, the carry memristor includes the memristor in the 2nd to Nth 1T1R units of the third 1T1R subarray, and the memristor in the N+1th 1T1R unit of the fifth 1T1R subarray.
请参阅图6,本实施例中,图6示出了忆阻器的高阻态与低阻态对应的切换电压图示,其中,Vread是一个保持忆阻器状态不变的小电压,读操作被定义为在忆阻器上施加电压Vread并获得通过它的电流,大电流对应于低阻态(Low Resistance State,LRS),小电流对应高阻态(High Resistance State,HRS),忆阻器的低阻态可以表示逻辑值1,忆阻器的高阻态可以表示逻辑值0,Vset是将忆阻器从高阻态切换到低阻态的阈值电压,Vreset是将忆阻器从低阻态切换到高阻态的阈值电压。set操作定义为忆阻器从高阻态切换到低阻态,因此,上述在CCAU工作前将各进位忆阻器的阻态初始化为高阻态是为了将各进位忆阻器的逻辑值初始化为0。施加一个幅度超过Vset的正电压即可对忆阻器执行set操作,施加一个幅度超过Vreset的负电压即可对忆阻器执行reset操作。Please refer to FIG. 6. In this embodiment, FIG. 6 shows a switching voltage diagram corresponding to the high resistance state and the low resistance state of the memristor, wherein V read is a small voltage that keeps the state of the memristor unchanged. The read operation is defined as applying a voltage V read to the memristor and obtaining a current passing through it. A large current corresponds to a low resistance state (LRS), and a small current corresponds to a high resistance state (HRS). The low resistance state of the memristor can represent a logical value of 1, and the high resistance state of the memristor can represent a logical value of 0. V set is a threshold voltage for switching the memristor from a high resistance state to a low resistance state, and V reset is a threshold voltage for switching the memristor from a low resistance state to a high resistance state. The set operation is defined as the memristor switching from a high resistance state to a low resistance state. Therefore, the above initialization of the resistance state of each carry memristor to a high resistance state before the CCAU works is to initialize the logic value of each carry memristor to 0. Applying a positive voltage with an amplitude exceeding V set can perform a set operation on the memristor, and applying a negative voltage with an amplitude exceeding V reset can perform a reset operation on the memristor.
在本实施例中,各CCAU的工作依序且单独进行,依序进行即指第1至N个CCAU按照从1至N的顺序依次工作,单独进行即指某个CCAU工作时,其余的各CCAU均不工作,例如当第1个CCAU工作时,第2至N个CCAU均不工作。In this embodiment, each CCAU works sequentially and individually. Sequentially means that the 1st to Nth CCAUs work in order from 1 to N, and individually means that when a certain CCAU works, the other CCAUs do not work. For example, when the 1st CCAU works, the 2nd to Nth CCAUs do not work.
具体实施时,在1至N个CCAU工作前,需要选通栅极控制线G1、栅极控制线G2及栅极控制线G3,用于导通CCAU所包括的各1T1R单元中的MOS管,以使CCAU中的各1T1R单元中的忆阻器的底电极接地。并且,在第N个CCAU工作前,还需要选通栅极控制线G5,以使第五1T1R子阵列的第N+1个1T1R单元中的忆阻器的底电极接地。上述CCAU中的各1T1R单元的具体内容请参照上文中对CCAU组成的相关描述,为避免重复,在此不再赘述。In specific implementation, before the 1st to Nth CCAUs work, it is necessary to select the gate control line G1 , the gate control line G2 and the gate control line G3 to turn on the MOS tubes in the 1T1R units included in the CCAU, so that the bottom electrode of the memristor in each 1T1R unit in the CCAU is grounded. In addition, before the Nth CCAU works, it is also necessary to select the gate control line G5 to ground the bottom electrode of the memristor in the N+1th 1T1R unit of the fifth 1T1R subarray. For the specific contents of each 1T1R unit in the CCAU, please refer to the relevant description of the CCAU composition above, and will not be repeated here to avoid repetition.
具体的,在第i个CCAU工作前,还需要选通第一位线WLi-1与第二位线WLi-2之间的MOS管,以使第一位线WLi-1与第二位线WLi-2连通,从而连通了第i个CCAU中的各1T1R单元中的忆阻器的顶电极,以实现选通第i个CCAU中的各1T1R单元中的忆阻器,1≤i≤N-1。Specifically, before the i-th CCAU works, it is also necessary to select the MOS tube between the first bit line WL i-1 and the second bit line WL i-2 to connect the first bit line WL i-1 with the second bit line WL i-2 , thereby connecting the top electrodes of the memristors in each 1T1R unit in the i-th CCAU to achieve the selection of the memristors in each 1T1R unit in the i-th CCAU, 1≤i≤N-1.
本实施例中,CCAU具体的工作过程包括:对反相器施加脉冲Di,并将脉冲Di衰减得到的脉冲Pi输入定值电阻R,以通过定值电阻R向CCAU施加驱动电压V0,此外,根据工艺控制,反相器工作时,PMOS管与NMOS管可以实现同时只能导通一个,即PMOS管导通时,NMOS管不导通,NMOS管导通时,PMOS管不导通。In this embodiment, the specific working process of CCAU includes: applying a pulse Di to the inverter, and inputting a pulse Pi obtained by attenuating the pulse Di into a fixed resistor R, so as to apply a driving voltage V0 to CCAU through the fixed resistor R. In addition, according to process control, when the inverter is working, only one of the PMOS tube and the NMOS tube can be turned on at the same time, that is, when the PMOS tube is turned on, the NMOS tube is not turned on, and when the NMOS tube is turned on, the PMOS tube is not turned on.
当CCAU中的各1T1R单元中为低阻态的忆阻器的个数不超过1时,反相器的输入电压NMOS管导通,此时反相器的输出电压为0,即CCAU的输出端向对应连接的位线输出的电压为0,实则向顶电极连接在对应位线上的进位忆阻器输出的电压为0,此处的对应位线即指CCAU的输出端对应连接的位线,下文中与此描述一致,因为0<Vset,因此顶电极连接在对应位线上的进位忆阻器的阻态不变,即进位忆阻器的逻辑值不变。When the number of low-resistance memristors in each 1T1R unit in CCAU does not exceed 1, the input voltage of the inverter The NMOS tube is turned on, and the output voltage of the inverter is 0. That is, the voltage output by the output end of CCAU to the corresponding bit line is 0. In fact, the voltage output to the carry memristor whose top electrode is connected to the corresponding bit line is 0. The corresponding bit line here refers to the bit line correspondingly connected to the output end of CCAU. The following description is consistent with this. Because 0<V set , the resistance state of the carry memristor whose top electrode is connected to the corresponding bit line remains unchanged, that is, the logic value of the carry memristor remains unchanged.
当CCAU中为低阻态的忆阻器个数超过1时,反相器的输入电压 P管导通,反相器的输出电压3.3V的高电平,即CCAU的输出端向对应连接的位线输出3.3V的高电平,实则向顶电极连接在对应位线上的进位忆阻器输出3.3V的高电平,3.3V>Vset,因此顶电极连接在对应位线上的进位忆阻器的阻态由高阻态切换为低阻态,即该进位忆阻器的逻辑值从0变为1,这相当于完成进位的计算。When the number of low-resistance memristors in CCAU exceeds 1, the input voltage of the inverter The P tube is turned on, and the output voltage of the inverter is a high level of 3.3V, that is, the output end of CCAU outputs a high level of 3.3V to the corresponding bit line, and actually outputs a high level of 3.3V to the carry memristor whose top electrode is connected to the corresponding bit line. 3.3V>V set , so the resistance state of the carry memristor whose top electrode is connected to the corresponding bit line is switched from a high resistance state to a low resistance state, that is, the logic value of the carry memristor changes from 0 to 1, which is equivalent to completing the carry calculation.
需要说明的是,在第i个CCAU工作时,只选通了第i行中的第一位线WLi-1与第二位线WLi-2的之间的MOS管,其他MOS管并未选通,这是为了防止第i个CCAU的输出端向对应连接的位线输出3.3V的高电平时,除了顶电极连接在对应位线上的进位忆阻器外,其他顶电极连接在该对应位线上的忆阻器也执行set操作,从而导致计算出错,1≤i≤N。此外,为保证CCAU中的各1T1R单元中的忆阻器的阻态不被改变,因此还需要满足V0<Vset。因此整个CCAU中所涉及的各电压的约束条件为:It should be noted that when the i-th CCAU is working, only the MOS tube between the first bit line WL i-1 and the second bit line WL i-2 in the i-th row is selected, and other MOS tubes are not selected. This is to prevent the output end of the i-th CCAU from outputting a high level of 3.3V to the corresponding connected bit line. In addition to the carry memristor with the top electrode connected to the corresponding bit line, other memristors with the top electrode connected to the corresponding bit line also perform a set operation, thereby causing calculation errors, 1≤i≤N. In addition, in order to ensure that the resistance state of the memristor in each 1T1R unit in the CCAU is not changed, it is also necessary to satisfy V 0 <V set . Therefore, the constraints of the voltages involved in the entire CCAU are:
补充说明的是,表1为CCAU所包括的低阻态的忆阻器个数不同时,对应的CCAU的分压情况表。It is additionally noted that Table 1 is a table showing the voltage division of the CCAU when the number of low-resistance memristors included in the CCAU is different.
表1.不同输入下,CCAU中的分压情况Table 1. Voltage division in CCAU under different input conditions
表1展示了当CCAU中的各1T1R单元中为低阻态的忆阻器的个数分别为0、1、2、3时,与之对应的反相器的输入电压UR及输出电压的值,以及进位忆阻器是否执行set操作。Table 1 shows the values of the input voltage UR and output voltage of the corresponding inverter when the number of low-resistance memristors in each 1T1R unit in the CCAU is 0, 1, 2, and 3, respectively, and whether the carry memristor performs a set operation.
需要说明的是,CCAU执行第i个进位操作的时间为(i-1)Ts至(i-1)Ts+Tpulse,进位操作即上述的set操作。Ts为相邻两个控制信号之间的延时,须满足:It should be noted that the time for CCAU to perform the i-th carry operation is (i-1)T s to (i-1)T s +T pulse , and the carry operation is the above-mentioned set operation. T s is the delay between two adjacent control signals, which must satisfy:
Ts=Tpulse+Tbuffer Ts = Tpulse + Tbuffer
Tpulse是脉冲Di的高电平时间,应该大到足以完成进位操作中的任何步骤,这由使用的忆阻器决定。Tbuffer是缓冲时间。在1T1R阵列中,开关的开启和关闭,以及控制信号的传输都需要时间,所以存在各个操作之间的缓冲时间。因此缓冲时间Tbuffer应该大于开关的开启,开关的关闭以及控制信号的延迟时间之和。可以在反相器输出端设置开关,来控制各个CCAU的输出作用时间。脉冲Di与脉冲Pi的设计,达到了相同效果,但避免了增加开关的面积、功耗。并且,在执行第i个进位操作的时间内,仅在进行工作的第i个CCAU中存在不为0的电压,其他没有工作的CCAU的功耗为0,这使得整个系统的功耗大大降低,1≤i≤N。T pulse is the high level time of pulse Di , which should be large enough to complete any step in the carry operation, which is determined by the memristor used. T buffer is the buffer time. In the 1T1R array, the opening and closing of the switch and the transmission of the control signal all require time, so there is a buffer time between each operation. Therefore, the buffer time T buffer should be greater than the sum of the delay time of the switch opening, the switch closing and the control signal. A switch can be set at the output end of the inverter to control the output action time of each CCAU. The design of pulse Di and pulse Pi achieves the same effect, but avoids increasing the area and power consumption of the switch. In addition, during the time of executing the i-th carry operation, there is a non-zero voltage only in the i-th CCAU that is working, and the power consumption of other CCAUs that are not working is 0, which greatly reduces the power consumption of the entire system, 1≤i≤N.
本实施例中,基于忆阻器的加法器的功能是计算Z=X+Y,其中X、Y为两个N位的二进制加数,Z为N+1位的二进制最终结果,可以定义计算过程中由第i位向第i+1位的进位为Qi+1,1≤i≤N,为了减少计算时延,要充分运用并行计算的优势,本实施例中实现计算Z=X+Y的过程包括两个部分,具体如下:In this embodiment, the function of the memristor-based adder is to calculate Z=X+Y, where X and Y are two N-bit binary addends, and Z is the N+1-bit binary final result. The carry from the i-th bit to the i+1-th bit in the calculation process can be defined as Qi+1 , 1≤i≤N. In order to reduce the calculation delay, the advantages of parallel computing should be fully utilized. In this embodiment, the process of calculating Z=X+Y includes two parts, which are as follows:
第一部分,通过加数Xi、加数Yi与进位数Qi计算向下一位的进位数Qi+1,第二部分,通过加数Xi、加数Yi与进位数Qi并行计算最终结果数Zi,第二部分的并行计算过程包括两个子步骤,其中,第一子步骤为通过加数Xi与加数Yi并行计算中间变量数Oi,第二子步骤为通过中间变量数Oi与进位数Qi并行计算最终结果数Zi,1≤i≤N。In the first part, the carry number Qi+1 to the next digit is calculated by the addend Xi , the addend Yi and the carry number Qi. In the second part, the final result number Zi is calculated in parallel by the addend Xi , the addend Yi and the carry number Qi . The parallel calculation process of the second part includes two sub-steps. The first sub-step is to calculate the intermediate variable number Oi in parallel by the addend Xi and the addend Yi , and the second sub-step is to calculate the final result number Zi in parallel by the intermediate variable number Oi and the carry number Qi , 1≤i≤N.
请参阅图1,基于图1所示的1T1R阵列结构,在计算Z=X+Y时,1T1R单元Ai中的忆阻器对应存储加数Xi,1T1R单元Bi中的忆阻器对应存储加数Yi,1T1R单元Ci中的忆阻器对应存储进位数Qi,1T1R单元Li中的忆阻器对应存储中间变量数Oi,1T1R单元Si中的忆阻器对应存储最终结果数Zi,1≤i≤N,1T1R单元CN+1中的忆阻器用于存储进位数QN+1,进位数Qi的第N+1位即为最终结果Z的第N+1位,其中,忆阻器所表示的逻辑值即对应该忆阻器所存储的数。Please refer to Figure 1. Based on the 1T1R array structure shown in Figure 1, when calculating Z=X+Y, the memristor in the 1T1R unit Ai corresponds to storing the addend Xi , the memristor in the 1T1R unit Bi corresponds to storing the addend Yi , the memristor in the 1T1R unit Ci corresponds to storing the carry number Qi , the memristor in the 1T1R unit Li corresponds to storing the intermediate variable number Oi , and the memristor in the 1T1R unit Si corresponds to storing the final result number Zi , 1≤i≤N, and the memristor in the 1T1R unit CN +1 is used to store the carry number QN +1 , and the N+1th bit of the carry number Qi is the N+1th bit of the final result Z, wherein the logic value represented by the memristor corresponds to the number stored in the memristor.
上述第一部分的计算过程通过CCAU来实现,即通过存储加数Xi的忆阻器对应的1T1R单元Ai、存储加数Yi的忆阻器对应的1T1R单元Bi及存储进位数Qi的忆阻器对应的1T1R单元Ci与第一位线WLi-1的第一端连接的外围电路构成CCAU,以此实现进位计算,1≤i≤N。在通过CCAU实现进位计算前,需要将各进位忆阻器初始化为高阻态,即将进位忆阻器的逻辑值初始化为0,具体内容请参照上述对进位忆阻器的描述。此外,1T1R单元Ai与1T1R单元Bi中的忆阻器分别用于存储加数Xi和Yi,因此,还需要分别将1T1R单元Ai与1T1R单元Bi中的忆阻器的阻态切换为对应其存储的加数所对应的阻态,例如,若1T1R单元A1中的忆阻器所存储的加数为1,则需要将1T1R单元A1中的忆阻器的阻态切换为低阻态,若1T1R单元A1中的忆阻器所存储的加数为0,则需要将1T1R单元A1中的忆阻器的阻态切换为高阻态。完成上述步骤后,通过CCAU即可实现进位计算,其具体过程请参照上述对CCAU工作过程的描述,为了避免重复,在此不再赘述。The calculation process of the first part is implemented by CCAU, that is, the 1T1R unit A i corresponding to the memristor storing the addend Xi , the 1T1R unit B i corresponding to the memristor storing the addend Yi , and the 1T1R unit C i corresponding to the memristor storing the carry number Qi are connected to the first end of the first bit line WL i-1 to form CCAU, so as to implement the carry calculation, 1≤i≤N. Before implementing the carry calculation by CCAU, each carry memristor needs to be initialized to a high impedance state, that is, the logic value of the carry memristor is initialized to 0. For details, please refer to the above description of the carry memristor. In addition, the memristors in the 1T1R unit A i and the 1T1R unit B i are used to store addends Xi and Yi , respectively. Therefore, the resistance states of the memristors in the 1T1R unit A i and the 1T1R unit B i need to be switched to resistance states corresponding to the addends stored therein. For example, if the addend stored in the memristor in the 1T1R unit A 1 is 1, the resistance state of the memristor in the 1T1R unit A 1 needs to be switched to a low resistance state. If the addend stored in the memristor in the 1T1R unit A 1 is 0, the resistance state of the memristor in the 1T1R unit A 1 needs to be switched to a high resistance state. After completing the above steps, carry calculation can be realized through CCAU. For the specific process, please refer to the above description of the CCAU working process. In order to avoid repetition, it will not be repeated here.
第二部分的计算过程通过MAGIC逻辑门实现,MAGIC逻辑门即为忆阻器辅助逻辑门(Memristor-Aided LoGIC,MAGIC),在第一子步骤中,通过MAGIC逻辑门实现根据加数Xi与加数Yi异或运算(XOR)得到中间变量数Oi,即Oi=Xi XOR Yi,在第二子步骤中,通过MAGIC逻辑门实现根据中间变量数Oi与进位数Qi异或运算得到最终结果数Zi,即Zi=Oi XOR Qi。The calculation process of the second part is implemented by MAGIC logic gates, which are memristor-aided logic gates (MAGIC). In the first sub-step, the MAGIC logic gates are used to implement the XOR operation (XOR) of addend Xi and addend Yi to obtain the intermediate variable number Oi , that is, Oi = Xi XOR Yi . In the second sub-step, the MAGIC logic gates are used to implement the XOR operation (XOR) of the intermediate variable number Oi and the carry number Qi to obtain the final result number Zi , that is, Zi = Oi XOR Qi .
具体的,MAGIC逻辑门以MAGIC OR门和MAGIC NAND门为基础,通过两次驱动电压的施加步骤实现异或运算,同时MAGIC逻辑门有两种形式,第一种为构成MAGIC逻辑门的1T1R单元中的忆阻器的顶电极连在一起,请参阅图7A与图7B,图7A与图7B分别示出了忆阻器的顶电极连接在一起的MAGIC OR门与MAGIC NAND门,其中,IN1和IN2表示异或运算中作为输入的1T1R单元,OUT表示异或运算中作为输出的1T1R单元,各1I1T单元中的MOS管已省去。在施加两次驱动电压来实现异或运算之前,需要对计算过程中作为输入的各1T1R单元中的忆阻器进行初始化,即将1T1R单元IN1和1T1R单元IN2中的忆阻器初始化为高阻态。Specifically, the MAGIC logic gate is based on the MAGIC OR gate and the MAGIC NAND gate, and realizes the XOR operation through two steps of applying the driving voltage. At the same time, the MAGIC logic gate has two forms. The first form is that the top electrodes of the memristors in the 1T1R units constituting the MAGIC logic gate are connected together. Please refer to Figures 7A and 7B, which respectively show the MAGIC OR gate and the MAGIC NAND gate in which the top electrodes of the memristors are connected together, wherein IN 1 and IN 2 represent the 1T1R units used as inputs in the XOR operation, OUT represents the 1T1R units used as outputs in the XOR operation, and the MOS tubes in each 1I1T unit have been omitted. Before applying the driving voltage twice to realize the XOR operation, the memristors in each 1T1R unit used as inputs in the calculation process need to be initialized, that is, the memristors in the 1T1R unit IN 1 and the 1T1R unit IN 2 are initialized to a high impedance state.
完成初始化后,第一次施加驱动电压的步骤如图7A所示,使1T1R单元OUT中的忆阻器的底电极接地,并在1T1R单元IN1和1T1R单元IN2中的忆阻器的底电极施加驱动电压VOR,第二次施加驱动电压的步骤如图7B所示,使1T1R单元IN1和1T1R单元IN2中的忆阻器的底电极接地,并在1T1R单元OUT中的忆阻器的底电极施加驱动电压VNAND。通过上述两个驱动电压的施加步骤,实现根据1T1R单元IN1和1T1R单元IN2中的忆阻器的逻辑值亦或运算得到1T1R单元OUT中的忆阻器的逻辑值。After initialization is completed, the first step of applying a driving voltage is shown in FIG. 7A , so that the bottom electrode of the memristor in the 1T1R unit OUT is grounded, and a driving voltage V OR is applied to the bottom electrodes of the memristors in the 1T1R unit IN 1 and the 1T1R unit IN 2. The second step of applying a driving voltage is shown in FIG. 7B , so that the bottom electrodes of the memristors in the 1T1R unit IN 1 and the 1T1R unit IN 2 are grounded, and a driving voltage V NAND is applied to the bottom electrode of the memristor in the 1T1R unit OUT. Through the above two steps of applying driving voltages, the logical value of the memristor in the 1T1R unit OUT is obtained by either OR operation according to the logical values of the memristors in the 1T1R unit IN 1 and the 1T1R unit IN 2 .
MAGIC逻辑门的另一种形式为构成MAGIC逻辑门的1T1R单元中的忆阻器的底电极连接在一起,请参阅图7C与图7D,图7C与图7D分别示出了忆阻器的底电极连接在一起的MAGIC OR门与MAGIC NAND门,图中各标号请参照上述对图7A与图7B中标号的解释,此外,对于忆阻器的底电极连接在一起的MAGIC OR门与MAGIC NAND门,只需要对称地修改两次驱动电压的施加步骤,即可实现异或运算,两次驱动电压的施加步骤可以参照上述通过忆阻器的顶电极连在一起的MAGIC NAND门与MAGIC OR门来实现异或运算的具体步骤,为了避免重复,在此不做赘述。Another form of the MAGIC logic gate is that the bottom electrodes of the memristors in the 1T1R unit constituting the MAGIC logic gate are connected together, please refer to Figures 7C and 7D, Figures 7C and 7D respectively show a MAGIC OR gate and a MAGIC NAND gate in which the bottom electrodes of the memristors are connected together. For the numbers in the figures, please refer to the above explanations of the numbers in Figures 7A and 7B. In addition, for the MAGIC OR gate and the MAGIC NAND gate in which the bottom electrodes of the memristors are connected together, it is only necessary to symmetrically modify the application steps of the driving voltage twice to realize the XOR operation. The application steps of the two driving voltages can refer to the specific steps of realizing the XOR operation by connecting the MAGIC NAND gate and the MAGIC OR gate together through the top electrodes of the memristors. In order to avoid repetition, they are not described here.
为了实现多个异或运算的并行,可在1T1R阵列中一次性选通一行或一列忆阻器,根据制备的工艺,1T1R阵列有两种,在不同的1T1R阵列中,根据MAGIC逻辑门的不同形式修改驱动电压的施加方案以实现多个异或运算的并行。In order to realize multiple XOR operations in parallel, one row or one column of memristors can be enabled at one time in the 1T1R array. According to the preparation process, there are two types of 1T1R arrays. In different 1T1R arrays, the driving voltage application scheme is modified according to the different forms of MAGIC logic gates to realize multiple XOR operations in parallel.
请参阅图8A,图8A所示的1T1R阵列能够实现一次性选通一列忆阻器,以实现多个或运算并示例,在图8A中,OR-1,OR-2…OR-N为N个或运算的编号,1T1R单元A1、1T1R单元A2…1T1R单元AN的栅极连接在栅极控制线G1上,1T1R单元B1、1T1R单元B2…1T1R单元BN的栅极连接在栅极控制线G2上,1T1R单元L1、1T1R单元L2…1T1R单元LN的栅极连接在栅极控制线G3上。1T1R单元A1,1T1R单元B1及1T1R单元L1中的忆阻器的顶电极连接在位线WL1上,1T1R单元A2,1T1R单元B2及1T1R单元L2中的忆阻器的顶电极连接在位线WL2上…1T1R单元AN,1T1R单元BN及1T1R单元LN中的忆阻器的顶电极连接在位线WLN上。Please refer to FIG8A . The 1T1R array shown in FIG8A can realize one-time selection of a column of memristors to realize multiple OR operations and exemplify them. In FIG8A , OR-1, OR-2…OR-N are numbers of N OR operations. The gates of 1T1R unit A1 , 1T1R unit A2 …1T1R unit AN are connected to the gate control line G1 , the gates of 1T1R unit B1 , 1T1R unit B2 …1T1R unit NB are connected to the gate control line G2 , and the gates of 1T1R unit L1 , 1T1R unit L2 …1T1R unit NL are connected to the gate control line G3 . The top electrodes of the memristors in the 1T1R cell A1 , 1T1R cell B1 and 1T1R cell L1 are connected to the bit line WL1 , the top electrodes of the memristors in the 1T1R cell A2 , 1T1R cell B2 and 1T1R cell L2 are connected to the bit line WL2 … The top electrodes of the memristors in the 1T1R cell AN , 1T1R cell NB and 1T1R cell NL are connected to the bit line WLN .
在栅极控制线G1,栅极控制线G2与栅极控制线G3上施加高电平以导通各列1T1R单元中的MOS管,从而导通各列1T1R单元中的忆阻器,在字线BL1与字线BL2上施加高电平幅度为VOR的脉冲,即可实现N个或运算的并行,即一次实现根据1T1R单元Ai中的忆阻器的逻辑值与1T1R单元Bi中的忆阻器的逻辑值进行或运算得到1T1R单元Li中的忆阻器的逻辑值,1≤i≤N。A high level is applied to the gate control line G1 , the gate control line G2 and the gate control line G3 to turn on the MOS tubes in each column of the 1T1R unit, thereby turning on the memristors in each column of the 1T1R unit. A high level pulse with an amplitude of VOR is applied to the word line BL1 and the word line BL2 to realize N parallel OR operations, that is, the logic value of the memristor in the 1T1R unit L i is obtained by performing an OR operation based on the logic value of the memristor in the 1T1R unit A i and the logic value of the memristor in the 1T1R unit B i , 1≤i≤N.
请参阅图8B,图8B所示的1T1R阵列能够实现一次性选通一行忆阻器,同样以实现多个或运算并示例,在图8B中,OR-1,OR-2…OR-N为N个或运算的编号,1T1R单元A1、1T1R单元A2…1T1R单元AN的栅极连接在栅极控制线G1上,1T1R单元B1、1T1R单元B2…1T1R单元BN的栅极连接在栅极控制线G2上,1T1R单元L1、1T1R单元L2…1T1R单元LN的栅极连接在栅极控制线G3上。1T1R单元A1,1T1R单元B1及1T1R单元L1中的忆阻器的顶电极连接在字线BL3上,1T1R单元A2,1T1R单元B2及1T1R单元L2中的忆阻器的顶电极连接在字线BL2上…1T1R单元AN,1T1R单元BN及1T1R单元LN中的忆阻器的顶电极连接在字线BLN上。Please refer to FIG. 8B . The 1T1R array shown in FIG. 8B can realize one-time gating of a row of memristors. Similarly, multiple OR operations are realized and exemplified. In FIG. 8B , OR-1, OR-2…OR-N are numbers of N OR operations. The gates of 1T1R unit A 1 , 1T1R unit A 2 …1T1R unit AN are connected to the gate control line G 1 , the gates of 1T1R unit B 1 , 1T1R unit B 2 …1T1R unit NB are connected to the gate control line G 2 , and the gates of 1T1R unit L 1 , 1T1R unit L 2 …1T1R unit NL are connected to the gate control line G 3 . The top electrodes of the memristors in the 1T1R cell A1 , 1T1R cell B1 and 1T1R cell L1 are connected to word line BL3 , the top electrodes of the memristors in the 1T1R cell A2 , 1T1R cell B2 and 1T1R cell L2 are connected to word line BL2 , ... the top electrodes of the memristors in the 1T1R cell AN , 1T1R cell NB and 1T1R cell NL are connected to word line BLN .
在栅极控制线G1,栅极控制线G2与栅极控制线G3上施加高电平以导通各列1T1R单元中的MOS管,从而导通各列1T1R单元中的忆阻器,在位线WL3上施加高电平幅度为VOR的脉冲,即可实现N个或运算的并行,即一次实现根据1T1R单元Ai中的忆阻器的逻辑值与1T1R单元Bi中的忆阻器的逻辑值进行或运算得到1T1R单元Li中的忆阻器的逻辑值,1≤i≤N。A high level is applied to the gate control line G1 , the gate control line G2 and the gate control line G3 to turn on the MOS tubes in each column of the 1T1R unit, thereby turning on the memristors in each column of the 1T1R unit. A high level pulse with an amplitude of VOR is applied to the bit line WL3 to realize N parallel OR operations, that is, the logic value of the memristor in the 1T1R unit L i is obtained by performing an OR operation based on the logic value of the memristor in the 1T1R unit A i and the logic value of the memristor in the 1T1R unit B i , 1≤i≤N.
需要说明的是,在图8A与图8B所示的两种1T1R阵列中,通过MAGIC逻辑门实现多个异或运算的并行可参照通过上述两个1T1R阵列中实现多个或运算并行的具体过程。此外,本实施例中所述加法器所采用的1T1R阵列结构由图8A所示的1T1R阵列构成,采用图8B所示的1T1R阵列来构成加法器的1T1R阵列结构可以达到同样的效果,其具体采用可根据实际需求进行选择,在此不做限定。It should be noted that, in the two 1T1R arrays shown in FIG8A and FIG8B , the parallelization of multiple XOR operations through MAGIC logic gates can refer to the specific process of implementing multiple OR operations in parallel through the above two 1T1R arrays. In addition, the 1T1R array structure used by the adder in this embodiment is composed of the 1T1R array shown in FIG8A , and the 1T1R array structure of the adder formed by the 1T1R array shown in FIG8B can achieve the same effect, and its specific use can be selected according to actual needs, and is not limited here.
需要说明的是,采用并行计算的前提条件是:所有的输入、输出对齐。在实施例1中所述的基于忆阻器的加法器中,构成每一个MAGIC逻辑门的所有忆阻器的顶电极连在一起,这要求在1T1R阵列中,构成MAGIC逻辑门的忆阻器必须在同一行。因此要并行计算,所有构成MAGIC逻辑门进行异或运算的忆阻器必须要在同一行,第二子步骤中,通过进位数Qi与中间变量数Oi并行计算最终结果数Zi,因为进位数Q+1是由前一位的进位数Qi与加数Xi及加数Yi计算得出,因此,第一部分的计算过程中,不仅要完成进位数Qi+1的计算,还要将进位数Qi+1移动至与加数Xi+1及加数Yi+1在同一列,其中,1≤i≤N。It should be noted that the prerequisite for parallel computing is that all inputs and outputs are aligned. In the memristor-based adder described in Example 1, the top electrodes of all memristors constituting each MAGIC logic gate are connected together, which requires that in the 1T1R array, the memristors constituting the MAGIC logic gate must be in the same row. Therefore, for parallel computing, all memristors constituting the MAGIC logic gate for XOR operation must be in the same row. In the second sub-step, the final result number Zi is calculated in parallel by the carry number Qi and the intermediate variable number Oi , because the carry number Q +1 is calculated by the carry number Qi of the previous bit and the addend Xi and the addend Yi . Therefore, in the calculation process of the first part, not only the calculation of the carry number Qi+1 must be completed, but also the carry number Qi +1 must be moved to the same column as the addend Xi +1 and the addend Yi +1 , where 1≤i≤N.
举例来说,假设按照一位全加器的实现方案完成一次进位Qout的计算、对齐的时间为TQOUT,则本实施例中,第一部分时延T1=N×TQOUT。第二部分时延T2最小为一位全加器计算一次最终结果Zout的时间TZOUT。因此,加法器主要的时延在第一部分,优化的潜力也主要在第一部分,迫切需要用更少的步骤完成进位数Qi+1的计算和对齐,实施例中,通过CCAU来实现计算进位数Qi+1,不需要进位数Qi+1与加数Xi、加数Yi及进位数Qi位于同一行,直接实现了对齐,省去了对齐所需要的时间,其中,1≤i≤N。For example, assuming that the time to complete the calculation and alignment of a carry Q out according to the implementation scheme of a one-bit full adder is T QOUT , then in this embodiment, the first part of the delay T 1 =N×T QOUT . The second part of the delay T 2 is at least the time T ZOUT of a one-bit full adder to calculate the final result Zout. Therefore, the main delay of the adder is in the first part, and the optimization potential is also mainly in the first part. It is urgent to use fewer steps to complete the calculation and alignment of the carry number Qi +1. In the embodiment, CCAU is used to calculate the carry number Qi +1 , and the carry number Qi +1 does not need to be in the same row as the addend Xi , the addend Yi and the carry number Qi , and the alignment is directly achieved, which saves the time required for alignment, wherein 1≤i≤N.
实施例1中所述的基于忆阻器的加法器,计算结果直接存储在忆阻器中,具有非易失性,加法器的主体采用1T1R阵列结构,具有较小的面积且易于集成,计算过程中采用CCAU来实现进位,省去了对齐工作,减少了时延。The memristor-based adder described in Example 1 stores calculation results directly in the memristor and is non-volatile. The main body of the adder adopts a 1T1R array structure, which has a small area and is easy to integrate. CCAU is used to implement carry during the calculation process, which eliminates alignment work and reduces latency.
实施例2Example 2
参照图9,图9为本实施例提供的一种加法器的驱动方法,所述方法可以用于驱动上述实施例1中所述的基于忆阻器的加法器,以下将对所述加法器的驱动方法的各个步骤进行详细说明:Referring to FIG. 9 , FIG. 9 is a driving method of an adder provided in this embodiment, and the method can be used to drive the memristor-based adder described in the above-mentioned embodiment 1. The steps of the driving method of the adder are described in detail below:
步骤S901,根据第一1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值、第二1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值及第三1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值,确定第三1T1R子阵列的第i+1个1T1R单元中的忆阻器的逻辑值,1≤i≤N-1,以及根据第一1T1R子阵列的第N个1T1R单元中的忆阻器的逻辑值、第二1T1R子阵列的第N个1T1R单元中的忆阻器的逻辑值及第三1T1R子阵列的第N个1T1R单元中的忆阻器的逻辑值,确定第五1T1R子阵列的第N+1个1T1R单元中的忆阻器的逻辑值。Step S901, determining the logical value of the memristor in the i+1th 1T1R cell of the third 1T1R subarray according to the logical value of the memristor in the i-th 1T1R cell of the first 1T1R subarray, the logical value of the memristor in the i-th 1T1R cell of the second 1T1R subarray, and the logical value of the memristor in the i-th 1T1R cell of the third 1T1R subarray, 1≤i≤N-1; and determining the logical value of the memristor in the N+1th 1T1R cell of the fifth 1T1R subarray according to the logical value of the memristor in the N-th 1T1R cell of the first 1T1R subarray, the logical value of the memristor in the N-th 1T1R cell of the second 1T1R subarray, and the logical value of the memristor in the N-th 1T1R cell of the third 1T1R subarray.
具体的,参照实施例1中的描述,第一1T1R子阵列的第i个1T1R单元可以表示为1T1R单元Ai,第二1T1R子阵列的第i个1T1R单元可以表示为1T1R单元Bi,第三1T1R子阵列的第i个1T1R单元可以表示为1T1R单元Ci。实施例1中在计算Z=X+Y时,1T1R单元Ai中的忆阻器对应存储加数Xi,1T1R单元Bi中的忆阻器对应存储加数Yi、1T1R单元Ci中的忆阻器对应存储进位数Qi。由此可知,步骤S901的内容即对应实施例1中的计算Z=X+Y的过程的第一部分,即通过加数Xi、加数Yi与进位数Qi计算向下一位的进位数Qi+1,1≤i≤N,其计算过程如下:Specifically, referring to the description in Embodiment 1, the i-th 1T1R unit of the first 1T1R subarray can be represented as 1T1R unit A i , the i-th 1T1R unit of the second 1T1R subarray can be represented as 1T1R unit B i , and the i-th 1T1R unit of the third 1T1R subarray can be represented as 1T1R unit C i . In Embodiment 1, when calculating Z=X+Y, the memristor in the 1T1R unit A i stores the addend Xi correspondingly, the memristor in the 1T1R unit B i stores the addend Yi correspondingly, and the memristor in the 1T1R unit C i stores the carry number Qi correspondingly. It can be seen that the content of step S901 corresponds to the first part of the process of calculating Z=X+Y in Embodiment 1, that is, calculating the carry number Qi+1 to the next bit through the addend Xi , the addend Yi and the carry number Qi , 1≤i≤N, and the calculation process is as follows:
首先通过加数X1、加数Y1及进位数Q1计算进位数Q2,通过加数X2、加数Y2及进位数Q2计算进位数Q3…通过加数XN、加数YN及进位数QN计算进位数QN+1。First, the carry number Q 2 is calculated by the addend X 1 , the addend Y 1 and the carry number Q 1 , and the carry number Q 3 is calculated by the addend X 2 , the addend Y 2 and the carry number Q 2 . ... and the carry number Q N+1 is calculated by the addend X N , the addend Y N and the carry number Q N .
综上所述,计算得到的进位数Qi+1即对应步骤S901中所述的第三1T1R子阵列的第i+1个1T1R单元中的忆阻器的逻辑值,进位数QN+1即对应步骤S901中所述的第五1T1R子阵列的第N+1个1T1R单元中的忆阻器的逻辑值。1≤i≤N-1。关于第一部分的计算过程的具体内容可以参阅实施例1的关于CCAU工作过程的相关描述,为避免重复,在此不再赘述。In summary, the calculated carry number Qi+1 corresponds to the logic value of the memristor in the i+1th 1T1R unit of the third 1T1R subarray described in step S901, and the carry number QN +1 corresponds to the logic value of the memristor in the N+1th 1T1R unit of the fifth 1T1R subarray described in step S901. 1≤i≤N-1. For the specific content of the calculation process of the first part, please refer to the relevant description of the CCAU working process in Example 1. To avoid repetition, it will not be repeated here.
步骤S902,根据所述第一1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值及所述第二1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值,确定所述第四1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值,1≤i≤N。Step S902: Determine the logic value of the memristor in the i-th 1T1R unit of the fourth 1T1R subarray according to the logic value of the memristor in the i-th 1T1R unit of the first 1T1R subarray and the logic value of the memristor in the i-th 1T1R unit of the second 1T1R subarray, 1≤i≤N.
具体的,参照实施例1中的描述,第一1T1R子阵列的第i个1T1R单元可以表示为1T1R单元Ai,第二1T1R子阵列的第i个1T1R单元可以表示为1T1R单元Bi,第四1T1R子阵列的第i个1T1R单元可以表示为1T1R单元Li。实施例1中在计算Z=X+Y时,1T1R单元Ai中的忆阻器对应存储加数Xi,1T1R单元Bi中的忆阻器对应存储加数Yi、1T1R单元Li中的忆阻器对应中间变量数Oi。Specifically, referring to the description in Embodiment 1, the i-th 1T1R unit of the first 1T1R subarray may be represented as a 1T1R unit A i , the i-th 1T1R unit of the second 1T1R subarray may be represented as a 1T1R unit B i , and the i-th 1T1R unit of the fourth 1T1R subarray may be represented as a 1T1R unit L i . In Embodiment 1, when calculating Z=X+Y, the memristor in the 1T1R unit A i corresponds to the storage addend X i , the memristor in the 1T1R unit B i corresponds to the storage addend Y i , and the memristor in the 1T1R unit L i corresponds to the intermediate variable number O i .
由此可知,步骤S902的内容对应实施例1中所述的计算Z=X+Y的过程的第二部分中的第一子步骤,即通过加数Xi与加数Yi并行计算得到中间变量数Oi,计算得到的中间变量数Oi即对应步骤S901中所述的第四1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值,1≤i≤N。关于第一子步骤的计算通过MAGIC逻辑门来实现,具体的计算过程可以参阅实施例1中对MAGIC逻辑门的相关描述,为避免重复,在此不再赘述。It can be seen that the content of step S902 corresponds to the first sub-step in the second part of the process of calculating Z=X+Y described in Example 1, that is, the intermediate variable number Oi is obtained by parallel calculation of the addend Xi and the addend Yi , and the calculated intermediate variable number Oi corresponds to the logic value of the memristor in the i-th 1T1R unit of the fourth 1T1R subarray described in step S901, 1≤i≤N. The calculation of the first sub-step is implemented by the MAGIC logic gate. The specific calculation process can refer to the relevant description of the MAGIC logic gate in Example 1, and it will not be repeated here to avoid repetition.
步骤S903,根据所述第三1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值及所述第四1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值,确定所述第五1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值,1≤i≤N。Step S903, determining the logic value of the memristor in the i-th 1T1R unit of the fifth 1T1R subarray according to the logic value of the memristor in the i-th 1T1R unit of the third 1T1R subarray and the logic value of the memristor in the i-th 1T1R unit of the fourth 1T1R subarray, 1≤i≤N.
具体的,请参阅上述步骤S902的相关描述,步骤S903对应实施例1所述的计算Z=X+Y的过程的第二部分中的第二子步骤,即通过进位数Qi与中间变量数Oi并行计算最终结果数Zi。最终结果数Zi即对应步骤S903中所述的第五1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值,第二子步骤的计算也通过MAGIC逻辑门来实现,具体的计算过程可以参阅实施例1中对MAGIC逻辑门的相关描述,为避免重复,在此不再赘述。Specifically, please refer to the relevant description of the above step S902. Step S903 corresponds to the second sub-step in the second part of the process of calculating Z=X+Y described in Example 1, that is, the final result number Zi is calculated in parallel by the carry number Qi and the intermediate variable number Oi . The final result number Zi corresponds to the logic value of the memristor in the i-th 1T1R unit of the fifth 1T1R subarray described in step S903. The calculation of the second sub-step is also implemented by the MAGIC logic gate. The specific calculation process can refer to the relevant description of the MAGIC logic gate in Example 1. To avoid repetition, it will not be repeated here.
步骤S904,根据所述第五1T1R子阵列的N+1个1T1R单元中的忆阻器的逻辑值确定最终结果,其中,忆阻器的逻辑值由忆阻器的阻态确定,忆阻器的高阻态代表逻辑值0,忆阻器的低阻态代表逻辑值1。Step S904, determining a final result according to the logic values of the memristors in the N+1 1T1R units of the fifth 1T1R subarray, wherein the logic value of the memristor is determined by the resistance state of the memristor, the high resistance state of the memristor represents a logic value of 0, and the low resistance state of the memristor represents a logic value of 1.
具体的,第五1T1R子阵列的第1至N+1个1T1R单元中的忆阻器对应存储最终结果数Zi的第1至N位,及进位数QN+1,因此,计算结束后,可直接通过第五1T1R子阵列的N+1个1T1R单元中的忆阻器的逻辑值获取计算结果,即第五1T1R子阵列中第1至N+1个1T1R单元中的忆阻器的逻辑值对应存储计算结果Z的第1至N+1位,1≤i≤N。Specifically, the memristors in the 1st to N+1st 1T1R units of the fifth 1T1R subarray store the 1st to Nth bits of the final result number Zi and the carry number QN +1 accordingly. Therefore, after the calculation is completed, the calculation result can be directly obtained through the logic values of the memristors in the N+1st 1T1R units of the fifth 1T1R subarray, that is, the logic values of the memristors in the 1st to N+1st 1T1R units of the fifth 1T1R subarray store the 1st to N+1th bits of the calculation result Z accordingly, 1≤i≤N.
在一具体的实施方式中,确定所述第三1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值的步骤,包括:In a specific implementation, the step of determining the logic value of the memristor in the i-th 1T1R unit of the third 1T1R subarray includes:
根据所述第一1T1R子阵列的第i-1个1T1R单元中的忆阻器的逻辑值、所述第二1T1R子阵列的第i-1个1T1R单元中的忆阻器的逻辑值及第三1T1R子阵列的第i-1个1T1R单元中的忆阻器的逻辑值,确定所述第三1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值,2≤i≤N。The logic value of the memristor in the i-1th 1T1R unit of the third 1T1R subarray is determined according to the logic value of the memristor in the i-1th 1T1R unit of the first 1T1R subarray, the logic value of the memristor in the i-1th 1T1R unit of the second 1T1R subarray, and the logic value of the memristor in the i-1th 1T1R unit of the third 1T1R subarray, 2≤i≤N.
在一具体的实施方式中,所述根据第一1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值、第二1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值及第三1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值,确定第三1T1R子阵列的第i+1个1T1R单元中的忆阻器的逻辑值,1≤i≤N-1,以及根据第一1T1R子阵列的第N个1T1R单元中的忆阻器的逻辑值、第二1T1R子阵列的第N个1T1R单元中的忆阻器的逻辑值及第三1T1R子阵列的第N个1T1R单元中的忆阻器的逻辑值,确定第五1T1R子阵列的第N+1个1T1R单元中的忆阻器的逻辑值的步骤,包括:In a specific implementation, the step of determining the logical value of the memristor in the i+1th 1T1R unit of the third 1T1R subarray according to the logical value of the memristor in the i-th 1T1R unit of the first 1T1R subarray, the logical value of the memristor in the i-th 1T1R unit of the second 1T1R subarray, and the logical value of the memristor in the i-th 1T1R unit of the third 1T1R subarray, 1≤i≤N-1, and determining the logical value of the memristor in the N+1th 1T1R unit of the fifth 1T1R subarray according to the logical value of the memristor in the N-th 1T1R unit of the first 1T1R subarray, the logical value of the memristor in the N-th 1T1R unit of the second 1T1R subarray, and the logical value of the memristor in the N-th 1T1R unit of the third 1T1R subarray, comprises:
选通所述第一1T1R子阵列对应的栅极控制线、所述第二1T1R子阵列对应的栅极控制线及所述第三1T1R子阵列对应的栅极控制线;Turning on the gate control line corresponding to the first 1T1R sub-array, the gate control line corresponding to the second 1T1R sub-array, and the gate control line corresponding to the third 1T1R sub-array;
选通第i个开关模块,在第i个外围电路施加驱动电压;The i-th switch module is turned on, and a driving voltage is applied to the i-th peripheral circuit;
确定所述第一1T1R子阵列的第i个1T1R单元中的忆阻器、所述第二1T1R子阵列的第i个1T1R单元中的忆阻器及所述第三1T1R子阵列的第i个1T1R单元中的忆阻器中处于低阻态的第一忆阻器数量;Determine the number of first memristors in a low resistance state among the memristors in the i-th 1T1R unit of the first 1T1R subarray, the memristors in the i-th 1T1R unit of the second 1T1R subarray, and the memristors in the i-th 1T1R unit of the third 1T1R subarray;
判断所述第一忆阻器数量是否大于1;Determining whether the number of the first memristors is greater than 1;
当所述第一忆阻器数量大于1时,通过第i个外围电路的第一端向第i+1个第二位线输出高电平,以控制所述第三1T1R子阵列的第i个1T1R单元中的忆阻器执行set操作,所述set操作用于将忆阻器从高阻态切换为低阻态;When the number of the first memristors is greater than 1, a high level is output to the (i+1)th second bit line through the first end of the i-th peripheral circuit to control the memristor in the i-th 1T1R unit of the third 1T1R subarray to perform a set operation, wherein the set operation is used to switch the memristor from a high resistance state to a low resistance state;
当所述第一忆阻器数量小于或等于1时,通过第i个外围电路的第一端向第i+1个第二位线输出低电平,以控制所述第三1T1R子阵列的第i个1T1R单元中的忆阻器不执行所述set操作,1≤i≤N-1。When the number of the first memristors is less than or equal to 1, a low level is output to the i+1th second bit line through the first end of the i-th peripheral circuit to control the memristor in the i-th 1T1R unit of the third 1T1R subarray not to perform the set operation, 1≤i≤N-1.
具体的,选通栅极控制线G1,导通了1T1R单元Ai中的各MOS管,以使1T1R单元Ai中的各忆阻器的底电极接地、选通栅极控制线G2,导通了1T1R单元Bi中的各MOS管,以使1T1R单元Bi中的各忆阻器的底电极接地、选通栅极控制线G3,导通了1T1R单元Ci中的各MOS管,以使1T1R单元Ci中的各忆阻器的底电极接地。再选通第i个作为开关的MOS管,以使1T1R单元Ai、1T1R单元Bi、1T1R单元Ci与第i个外围电路构成CCAUi,1≤i≤N。第一忆阻器数量为CCAUi所包括的各1T1R单元中处于低阻态的忆阻器的数量。Specifically, the gate control line G1 is selected to turn on each MOS transistor in the 1T1R unit A i , so that the bottom electrode of each memristor in the 1T1R unit A i is grounded, the gate control line G2 is selected to turn on each MOS transistor in the 1T1R unit B i , so that the bottom electrode of each memristor in the 1T1R unit B i is grounded, and the gate control line G3 is selected to turn on each MOS transistor in the 1T1R unit C i , so that the bottom electrode of each memristor in the 1T1R unit C i is grounded. Then the i-th MOS transistor as a switch is selected to make the 1T1R unit A i , 1T1R unit B i , 1T1R unit C i and the i-th peripheral circuit form CCAU i , 1≤i≤N. The first number of memristors is the number of memristors in the low resistance state in each 1T1R unit included in CCAU i .
通过上述步骤,以实现通过CCAUi来计算进位数Q1,进位数Q1即对应第三1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值,1≤i≤N-1,通过CCAU计算进位数Q1的具体过程请参阅实施例1中对CCAU工作过程的相关描述,为避免重复,在此不再赘述。Through the above steps, the carry number Q 1 is calculated by CCAU i . The carry number Q 1 corresponds to the logic value of the memristor in the i-th 1T1R unit of the third 1T1R subarray, 1≤i≤N-1. For the specific process of calculating the carry number Q 1 by CCAU, please refer to the relevant description of the CCAU working process in Example 1. To avoid repetition, it will not be repeated here.
在一具体的实施方式中,所述根据第一1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值、第二1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值及第三1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值,确定第三1T1R子阵列的第i+1个1T1R单元中的忆阻器的逻辑值,1≤i≤N-1,以及根据第一1T1R子阵列的第N个1T1R单元中的忆阻器的逻辑值、第二1T1R子阵列的第N个1T1R单元中的忆阻器的逻辑值及第三1T1R子阵列的第N个1T1R单元中的忆阻器的逻辑值,确定第五1T1R子阵列的第N+1个1T1R单元中的忆阻器的逻辑值的步骤,还包括:In a specific implementation, the step of determining the logical value of the memristor in the i+1th 1T1R cell of the third 1T1R subarray according to the logical value of the memristor in the i-th 1T1R cell of the first 1T1R subarray, the logical value of the memristor in the i-th 1T1R cell of the second 1T1R subarray, and the logical value of the memristor in the i-th 1T1R cell of the third 1T1R subarray, 1≤i≤N-1, and determining the logical value of the memristor in the N+1th 1T1R cell of the fifth 1T1R subarray according to the logical value of the memristor in the N-th 1T1R cell of the first 1T1R subarray, the logical value of the memristor in the N-th 1T1R cell of the second 1T1R subarray, and the logical value of the memristor in the N-th 1T1R cell of the third 1T1R subarray, further includes:
选通所述第五1T1R子阵列对应的栅极控制线及第N个开关模块,在第N个外围电路施加驱动电压;Selecting the gate control line corresponding to the fifth 1T1R sub-array and the Nth switch module, and applying a driving voltage to the Nth peripheral circuit;
确定所述第一1T1R子阵列的第N个1T1R单元中的忆阻器、所述第二1T1R子阵列的第N个1T1R单元中的忆阻器及所述第三1T1R子阵列的第N个1T1R单元中的忆阻器中处于低阻态的第二忆阻器数量;Determine the number of second memristors in a low resistance state among the memristors in the Nth 1T1R unit of the first 1T1R subarray, the memristors in the Nth 1T1R unit of the second 1T1R subarray, and the memristors in the Nth 1T1R unit of the third 1T1R subarray;
判断所述第二忆阻器数量是否大于1;Determining whether the number of the second memristors is greater than 1;
当所述第二忆阻器数量大于1时,通过第N个外围电路的第一端向第三位线输出高电平,以控制所述第五1T1R子阵列的第N+1个1T1R单元中的忆阻器执行所述set操作;When the number of the second memristors is greater than 1, a high level is output to the third bit line through the first end of the Nth peripheral circuit to control the memristor in the N+1th 1T1R unit of the fifth 1T1R subarray to perform the set operation;
当所述第二忆阻器数量小于或等于1时,通过第N个外围电路的第一端向第三位线输出低电平,以控制所述第五1T1R子阵列的第N+1个1T1R单元中的忆阻器不执行所述set操作。When the number of the second memristors is less than or equal to 1, a low level is output to the third bit line through the first end of the Nth peripheral circuit to control the memristor in the N+1th 1T1R unit of the fifth 1T1R subarray not to perform the set operation.
具体的,选通栅极控制线G5,导通1T1R单元CN+1中的MOS管,使1T1R单元CN+1中的忆阻器接地,选通第N个作为开关的MOS管,从而使第1T1R单元AN、1T1R单元中BN、1T1R单元CN与第N个外围电路构成CCAUN,通过CCAUN来计算进位数QN+1。1≤i≤N+1。进位数QN+1即对应第五1T1R子阵列的第N+1个1T1R单元中的忆阻器的逻辑值。第二忆阻器数量指第CCAUN所包括的各个1T1R单元中处于低阻态的忆阻器的数量。Specifically, the gate control line G5 is turned on, the MOS transistor in the 1T1R unit CN+1 is turned on, the memristor in the 1T1R unit CN+1 is grounded, and the Nth MOS transistor as a switch is turned on, so that the 1T1R unit AN , the 1T1R unit BN , the 1T1R unit CN and the Nth peripheral circuit form CCAU N , and the carry number Q N+1 is calculated through CCAU N. 1≤i≤N+1. The carry number Q N+1 corresponds to the logic value of the memristor in the N+1th 1T1R unit of the fifth 1T1R subarray. The second memristor number refers to the number of memristors in the low resistance state in each 1T1R unit included in the CCAU N.
在一具体的实施方式中,根据所述第一1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值及述第二1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值,确定所述第四1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值的步骤,包括:In a specific implementation, the step of determining the logic value of the memristor in the i-th 1T1R unit of the fourth 1T1R subarray according to the logic value of the memristor in the i-th 1T1R unit of the first 1T1R subarray and the logic value of the memristor in the i-th 1T1R unit of the second 1T1R subarray includes:
选通所述第一1T1R子阵列对应的栅极控制线、所述第二1T1R子阵列对应的栅极控制线、所述第四1T1R子阵列对应的栅极控制线及N个开关模块;Turning on the gate control line corresponding to the first 1T1R sub-array, the gate control line corresponding to the second 1T1R sub-array, the gate control line corresponding to the fourth 1T1R sub-array, and N switch modules;
在所述第一1T1R子阵列对应的字线及所述第二1T1R子阵列对应的字线上施加或操作电压;Applying or operating a voltage on a word line corresponding to the first 1T1R sub-array and a word line corresponding to the second 1T1R sub-array;
停止在所述第一1T1R子阵列对应的字线及所述第二1T1R子阵列对应的字线上施加所述或操作电压,在所述第四1T1R子阵列对应的字线上施加与非操作电压;Stop applying the OR operation voltage to the word line corresponding to the first 1T1R sub-array and the word line corresponding to the second 1T1R sub-array, and apply the AND non-operation voltage to the word line corresponding to the fourth 1T1R sub-array;
根据所述第一1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值与所述第二1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值的异或运算结果,确定所述第四1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值。The logic value of the memristor in the i-th 1T1R unit of the fourth 1T1R subarray is determined according to an XOR operation result of the logic value of the memristor in the i-th 1T1R unit of the first 1T1R subarray and the logic value of the memristor in the i-th 1T1R unit of the second 1T1R subarray.
具体的,选通栅极控制线G1,导通了1T1R单元Ai中的MOS管,使1T1R单元Ai中的忆阻器的底电极接地、选通栅极控制线G2,导通了1T1R单元Bi中的MOS管,使1T1R单元Bi中的忆阻器的底电极接地、选通栅极控制线G4,导通了1T1R单元Li中的MOS管,使1T1R单元Li中的忆阻器的底电极接地,再选通各行中作为开关的MOS管,连通了第一位线WLi-1与第二位线WLi-2,1≤i≤N。从而实现了选通1T1R单元Ai,1T1R单元Bi及1T1R单元Li中的忆阻器,以作为后续逻辑操作的基础。Specifically, the gate control line G1 is selected to turn on the MOS transistor in the 1T1R unit A i , so that the bottom electrode of the memristor in the 1T1R unit A i is grounded, the gate control line G2 is selected to turn on the MOS transistor in the 1T1R unit B i , so that the bottom electrode of the memristor in the 1T1R unit B i is grounded, the gate control line G4 is selected to turn on the MOS transistor in the 1T1R unit L i , so that the bottom electrode of the memristor in the 1T1R unit L i is grounded, and then the MOS transistors used as switches in each row are selected to connect the first bit line WL i-1 and the second bit line WL i-2 , 1≤i≤N. Thus, the memristors in the 1T1R unit A i , 1T1R unit B i and 1T1R unit L i are selected, which serves as the basis for subsequent logic operations.
具体实施时,第一步,使字线BL4接地,在字线BL1与字线BL2施加或操作电压,然后停止在字线BL1与字线BL2所施加的或操作电压。第二步,使字线BL1与字线BL2接地,在字线BL4上施加与非操作电压。In specific implementation, in the first step, the word line BL4 is grounded, an OR operation voltage is applied to the word line BL1 and the word line BL2 , and then the OR operation voltage applied to the word line BL1 and the word line BL2 is stopped. In the second step, the word line BL1 and the word line BL2 are grounded, and an AND non-operation voltage is applied to the word line BL4 .
通过上述两次施加驱动电压的步骤,实现通过加数Xi与加数Yi进行并行的异或运算得到中间变量数Oi,即Oi=Xi XOR Yi。中间变量数Oi即对应所述第四1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值,1≤i≤N。Through the above two steps of applying the driving voltage, the intermediate variable number O i is obtained by performing a parallel exclusive OR operation on the addend Xi and the addend Yi , that is, O i = Xi XOR Yi . The intermediate variable number O i is the logic value of the memristor in the i-th 1T1R unit of the fourth 1T1R subarray, 1≤i≤N.
请参阅图10A,图10A示出了实现异或运算的过程中第一次施加驱动电压的步骤,即1T1R单元Li中的忆阻器的底电极接地,在1T1R单元Ai中的忆阻器与1T1R单元Bi中的忆阻器的底电极施加驱动电压VOR。请参阅图10B,图10B示出了实现异或运算的过程中第二次施加驱动电压的步骤,使1T1R单元Ai中的忆阻器与1T1R单元Bi中的忆阻器的底电极接地,在1T1R单元Li中的忆阻器的底电极施加驱动电压VNAND。Please refer to FIG. 10A , which shows the first step of applying a driving voltage in the process of implementing an XOR operation, that is, the bottom electrode of the memristor in the 1T1R unit Li is grounded, and the driving voltage VOR is applied to the bottom electrodes of the memristor in the 1T1R unit Ai and the memristor in the 1T1R unit Bi . Please refer to FIG. 10B , which shows the second step of applying a driving voltage in the process of implementing an XOR operation, that is, the bottom electrodes of the memristor in the 1T1R unit Ai and the memristor in the 1T1R unit Bi are grounded, and the driving voltage VNAND is applied to the bottom electrode of the memristor in the 1T1R unit Li .
通过上述两次施加驱动电压的步骤,可实现Oi=Xi XOR Yi,需要说明的是,在第一次施加驱动电压VOR之前,需要对作为输出的忆阻器进行初始化,即需要将1T1R单元Li中的忆阻器的阻态初始化为高阻态。Through the above two steps of applying the driving voltage, O i =X i XOR Yi can be achieved. It should be noted that before applying the driving voltage V OR for the first time, the memristor as the output needs to be initialized, that is, the resistance state of the memristor in the 1T1R unit Li needs to be initialized to a high resistance state.
在一具体的实施方式中,根据所述第三1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值及所述第四1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值,确定所述第五1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值的步骤,包括:In a specific implementation, the step of determining the logic value of the memristor in the i-th 1T1R unit of the fifth 1T1R subarray according to the logic value of the memristor in the i-th 1T1R unit of the third 1T1R subarray and the logic value of the memristor in the i-th 1T1R unit of the fourth 1T1R subarray includes:
选通所述第三1T1R子阵列对应的栅极控制线、所述第四1T1R子阵列对应的栅极控制线及所述第五1T1R子阵列对应的栅极控制线;Turning on the gate control line corresponding to the third 1T1R sub-array, the gate control line corresponding to the fourth 1T1R sub-array, and the gate control line corresponding to the fifth 1T1R sub-array;
在所述第三1T1R子阵列对应的字线及所述第四1T1R子阵列对应的字线施加或操作电压;Applying or operating a voltage to a word line corresponding to the third 1T1R sub-array and a word line corresponding to the fourth 1T1R sub-array;
停止在所述第三1T1R子阵列对应的字线及所述第四1T1R子阵列对应的字线施加所述或操作电压,在所述第四1T1R子阵列对应的字线施加与非操作电压;Stop applying the OR operation voltage to the word line corresponding to the third 1T1R sub-array and the word line corresponding to the fourth 1T1R sub-array, and apply the AND non-operation voltage to the word line corresponding to the fourth 1T1R sub-array;
根据所述第三1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值与所述第四1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值的异或运算结果,确定所述第五1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值。The logic value of the memristor in the i-th 1T1R unit of the fifth 1T1R subarray is determined according to an XOR operation result of the logic value of the memristor in the i-th 1T1R unit of the third 1T1R subarray and the logic value of the memristor in the i-th 1T1R unit of the fourth 1T1R subarray.
具体的,选通栅极控制线G3,导通了1T1R单元Ci中的各MOS管,使1T1R单元Ci中的各忆阻器的底电极接地、选通栅极控制线G4,导通了1T1R单元Li中的各MOS管,使1T1R单元Li中的各忆阻器的底电极接地、选通栅极控制线G5,导通了1T1R单元Si中的各MOS管,使1T1R单元Si中的各忆阻器的底电极接地。Specifically, the gate control line G3 is turned on to turn on each MOS tube in the 1T1R unit Ci , so that the bottom electrode of each memristor in the 1T1R unit Ci is grounded; the gate control line G4 is turned on to turn on each MOS tube in the 1T1R unit Li , so that the bottom electrode of each memristor in the 1T1R unit Li is grounded; the gate control line G5 is turned on to turn on each MOS tube in the 1T1R unit Si , so that the bottom electrode of each memristor in the 1T1R unit Si is grounded.
具体实施时,第一步,使字线BL5接地,在字线BL3与字线BL4施加或操作电压,然后停止在字线BL3与字线BL4所施加的或操作电压。第二步,使字线BL3与字线BL4接地,在字线BL5上施加与非操作电压。In specific implementation, in the first step, the word line BL 5 is grounded, an OR operation voltage is applied to the word line BL 3 and the word line BL 4 , and then the OR operation voltage applied to the word line BL 3 and the word line BL 4 is stopped. In the second step, the word line BL 3 and the word line BL 4 are grounded, and an AND non-operation voltage is applied to the word line BL 5 .
通过上述两次施加驱动电压的步骤,即可实现通过中间变量数Oi与进位数Qi异或运算得到最终结果数Zi,即Zi=Oi XOR Qi。最终结果数Zi即对应所述第五1T1R子阵列的第i个1T1R单元中的忆阻器的逻辑值,1≤i≤N。上述两次施加驱动电压的步骤请参照图10A与图10B中的驱动电压的具体施加过程,为避免重复,在此不再赘述。Through the above two steps of applying the driving voltage, the final result number Zi can be obtained by performing an XOR operation on the intermediate variable number Oi and the carry number Qi , that is, Zi = Oi XOR Qi . The final result number Zi corresponds to the logic value of the memristor in the i-th 1T1R unit of the fifth 1T1R subarray, 1≤i≤N. The above two steps of applying the driving voltage refer to the specific application process of the driving voltage in FIG. 10A and FIG. 10B, and will not be repeated here to avoid repetition.
补充说明的是,表2为各计算过程中的驱动电压施加方案表。It should be supplemented that Table 2 is a table of driving voltage application schemes in each calculation process.
表2.基于忆阻器的加法器的驱动电压施加方案Table 2. Driving voltage application scheme for memristor-based adder
表2展示了计算Z=X+Y的过程中各步骤所选通的栅极连线及MOS管,以及向相应的忆阻器所施加的驱动电压。步骤1至N对应计算过程的第一部分,即通过加数Xi、加数Yi与进位数Qi计算向下一位的进位数Qi+1。步骤N+1至N+4对应计算过程的第二部分,即通过加数Xi、加数Yi与进位数Qi并行计算最终结果数Zi,其中,步骤N+1至步骤N+2对应通过加数Xi与加数Yi并行计算中间变量数Oi,步骤N+3至步骤N+4对应通过中间变量数Oi与进位数Qi并行计算最终结果数Zi,1≤i≤N。Table 2 shows the gate connections and MOS tubes selected in each step of the process of calculating Z=X+Y, as well as the driving voltage applied to the corresponding memristor. Steps 1 to N correspond to the first part of the calculation process, that is, the carry number Qi+1 to the next digit is calculated by addend Xi , addend Yi and carry number Qi. Steps N+1 to N+4 correspond to the second part of the calculation process, that is, the final result number Zi is calculated in parallel by addend Xi , addend Yi and carry number Qi , wherein steps N+1 to N+2 correspond to the calculation of the intermediate variable number Oi by addend Xi and addend Yi in parallel, and steps N+3 to N+4 correspond to the calculation of the final result number Zi by the intermediate variable number Oi and carry number Qi in parallel, 1≤i≤N.
实施例3Example 3
本实施例提供了一种电子设备,其存储有计算机程序,所述计算机程序在处理器上运行时执行上述实施例2所提供的加法器的驱动方法。This embodiment provides an electronic device, which stores a computer program. When the computer program is run on a processor, the method for driving the adder provided in the above-mentioned embodiment 2 is executed.
本实施例提供的电子设备可以实现执行实施例2所提供的加法器的驱动方法的步骤,为避免重复,在此不再赘述。The electronic device provided in this embodiment can implement the steps of the method for driving the adder provided in Embodiment 2, and will not be described again to avoid repetition.
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和结构图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。In the several embodiments provided in this application, it should be understood that the disclosed devices and methods can also be implemented in other ways. The device embodiments described above are merely illustrative. For example, the flowcharts and structure diagrams in the accompanying drawings show the possible architectures, functions and operations of the devices, methods and computer program products according to the various embodiments of the present invention.
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是智能手机、个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)磁碟或者光盘等各种可以存储程序代码的介质。If the functions are implemented in the form of software function modules and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art or the part of the technical solution, can be embodied in the form of a software product, which is stored in a storage medium and includes several instructions for a computer device (which can be a smart phone, a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the methods described in each embodiment of the present invention. The aforementioned storage medium includes: various media that can store program codes, such as USB flash drives, mobile hard disks, read-only memories (ROM), random access memories (RAM), magnetic disks or optical disks.
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。The above description is only a specific implementation mode of the present invention, but the protection scope of the present invention is not limited thereto. Any technician familiar with the technical field can easily think of changes or substitutions within the technical scope disclosed by the present invention, which should be covered by the protection scope of the present invention.
Claims (10)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210450982.9A CN114721622B (en) | 2022-04-26 | 2022-04-26 | Adder based on memristor, driving method and electronic equipment |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210450982.9A CN114721622B (en) | 2022-04-26 | 2022-04-26 | Adder based on memristor, driving method and electronic equipment |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114721622A CN114721622A (en) | 2022-07-08 |
CN114721622B true CN114721622B (en) | 2024-07-30 |
Family
ID=82245385
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210450982.9A Active CN114721622B (en) | 2022-04-26 | 2022-04-26 | Adder based on memristor, driving method and electronic equipment |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114721622B (en) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108111162A (en) * | 2017-12-17 | 2018-06-01 | 华中科技大学 | A kind of computing array based on 1T1R devices, computing circuit and operating method |
CN109388853A (en) * | 2018-09-07 | 2019-02-26 | 北京大学 | A kind of bipolar mixed high-efficient memristor logic circuit of list and its control method |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109521993B (en) * | 2018-11-02 | 2022-07-01 | 上海交通大学 | Quick adder calculation method based on memristor array undercurrent path |
CN113285710B (en) * | 2021-06-04 | 2023-01-20 | 广东工业大学 | Memristor cross array-based logic gate circuit and NAND gate and NOR gate implementation method |
-
2022
- 2022-04-26 CN CN202210450982.9A patent/CN114721622B/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108111162A (en) * | 2017-12-17 | 2018-06-01 | 华中科技大学 | A kind of computing array based on 1T1R devices, computing circuit and operating method |
CN109388853A (en) * | 2018-09-07 | 2019-02-26 | 北京大学 | A kind of bipolar mixed high-efficient memristor logic circuit of list and its control method |
Also Published As
Publication number | Publication date |
---|---|
CN114721622A (en) | 2022-07-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113467751B (en) | Analog domain memory internal computing array structure based on magnetic random access memory | |
CN114974337B (en) | Time domain memory internal computing circuit based on spin magnetic random access memory | |
CN109905115B (en) | Reversible logic circuit and operation method thereof | |
CN110827898B (en) | A memristor-based voltage-resistance reversible logic circuit and its operation method | |
CN114496010B (en) | An analog domain near-memory computing array structure based on magnetic random access memory | |
TW202006609A (en) | In-memory computing devices for neural networks | |
US20210132908A1 (en) | In-memory arithmetic processors | |
CN117097328A (en) | Memristor-based nonvolatile majority gate logic circuit and control method thereof | |
CN115588446A (en) | A storage operation circuit, an in-memory calculation circuit and a chip thereof | |
CN113658625A (en) | 1T1R array-based reconfigurable state logic operation circuit and method | |
CN111627479B (en) | Encoded flash memory device, system and encoding method | |
CN116107963A (en) | In-memory logic circuit, in-memory logic computing system and application based on memristor | |
CN115954029A (en) | Multi-bit operation module and in-memory calculation circuit structure using the same | |
TW202234398A (en) | Compute-in-memory bitcell with capacitively-coupled write operation | |
CN114721622B (en) | Adder based on memristor, driving method and electronic equipment | |
CN110572149B (en) | Toffoli gate circuit and operation method thereof | |
CN115035934A (en) | Memory device and method of operating the same | |
CN117037877A (en) | Memory computing chip based on NOR Flash and control method thereof | |
CN112951290B (en) | Memory computing circuit and device based on nonvolatile random access memory | |
TW201635284A (en) | Memory with multiple write ports | |
CN115691608A (en) | Memory computing circuit, memory write-back multiplication computing circuit and chip | |
Luo et al. | Reconfigurable stateful logic design in the one-transistor-one-memristor crossbar array for logic-in-memory computing | |
JP3595565B2 (en) | Semiconductor memory cell circuit and memory cell array | |
CN113658623B (en) | Ferroelectric memory array capable of realizing multi-operand memory calculation | |
CN116185338B (en) | Memristor-Based Multipliers |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |