WO2019114217A1 - 一种基于 1t1r 器件的计算阵列、运算电路及操作方法 - Google Patents

一种基于 1t1r 器件的计算阵列、运算电路及操作方法 Download PDF

Info

Publication number
WO2019114217A1
WO2019114217A1 PCT/CN2018/090247 CN2018090247W WO2019114217A1 WO 2019114217 A1 WO2019114217 A1 WO 2019114217A1 CN 2018090247 W CN2018090247 W CN 2018090247W WO 2019114217 A1 WO2019114217 A1 WO 2019114217A1
Authority
WO
WIPO (PCT)
Prior art keywords
array
signal
input
input logic
stored
Prior art date
Application number
PCT/CN2018/090247
Other languages
English (en)
French (fr)
Inventor
李祎
王卓睿
缪向水
周亚雄
程龙
Original Assignee
华中科技大学
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 华中科技大学 filed Critical 华中科技大学
Priority to US16/336,900 priority Critical patent/US11475949B2/en
Publication of WO2019114217A1 publication Critical patent/WO2019114217A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/20Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits characterised by logic function, e.g. AND, OR, NOR, NOT circuits
    • H03K19/21EXCLUSIVE-OR circuits, i.e. giving output if input signal exists at only one input; COINCIDENCE circuits, i.e. giving output only if all input signals are identical
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/1733Controllable logic circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods 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/4824Methods 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 using signed-digit representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods 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/50Adding; Subtracting
    • G06F7/501Half or full adders, i.e. basic adder cells for one denomination
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods 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/50Adding; Subtracting
    • G06F7/505Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination
    • G06F7/506Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination with simultaneous carry generation for, or propagation over, two or more stages
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital 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/0021Auxiliary circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital 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/0021Auxiliary circuits
    • G11C13/0061Timing circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1006Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/38Indexing scheme relating to groups G06F7/38 - G06F7/575
    • G06F2207/48Indexing scheme relating to groups G06F7/48 - G06F7/575
    • G06F2207/4802Special implementations
    • G06F2207/4828Negative resistance devices, e.g. tunnel diodes, gunn effect devices
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital 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/0021Auxiliary circuits
    • G11C13/0023Address circuits or decoders
    • G11C13/0026Bit-line or column circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital 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/0021Auxiliary circuits
    • G11C13/0023Address circuits or decoders
    • G11C13/0028Word-line or row circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital 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/0021Auxiliary circuits
    • G11C13/004Reading or sensing circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital 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/0021Auxiliary circuits
    • G11C13/0069Writing or programming circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2213/00Indexing scheme relating to G11C13/00 for features not covered by this group
    • G11C2213/70Resistive array aspects
    • G11C2213/79Array wherein the access device being a transistor
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2213/00Indexing scheme relating to G11C13/00 for features not covered by this group
    • G11C2213/70Resistive array aspects
    • G11C2213/82Array having, for accessing a cell, a word line, a bit line and a plate or source line receiving different potentials

Definitions

  • the invention belongs to the field of microelectronic devices, and more particularly to a computing array, an arithmetic circuit and an operating method based on a 1T1R device.
  • Resistive Random Access Memory has low power consumption, high speed, high integration, information storage and calculation functions, and can be used to break through the limitations of Moore's Law in the development of existing electronic devices.
  • the existing industrial integration technology mainly applies the resistive memory RRAM through the 1T1R device structure.
  • Chinese invention patent ZL 2014203325960 proposes a non-volatile Boolean logic operation circuit and its operation method.
  • the patent realizes a complete set of non-volatile Boolean logic based on a back-to-back RRAM structure, but cannot realize circuit cascading and circuit integration. And more complicated computing functions.
  • the present invention proposes a computing array, an arithmetic circuit and an operation method based on a 1T1R device, the purpose of which is to realize a complete set of non-volatile Boolean logic operations and realize more complicated. Computational functions, while improving the compatibility of the arithmetic circuit and simplifying the operation method.
  • a computing array based on a 1T1R device comprising: a 1T1R array and a peripheral circuit; a 1T1R array is used to implement an operation and store the operation result, and the peripheral circuit is used for transmitting data and Control signals to control the operation and storage of the 1T1R array.
  • the 1T1R array includes a 1T1R device arranged in an array, a word line WL (Write Line), a bit line BL (Bit Line), and a source line SL (Source Line); the resistance state of the 1T1R device includes: High Resistance H (High Resistance) And low resistance L (Low Resistance); 1T1R device realizes information storage and processing through different resistance states; 1T1R devices in the same row are connected to the same bit line, and 1T1R devices in the same column are connected to the same bit line) And the source line, by applying different signals to the word line WL, the bit line BL, and the source line SL to implement different operations and store the operation result.
  • the 1T1R device comprises a transistor and a resistive change element; the transistor comprises: a substrate, a source, a drain, an insulating layer and a gate, the source is connected to the source line SL, the gate is connected to the word line WL; and the resistive element comprises The two end electrodes, wherein one end electrode is connected to the bit line BL, and the other end electrode is connected to the drain of the transistor; the resistive change element has a stacked structure and has a nonvolatile resistance transition characteristic.
  • the resistance state of the 1T1R device can undergo a reversible resistance state transition under the action of an external signal excitation. That is, in an external signal excitation mode, the resistance state of the 1T1R device can be changed from a high resistance state to a low resistance state, and in another In the external signal excitation mode, the resistance state of the 1T1R device can be changed from a low resistance state to a high resistance state; the information storage and processing can be realized by using two resistance states of the 1T1R device.
  • the resistive switching element of the 1T1R device is a resistive random access memory (RRAM);
  • the resistive memory includes: an upper electrode and a functional layer. And a lower electrode; the upper electrode is connected to the bit line BL, and the lower electrode is connected to the drain of the transistor.
  • the peripheral circuit includes: a state controller, a word line decoder, a source line decoder, a bit line decoder, a signal amplifier, a control signal modem, and a data transmission circuit, wherein:
  • the state controller has data input and output terminal Data, address input terminal Address, clock signal input terminal CLK, result input terminal, word line output terminal, bit line output terminal, source line output terminal and secondary output terminal; data of the state controller
  • the input/output terminal Data is used for inputting calculation data on the one hand and outputting the calculation result on the other hand.
  • the address input address of the state controller is used to input the address information of the selected specific device, and the clock signal input terminal CLK of the state controller is used.
  • the input control terminal is used to input the calculation result generated by the upper circuit; the state controller generates the control signal according to the input data, the address information, the clock signal, and the calculation result, or outputs the final calculation result;
  • the input of the word line decoder is connected to the word line output of the state controller, and the output of the word line decoder is connected to the word line of the 1T1R array;
  • the word line decoder translates the control signal generated by the state controller After the code, the word line control signal is obtained, and the word line control signal is input to the 1T1R device through the word line of the 1T1R array;
  • the input of the bit line decoder is connected to the bit line output of the state controller, and the output of the bit line decoder is connected to the bit line of the 1T1R array; the bit line decoder translates the control signal generated by the state controller After the code, the bit line control signal is obtained, and the bit line control signal is input to the 1T1R device through the bit line of the 1T1R array;
  • the input of the source line decoder is connected to the source line output of the state controller, the output of the source line decoder is connected to the source line of the 1T1R array; the source line decoder translates the control signal generated by the state controller After the code, the source line control signal is obtained, and the source line control signal is input to the 1T1R device through the source line of the 1T1R array;
  • the word line control signal, the bit line control signal, and the source line control signal are commonly applied to the 1T1R array to control the state of the 1T1R device in the 1T1R array;
  • the input end of the signal amplifier is connected to the bit line of the 1T1R array; when reading the data information stored in the 1T1R array, the signal amplifier converts the obtained resistance signal stored by the 1T1R device into a voltage signal and outputs it to the control signal modem;
  • a first input of the control signal modem is coupled to the secondary output of the state controller, a second input of the control signal modem is coupled to the output of the signal amplifier; and the control signal modem decodes the control signal generated by the state controller, Obtaining the control signal of the next stage circuit, or directly transmitting the data voltage signal output by the signal amplifier; the next stage circuit is the next 1T1R device in the same 1T1R array, or the next 1T1R array in the calculation array;
  • the input end of the data transmission circuit is connected to the output end of the control signal modem; the data transmission circuit feeds back the data voltage signal outputted by the control signal modem through the result input of the state controller to the state controller, or controls the output of the control signal modem
  • the signals are respectively transmitted to the word line decoder, the bit line decoder, and the source line decoder of the next stage circuit.
  • the data input/output terminal Data, the address input terminal Address and the clock signal input terminal CLK of the state controller are respectively used as data input and output terminals, address input terminals and clock signal input terminals of the calculation array.
  • the calculation array based on the 1T1R device is applied with a voltage pulse as an input signal for logic operation, and the result of the logic operation is characterized by the final resistance state of the 1T1R device; the result of the logic operation can be stored non-volatilely in the resistance state of the device, through a small current
  • a read signal typically at the nanoampere level
  • a small voltage typically below 0.2V
  • the 1T1R computational array implements Boolean logic operations on the 1T1R device by applying different voltage pulse signals to the word lines, source lines, and bit lines of the 1T1R array.
  • the source line level voltage is defined as a logic signal V SL , and a zero-level
  • the 1T1R computing array implements Boolean logic operations on a single 1T1R device, including the following steps:
  • V WL p
  • V BL q
  • V read is a voltage pulse signal applied when reading the resistance state of the 1T1R device.
  • symbols similar to I, V WL , V BL , and V SL are used to represent logical signals of the same concept, and signals corresponding to different 1T1R devices are distinguished only by different subscripts.
  • an arithmetic circuit based on a calculation array for implementing a one-bit full adder, in particular, calculating a sum value s according to an input logic signal a, a logic signal b, and a low carry c 0 0 and high carry c 1 ;
  • the arithmetic circuit includes: 1T1R array A 1 , 1T1R array A 2 and 1T1R array A 3 ;
  • 1T1R array A 1 includes 1 1T1R device R b for calculating and storing intermediate data
  • the word line signal corresponding to R b is V WLb
  • the bit line signal corresponding to R b is V BLb
  • the source line signal corresponding to R b is V SLb ;
  • the 1T1R array A 2 includes one 1T1R device R c for calculation and storage
  • the high-order carry c 1 , R c corresponding word line signal is V WLc
  • R c corresponding bit line signal is V
  • the present invention also provides an operation method of an arithmetic circuit based on a computing array, comprising the following steps:
  • an arithmetic circuit based on a calculation array for implementing a multi-bit bit-wise carry adder, in particular, according to input data a 0 to n-1 and b 0 to n-1 And the carry information c 0 , the calculated sum value s 0 ⁇ n-1 and the carry information c n , n represents the number of bits of the operation data;
  • the arithmetic circuit comprises: 1T1R array D 1 , 1T1R array D 2 and 1T1R array D 3 ;
  • 1T1R array D 1 includes n 1T1R devices R 0b ⁇ R (n-1)b for storing intermediate results
  • the word line control signals corresponding to R 0b to R (n-1)b are V WL0b to V WL(n-1)b
  • the bit line control signals corresponding to R 0b to R (n-1)b are V BL0b ⁇ V BL(n-1)b , R
  • the present invention also provides an operation method of an arithmetic circuit based on a computing array, comprising the following steps:
  • step (S2-7) increments the value of i by 1, if i ⁇ n-1, then proceeds to step (S2-5); otherwise, proceeds to step (S2-8);
  • an arithmetic circuit based on a calculation array for implementing an optimized multi-bit bit-wise carry adder, in particular, according to input data a 0 to n-1 and b 0 to n -1 and the carry information c 0 , the calculated sum value s 0 to n-1 and the carry information c n , n represents the number of bits of the operation data;
  • the arithmetic circuit includes: 1T1R array E 1 , 1T1R array E 2 and 1T1R array E 3 ;
  • the 1T1R array E 1 includes n 1T1R devices R 0b ⁇ R (n-1)b for storing calculation data.
  • the word line control signals corresponding to R 0b to R (n-1)b are V WL0b to V WL(n-1)b
  • the bit line control signals corresponding to R 0b to R (n-1)b are V BL0b ⁇ V BL(n-1)b
  • R 0b ⁇ R (n-1)b corresponding source line control signals are V SL0b ⁇ V SL(n-1)b
  • 1T1R array E 1 is used for data backup
  • 1T1R array E 2 includes (n+1) 1T1R devices R 0c to R nc for calculating and storing the carry data c i (i is 0 to n), and the word line control signal corresponding to R 0c to R nc is V WL0c to V WLnc , the bit line control signals corresponding to R 0c to R nc are V BL0c to V BLnc , the source line control signals corresponding to R 0c to R nc are V
  • the present invention further provides an operation method of an arithmetic circuit based on a computing array, comprising the following steps:
  • step (S3-6) increment the value of i by 1, if i ⁇ n-1, then go to step (S3-5); otherwise, go to step (S3-7);
  • an arithmetic circuit based on a computing array for implementing a two-bit data selector, specifically, a logic signal a, a logic signal b, and a control signal Sel, by controlling the value of Sel
  • the output logic signal a or the logic signal b is selected;
  • the operation circuit includes a 1T1R array F;
  • the 1T1R array F includes one 1T1R device R, the word line signal corresponding to R is V WL , and the bit line signal corresponding to R is V BL , R corresponds to The source line signal is V SL .
  • the present invention further provides an operation method of an arithmetic circuit based on a computing array, which specifically includes the following steps:
  • an arithmetic circuit based on a calculation array for implementing a multi-bit carry selection adder, in particular, according to input data a 0 to n-1 and b 0 to n-1
  • the carry information c 0 , the calculated sum value s 0 to n-1 and the carry information c n , n represent the number of bits of the operation data, and the same operation result of the corresponding bit of the operation data is selected according to the carry information of each bit in the calculation process.
  • the arithmetic circuit includes a 1T1R array G 1 , a 1T1R array G 2 , and a 1T1R array G 3 ;
  • the word line control signals corresponding to -1)x are V WL0x to V WL(n-1)x
  • the bit line control signals corresponding to R 0x to R (n-1)x are V BL0x to V BL(n-1, respectively).
  • R 0x to R (n-1)x corresponding to the source line control signals are V SL0x to V SL(n-1)x ;
  • 1T1R array G 2 includes (n+1) 1T1R devices R 0c to R nc, carry information for calculating C i (i is a value of 0 ⁇ n), R 0c ⁇ R nc
  • Corresponding word line control signals are V WL0c ⁇ V WLnc
  • R 0c ⁇ R nc corresponding bit line control signals are V BL0c ⁇ V BLnc
  • R 0c ⁇ R nc corresponding source line control signals are V SL0c ⁇ V SLnc
  • 1T1R array G 3 includes n 1T1R devices R 0 to R n-1 for calculating and storing the addition result s 0 to n-1
  • the word line control signal corresponding to R 0 to R n-1 is V WL0 ⁇ V WL(n-
  • the present invention further provides an operation method of an arithmetic circuit based on a computing array, comprising the following steps:
  • step (S5-6) increments the value of i by 1, if i ⁇ n-1, then proceeds to step (S5-5); otherwise, proceeds to step (S5-7);
  • an arithmetic circuit based on a calculation array for implementing a multi-bit pre-calculation adder, in particular, a method for calculating carry information in advance, according to input data a 0 to n- 1 and b 0 to n-1 and the carry information c 0 , the calculated sum value s 0 to n-1 and the carry information c n , n represents the number of bits of the operation data;
  • the arithmetic circuit includes the 1T1R array H 1 and the 1T1R array H 2 ;
  • the 1T1R array H 1 includes (n+1) 1T1R devices R 0c to R nc for calculating the carry information c i (i is 0 to n), and the word line control signal corresponding to R 0c to R nc is V WL0c to V WLnc , the bit line control signals corresponding to R 0c to R nc are V BL0c to V BL
  • the bit line control signals corresponding to R 0 to R n-1 are V BL0 to V BL(n-1)
  • the source line control signals corresponding to R 0 to R n-1 are V SL0 to V SL(n-1).
  • 1T1R array H 1 calculated Resulting carry information c i for signal converted by the signal amplifier and a control signal modems, and to an array of 1T1R H 2 transmitted through the data transmission circuit.
  • the present invention further provides an operation method of an arithmetic circuit based on a computing array, comprising the following steps:
  • step (S6-6) increments the value of i by 1, if i ⁇ n-2, then proceeds to step (S6-5); otherwise, proceeds to step (S6-7);
  • a computing array based on a 1T1R device is provided, and based on the computing array provided by the present invention, various computing circuits are provided, and specifically, the following beneficial effects can be obtained. :
  • the arithmetic circuit is based on the calculation array based on the 1T1R device, and while performing the logic operation, the calculation result can be directly stored in the 1T1R device of the calculation array, and the fusion of calculation and storage is realized;
  • the arithmetic circuit provided by the present invention can complete all logical operations in two steps when implementing 16 kinds of Boolean logic operations, greatly simplifying the design of the logic circuit and reducing the complexity of the integration process;
  • FIG. 1 is a schematic diagram of a computing array based on a 1T1R device according to an embodiment of the present invention
  • FIG. 2 is a schematic diagram of a 1T1R array in a computing array according to an embodiment of the present invention
  • FIG. 3 is a schematic diagram of a three-dimensional structure and an equivalent circuit diagram of a 1T1R device according to an embodiment of the present invention
  • (a) is a schematic diagram of a three-dimensional structure of a 1T1R device
  • (b) is an equivalent circuit diagram of a 1T1R device
  • FIG. 4 is a block diagram and an equivalent circuit diagram of a one-bit full adder operation circuit based on a computing array according to an embodiment of the present invention
  • (a) is a block diagram of a full adder operation circuit
  • (b) is a full adder An equivalent circuit diagram of the arithmetic circuit
  • FIG. 5 is an equivalent circuit diagram of an eight-bit bit-wise carry adder operation circuit based on a computing array according to an embodiment of the present invention
  • FIG. 6 is an equivalent circuit diagram of an eight-bit bit-wise carry adder operation circuit based on a computational array according to an embodiment of the present invention
  • FIG. 7 is a block diagram and an equivalent circuit diagram of a two-bit data selector operation circuit based on a calculation array according to an embodiment of the present invention.
  • (a) is a block diagram of an operation circuit of a two-bit data selector;
  • (b) is a two-bit data selection Equivalent circuit diagram of the arithmetic circuit;
  • FIG. 8 is an equivalent circuit diagram of an arithmetic circuit of an eight-bit carry selection adder based on a computing array according to an embodiment of the present invention
  • FIG. 9 is an equivalent circuit diagram of an eight-bit pre-calculation adder operation circuit based on a calculation array according to an embodiment of the present invention.
  • 100 is a source line decoder
  • 101 is a word line decoder
  • 102 is a bit line decoder
  • 103 is a signal amplifier
  • 104 is a state controller
  • 105 is a control signal modem
  • 106 is a data transmission circuit
  • 300 is a bit Line
  • 301 is the RRAM upper electrode
  • 302 is the RRAM functional layer
  • 303 is the RRAM lower electrode
  • 304 is the source line
  • 305 is the transistor gate
  • 306 is the transistor insulating layer
  • 307 is the transistor source
  • 308 is the transistor drain
  • 309 It is the base of the transistor.
  • the 1T1R device-based computing array provided by the present invention includes: 1T1R array and peripheral circuits; 1T1R array is used to implement operations and store operation results, and peripheral circuits are used for transmitting data and control signals to control 1T1R arrays. Operations and stored procedures.
  • the 1T1R array includes a 1T1R device arranged in an array, a word line WL (Write Line), a bit line BL (Bit Line), and a source line SL (Source Line); the 1T1R device passes through different resistance states. Realize the storage and processing of information; 1T1R devices in the same row are connected to the same bit line, 1T1R devices in the same column are connected to the same bit line and word line, through the pair of word lines WL, bit lines BL and source lines SL Different signals are applied to implement different operations and store the results of the operation.
  • the 1T1R device includes a transistor and a resistive switching element.
  • the transistor includes a substrate 309, a source 307, a drain 308, an insulating layer 306, and a gate 305.
  • the resistive switching element is Resistive Random Access Memory (RRAM) includes: an upper electrode 301, a functional layer 302, and a lower electrode 303; a source 307 of the transistor is connected to the bit line 300, and a gate 305 of the transistor is connected to the word line to resist
  • RRAM Resistive Random Access Memory
  • the upper electrode 301 of the memory RRAM is connected to the bit line 300, and the lower electrode 303 of the resistive memory RRAM is connected to the drain 308 of the transistor;
  • the resistance state of the 1T1R device includes: High Resistance and Low Resistance; the resistance state of the 1T1R device can undergo a reversible resistance state transition under the action of an applied signal excitation, that is, in an external In the signal excitation mode, the resistance state of the 1T1R device can be changed from the high resistance state to the low resistance state. In another applied signal excitation mode, the resistance state of the 1T1R device can be changed from the low resistance state to the high resistance state; using the 1T1R device
  • the two resistance states enable the storage and processing of information.
  • the peripheral circuit includes a state controller 104, a word line decoder 101, a source line decoder 100, a bit line decoder 102, a signal amplifier 103, a control signal modem 105, and a data transmission circuit 106. among them:
  • the state controller 104 has a data input/output terminal Data, an address input terminal Address, a clock signal input terminal CLK, a result input terminal, a word line output terminal, a bit line output terminal, a source line output terminal, and a secondary output terminal;
  • the data input/output terminal Data is used for inputting calculation data on the one hand and outputting the calculation result on the other hand.
  • the address input address of the state controller is used to input the address information of the selected specific device, and the clock signal input terminal CLK of the state controller is used.
  • the clock signal for inputting the control calculation timing, the result input is used for inputting the calculation result generated by the upper circuit; the state controller generates the control signal according to the input data, the address information, the clock signal, and the calculation result, or outputs the final calculation result;
  • word line decoder 101 The input of word line decoder 101 is coupled to the word line output of state controller 104, the output of word line decoder 101 is coupled to the word line of the 1T1R array; word line decoder 101 is generated for state controller 104 After the control signal is decoded, the word line control signal is obtained, and the word line control signal is input to the 1T1R device through the word line of the 1T1R array;
  • bit line decoder 102 The input of bit line decoder 102 is coupled to the bit line output of state controller 104, the output of bit line decoder 102 is coupled to the bit line of the 1T1R array; bit line decoder 102 is generated to state controller 104 After the control signal is decoded, the bit line control signal is obtained, and the bit line control signal is input to the 1T1R device through the bit line of the 1T1R array;
  • the input of the source line decoder 100 is connected to the source line output of the state controller 104, the output of the source line decoder 100 is connected to the source line of the 1T1R array; the source line decoder 100 generates the status controller 104. After the control signal is decoded, the source line control signal is obtained, and the source line control signal is input to the 1T1R device through the source line of the 1T1R array;
  • the word line control signal, the bit line control signal, and the source line control signal are commonly applied to the 1T1R array to control the state of the 1T1R device in the 1T1R array;
  • the input terminal of the signal amplifier 103 is connected to the bit line of the 1T1R array; when reading the data information stored in the 1T1R array, the signal amplifier 103 converts the acquired resistance signal stored by the 1T1R device into a voltage signal and outputs it to the control signal modem 105;
  • control signal modem 105 is coupled to a secondary output of state controller 104, a second input of control signal modem 105 is coupled to an output of signal amplifier 103; control signal modem 105 is generated for state controller 104
  • the control signal is decoded to obtain a control signal of the next stage circuit, or directly transmitted to the data voltage signal output by the signal amplifier 103; the next stage circuit is the next 1T1R device in the same 1T1R array, or is in the calculation array Next 1T1R array;
  • the input end of the data transmission circuit 106 is connected to the output of the control signal modem 105; the data transmission circuit 106 feeds back the data voltage signal output by the control signal modem 105 to the status controller 104 through the result input of the state controller 104, or
  • the control signals output from the control signal modem 105 are respectively transmitted to the word line decoder, the bit line decoder, and the source line decoder of the next stage circuit.
  • the data input/output terminal Data, the address input terminal Address and the clock signal input terminal CLK of the state controller 104 serve as data input and output terminals, address input terminals and clock signal input terminals of the calculation array, respectively.
  • the calculation array based on the 1T1R device is applied with a voltage pulse as an input signal for logic operation, and the result of the logic operation is characterized by the final resistance state of the 1T1R device; the result of the logic operation can be stored non-volatilely in the resistance state of the device, through a small current
  • a read signal typically at the nanoampere level
  • a small voltage typically below 0.2V
  • the 1T1R computational array implements Boolean logic operations on the 1T1R device by applying different voltage pulse signals to the word lines, source lines, and bit lines of the 1T1R array.
  • the source line level voltage is defined as a logic signal V SL , and a zero-level
  • the 1T1R computing array implements Boolean logic operations on a single 1T1R device, including the following steps:
  • V WL p
  • V BL q
  • V read is a voltage pulse signal applied when reading the resistance state of the 1T1R device.
  • symbols similar to I, V WL , V BL , and V SL are used to represent logical signals of the same concept, and signals corresponding to different 1T1R devices are distinguished only by different subscripts.
  • the arithmetic circuit comprises: 1T1R array A 1 , 1T1R array A 2 and 1T1R array A 3 ; 1T1R array A 1 includes 1 1T1R device R b for calculating and storing intermediate data
  • the word line signal corresponding to R b is V WLb
  • the bit line signal corresponding to R b is V BLb
  • the source line signal corresponding to R b is V SLb
  • the 1T1R array A 2 includes one 1T1R device R c for calculation and storage
  • the high-order carry c 1 , R c corresponding word line signal is V WLc
  • R c corresponding bit line signal is V BLc , R c corresponding
  • the operating method provided by the present invention includes the following steps:
  • 1T1R array D 1 includes 8 1T1R devices R 0b to R 7b for storing calculation Intermediate results
  • the word line control signals corresponding to R 0b to R 7b are V WL0b to V WL7b
  • the bit line control signals corresponding to R 0b to R 7b are V BL0b to V BL7b , respectively, and the source line control signals corresponding to R 0b to R 7b are respectively V SL0b ⁇ V SL7b
  • 1T1R array D 1 is used for data backup
  • 1T1R array D 2 includes
  • the operating method provided by the present invention includes the following steps:
  • the arithmetic circuit includes: 1T1R array E 1 , 1T1R array E 2 and 1T1R array E 3 ; 1T1R array E 1 includes 8 1T1R devices R 0b to R 7b for Save calculation data
  • the word line control signals corresponding to R 0b to R 7b are V WL0b to V WL7b
  • the bit line control signals corresponding to R 0b to R 7b are V BL0b to V BL7b , respectively
  • the source line control signals corresponding to R 0b to R 7b are respectively V SL0b ⁇ V SL7b
  • 1T1R array E 1 is used for data backup
  • 1T1R array E 2 includes 9
  • the operating method provided by the present invention includes the following steps:
  • a calculation array-based operation circuit provided by the present invention for implementing a two-bit data selector, specifically, inputting a logic signal a, a logic signal b, and a control signal Sel, and selecting an output logic by controlling the value of Sel.
  • Signal a or logic signal b; the arithmetic circuit includes a 1T1R array F; the 1T1R array F includes one 1T1R device R.
  • the operating method provided by the present invention includes the following steps:
  • the operation circuit 8 is a calculation array-based operation circuit provided by the present invention for implementing an eight-bit carry selection adder, specifically, based on input data a 0 to 7 and b 0 to 7 and carry information c 0 , The values s 0 to 7 and the carry information c 8 are selected according to the carry information of each bit in the calculation process, and the same OR operation result of the corresponding bit of the operation data or the exclusive OR operation result is used as the bit information of the sum value; the operation circuit includes the 1T1R array.
  • 1T1R array G 1 includes eight 1T1R devices R 0x to R 7x for storing the same OR operation result X 0 of calculation data a 0 to 7 and b 0 to 7 .
  • 7 a 0 to 7 XNOR b 0 to 7
  • the word line control signals corresponding to R 0x to R 7x are V WL0x to V WL7x
  • the bit line control signals corresponding to R 0x to R 7x are V BL0x to V BL7x , respectively.
  • the source line control signals corresponding to 0x to R 7x are V SL0x to V SL7x respectively ;
  • the 1T1R array G 2 includes nine 1T1R devices R 0c to R 8c for calculating the carry information c i (i is 0 to 8)
  • the word line control signals corresponding to R 0c to R 8c are V WL0c to V WL8c , and the bit line control signals corresponding to R 0c to R 8c are respectively
  • the source line control signals corresponding to V BL0c to V BL8c , R 0c to R 8c are V SL0c to V SL8c , respectively;
  • the 1T1R array G 3 includes 8 1T1R devices R 0 to R 7 for calculating and storing the addition result s 0 to 7 , the word line control signals corresponding to R 0 to R 7 are V WL0 to V WL7 , and the bit line control signals corresponding to R 0 to R 7 are V
  • the operating method provided by the present invention includes the following steps:
  • 9 is a calculation array-based operation circuit provided by the present invention for implementing an eight-bit pre-calculation adder, specifically, a method for calculating carry information in advance, according to input data a 0 to 7 and b 0 to 7 and the carry information c 0 , the calculated sum values s 0 to 7 and the carry information c 8 ;
  • the arithmetic circuit includes: 1T1R array H 1 and 1T1R array H 2 ;
  • 1T1R array H 1 includes 9 1T1R devices R 0c to R 8c
  • the calculation of the carry information c i (i is 0 to 8), the word line control signals corresponding to R 0c to R 8c are V WL0c to V WL8c , and the bit line control signals corresponding to R 0c to R 8c are respectively V BL0c .
  • 1T1R array H 2 includes 8 1T1R devices R 0 ⁇ R 7 for calculating and storing the addition result s 0 ⁇ 7
  • the word line control signals corresponding to R 0 to R 7 are V WL0 to V WL7
  • the bit line control signals corresponding to R 0 to R 7 are V BL0 to V BL7
  • the source line control signals corresponding to R 0 to R 7 are V SL0 ⁇ V SL7
  • 1T1R array H 1 calculated carry information c i through the signal amplifier and control signal modem The signal is now converted and transmitted to the 1T1R array H 2 through the data transmission circuit.
  • the operating method provided by the present invention includes the following steps:

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Logic Circuits (AREA)

Abstract

一种基于1T1R器件的计算阵列、运算电路及操作方法,计算阵列包括:1T1R阵列以及外围电路;1T1R阵列用于实现运算并存储运算结果,外围电路用于传输数据及控制信号,从而控制1T1R阵列的运算及存储过程;运算电路分别用于实现一位全加器、多位逐位进位加法器及其优化设计、二位数据选择器、多位进位选择加法器以及多位pre-calculation加法器;运算电路对应的操作方法分别通过控制1T1R器件初始化的电阻状态、字线输入信号、位线输入信号以及源线输入信号完成相应的运算及存储过程。实现了计算与存储的融合,降低了集成电路的复杂性,可实现16种基本的布尔逻辑运算以及多种复杂运算。

Description

一种基于1T1R器件的计算阵列、运算电路及操作方法 [技术领域]
本发明属于微电子器件领域,更具体地,涉及一种基于1T1R器件的计算阵列、运算电路及操作方法。
[背景技术]
大数据时代,通过纳米晶体管逻辑器件尺寸微缩来提高计算性能的集成电路摩尔定律已难以延续,传统冯·诺依曼计算架构中存储与计算分离的瓶颈问题凸显,现有架构和器硬件无法满足信息爆炸式增长对超强计算能力的需求。
阻变存储器RRAM(Resistive Random Access Memory)具有低功耗、高速度、高集成度、兼具信息存储与计算功能等特性,可以突破现有电子器件发展中摩尔定律的限制,因而被广泛用于提高计算机数据处理速度的解决方案中;现有的工业化集成技术主要通过1T1R器件结构对阻变存储器RRAM进行应用。
中国发明专利ZL 2014203325960提出了一种非易失性布尔逻辑运算电路及其操作方法,该专利基于一种背靠背RRAM结构实现了非易失性布尔逻辑完备集,但是无法实现电路级联、电路集成以及更复杂的计算功能。
[发明内容]
针对现有技术的缺陷和改进需求,本发明提出了一种基于1T1R器件的计算阵列、运算电路及操作方法,其目的在于实现非易失性布尔逻辑运算完备集,并实现更多更复杂的计算功能,同时提高运算电路的兼容性并简化操作方法。
为实现上述目的,按照本发明的第一方面,提供了一种基于1T1R器件的计算阵列,包括:1T1R阵列以及外围电路;1T1R阵列用于实现运算并 存储运算结果,外围电路用于传输数据及控制信号,从而控制1T1R阵列的运算及存储过程。
1T1R阵列包括以阵列形式排布的1T1R器件、字线WL(Write Line)、位线BL(Bit Line)以及源线SL(Source Line);1T1R器件的电阻状态包括:高阻态H(High Resistance)和低阻态L(Low Resistance);1T1R器件通过不同的电阻状态实现对信息的存储和处理;位于同一行的1T1R器件连接至同一位线,位于同一列的1T1R器件连接至相同的位线及源线,通过对字线WL、位线BL以及源线SL施加不同的信号以实现不同的运算并存储运算结果。
1T1R器件包括一个晶体管和一个阻变元件;晶体管包括:基底、源极、漏极、绝缘层以及栅极,源极与源线SL相连接,栅极与字线WL相连接;阻变元件包括两端电极,其中一端电极与位线BL相连接,另一端电极与晶体管的漏极相连接;阻变元件具有堆叠结构,且具有非易失性电阻转变特性。
1T1R器件的电阻状态在外加信号激励的作用下能够发生可逆的电阻状态转变,即在一种外加信号激励方式下,1T1R器件的电阻状态可以从高阻态转变为低阻态,在另一种外加信号激励方式下,1T1R器件的电阻状态可以从低阻态转变为高阻态;利用1T1R器件的两种电阻状态即可实现对信息的存储和处理。
结合本发明的第一方面,在本发明第一方面的第一种实施方式中,1T1R器件的阻变元件为阻变存储器RRAM(Resistive Random Access Memory);阻变存储器包括:上电极、功能层和下电极;上电极与位线BL相连接,下电极与晶体管漏极相连接。
外围电路包括:状态控制器、字线译码器、源线译码器、位线译码器、信号放大器、控制信号调制解调器以及数据传输电路,其中:
状态控制器具有数据输入输出端Data、地址输入端Address、时钟信号 输入端CLK、结果输入端、字线输出端、位线输出端、源线输出端以及次级输出端;状态控制器的数据输入输出端Data一方面用于输入计算数据,另一方面用于输出计算结果,状态控制器的地址输入端Address用于输入选定特定器件的地址信息,状态控制器的时钟信号输入端CLK用于输入控制计算时序的时钟信号,结果输入端用于输入上级电路产生的计算结果;状态控制器根据输入的数据、地址信息、时钟信号以及计算结果产生控制信号,或者输出最终的计算结果;
字线译码器的输入端连接至状态控制器的字线输出端,字线译码器的输出端连接至1T1R阵列的字线;字线译码器对状态控制器产生的控制信号进行译码后,得到字线控制信号,并将字线控制信号通过1T1R阵列的字线输入到1T1R器件;
位线译码器的输入端连接至状态控制器的位线输出端,位线译码器的输出端连接至1T1R阵列的位线;位线译码器对状态控制器产生的控制信号进行译码后,得到位线控制信号,并将位线控制信号通过1T1R阵列的位线输入到1T1R器件;
源线译码器的输入端连接至状态控制器的源线输出端,源线译码器的输出端连接至1T1R阵列的源线;源线译码器对状态控制器产生的控制信号进行译码后,得到源线控制信号,并将源线控制信号通过1T1R阵列的源线输入到1T1R器件;
字线控制信号、位线控制信号以及源线控制信号到共同施加到1T1R阵列,实现对1T1R阵列中1T1R器件状态的控制;
信号放大器的输入端连接至1T1R阵列的位线;在读取1T1R阵列中存储的数据信息时,信号放大器将获取的1T1R器件存储的电阻信号转变为电压信号后输出到控制信号调制解调器;
控制信号调制解调器的第一输入端连接至状态控制器的次级输出端,控制信号调制解调器的第二输入端连接至信号放大器的输出端;控制信号 调制解调器对状态控制器产生的控制信号进行译码,得到下一级电路的控制信号,或者直接对信号放大器输出的数据电压信号进行传输;下一级电路为同一1T1R阵列中的下一个1T1R器件,或者为计算阵列中的下一个1T1R阵列;
数据传输电路的输入端连接至控制信号调制解调器的输出端;数据传输电路将控制信号调制解调器输出的数据电压信号通过状态控制器的结果输入端反馈输出给状态控制器,或者将控制信号调制解调器输出的控制信号分别传输给下一级电路的字线译码器、位线译码器以及源线译码器。
状态控制器的数据输入输出端Data、地址输入端Address以及时钟信号输入端CLK分别作为计算阵列的数据输入输出端、地址输入端以及时钟信号输入端。
基于1T1R器件的计算阵列以外加电压脉冲作为输入信号来进行逻辑运算,以1T1R器件最终的电阻状态表征逻辑运算的结果;逻辑运算的结果能够非易失地存储在器件的电阻状态中,通过小电流(一般在纳安级)或者小电压(一般在0.2V以下)的读信号可以将该电阻状态读出,通过施加一定幅值和脉宽的电压脉冲对该电阻信号进行擦除。
1T1R计算阵列通过对1T1R阵列的字线、源线以及位线施加不同的电压脉冲信号在1T1R器件上实现布尔逻辑运算。1T1R器件的初始化电阻状态定义为逻辑信号I,并且1T1R器件的初始化电阻状态为高阻态时I=0,1T1R器件的初始化电阻状态为低阻态时I=1;字线电平电压定义为逻辑信号V WL,并且给字线施加零电平脉冲时V WL=0,给字线施加正向电压脉冲时V WL=1;位线电平电压定义为逻辑信号V BL,并且给位线施加零电平脉冲时V BL=0,给位线施加正向电压脉冲时,V BL=1;源线电平电压定义为逻辑信号V SL,并且给源线施加零电平脉冲时V SL=0,给源线施加正向电压脉冲时V SL=1;1T1R器件上的逻辑运算结果非易失性地存储在1T1R器件中,读取1T1R器件上存储的信息时,1T1R器件的电阻状态定义为逻辑信号R, 并且当1T1R器件的电阻状态为高阻态时R=0,当1T1R器件的电阻状态为低阻态时R=1;逻辑信号I、逻辑信号V WL、逻辑信号V BL、逻辑信号V SL以及逻辑信号R之间的逻辑关系为:
Figure PCTCN2018090247-appb-000001
1T1R计算阵列在单个1T1R器件上实现布尔逻辑运算,具体包括如下步骤:
(1)对1T1R器件进行初始化处理,获取逻辑信号I;
(2)分别对字线、源线及位线施加电压脉冲信号,获取逻辑信号V WL、逻辑信号V SL以及逻辑信号V BL
(3)读取逻辑运算结果,即逻辑信号R。
通过控制逻辑信号I、V WL、V BL以及V SL的值,可以实现以下16种布尔逻辑运算:
逻辑0的实现:I=0,V WL=0,V BL=p,V SL=q;
逻辑1的实现:I=1,V WL=0,V BL=p,V SL=q;
p逻辑的实现:I=p,V WL=0,V BL=0,V SL=q;
p逻辑的实现:I=q,V WL=0,V BL=0,V SL=p;
Figure PCTCN2018090247-appb-000002
逻辑的实现:
Figure PCTCN2018090247-appb-000003
V WL=0,V BL=p,V SL=q;
Figure PCTCN2018090247-appb-000004
逻辑的实现:
Figure PCTCN2018090247-appb-000005
V WL=0,V BL=p,V SL=q;
p+q逻辑的实现:I=p,V WL=1,V BL=p,V SL=0;
Figure PCTCN2018090247-appb-000006
逻辑的实现:I=1,V WL=p,V BL=0,V SL=q;
p·q逻辑的实现:I=0,V WL=p,V BL=q,V SL=0;
Figure PCTCN2018090247-appb-000007
逻辑的实现:
Figure PCTCN2018090247-appb-000008
V WL=p,V BL=q,V SL=1;
Figure PCTCN2018090247-appb-000009
逻辑的实现:I=1,V WL=1,V BL=p,V SL=q;
Figure PCTCN2018090247-appb-000010
逻辑的实现:I=1,V WL=p,V BL=q,V SL=1;
Figure PCTCN2018090247-appb-000011
逻辑的实现:I=q,V WL=1,V BL=0,V SL=p;
Figure PCTCN2018090247-appb-000012
逻辑的实现:I=p,V WL=1,V BL=0,V SL=q;
Figure PCTCN2018090247-appb-000013
逻辑的实现:I=p,V WL=q,
Figure PCTCN2018090247-appb-000014
V SL=p;
Figure PCTCN2018090247-appb-000015
逻辑的实现:
Figure PCTCN2018090247-appb-000016
V WL=p,V BL=q,
Figure PCTCN2018090247-appb-000017
更进一步地,通过字线输入逻辑信号V WL=1,通过位线输入逻辑信号V BL=V read,通过源线输入逻辑信号V SL=0,可以读取1T1R器件上存储的逻辑信号;其中V read为读取1T1R器件的电阻状态时施加的电压脉冲信号。
本发明中,与I、V WL、V BL以及V SL相类似的符号均用于表示相同概念的逻辑信号,仅通过不同的下标区分不同的1T1R器件所对应的信号。
按照本发明的第二方面,提供了一种基于计算阵列的运算电路,用于实现一位全加器,具体地,根据输入的逻辑信号a、逻辑信号b和低位进位c 0计算和值s 0以及高位进位c 1;运算电路包括:1T1R阵列A 1、1T1R阵列A 2以及1T1R阵列A 3;1T1R阵列A 1包括1个1T1R器件R b,用于计算并存储中间数据
Figure PCTCN2018090247-appb-000018
R b对应的字线信号为V WLb,R b对应的位线信号为V BLb,R b对应的源线信号为V SLb;1T1R阵列A 2包括1个1T1R器件R c,用于计算并存储高位进位c 1,R c对应的字线信号为V WLc,R c对应的位线信号为V BLc,R c对应的源线信号为V SLc;1T1R阵列A 3包括1个1T1R器件R s,用于计算并存储和值s 0,R s对应的字线信号为V WLs,R s对应的位线信号为V BLs,R s对应的源线信号为V SLs;1T1R阵列A 1计算所得的中间数据
Figure PCTCN2018090247-appb-000019
和1T1R阵列A 2计算所得的进位信息c 1通过信号放大器和控制信号调制解调器实现信号转变,并通过数据传输电路传输给1T1R阵列A 3
结合本发明的第二方面,本发明还提供了一种基于计算阵列的运算电路的操作方法,包括如下步骤:
(S1-1)输入逻辑信号V WLc=1、V BLc=c 0以及
Figure PCTCN2018090247-appb-000020
将输入的逻辑信号c 0写入到1T1R阵列A 2的R c中;输入逻辑信号V WLb=1、V BLb=a 0以及
Figure PCTCN2018090247-appb-000021
将输入的逻辑信号a 0写入到1T1R阵列A 1的R b中;输入逻辑信号V WLs=1、V BLs=a 0以及
Figure PCTCN2018090247-appb-000022
将输入的逻辑信号a 0写入到1T1R阵 列A 3的R s中;
(S1-2)输入逻辑信号V WLc=1、V BLc=a 0以及
Figure PCTCN2018090247-appb-000023
计算高位进位c 1=a 0·b 0+a 0·c 0+c 0·b 0,并将c 1存储到1T1R阵列A 2的R c中;输入逻辑信号V WLb=b 0
Figure PCTCN2018090247-appb-000024
以及V SLb=a 0,计算中间结果
Figure PCTCN2018090247-appb-000025
并将
Figure PCTCN2018090247-appb-000026
存储到1T1R阵列A 1的R b中;输入逻辑信号V WLs=b 0
Figure PCTCN2018090247-appb-000027
以及V SLs=a 0,计算中间结果
Figure PCTCN2018090247-appb-000028
并将
Figure PCTCN2018090247-appb-000029
存储到1T1R阵列A 3的R s中;
(S1-3)读取1T1R阵列A 2的R c中存储的逻辑信号c 1;读取1T1R阵列A 1的R b中存储的逻辑信号
Figure PCTCN2018090247-appb-000030
输入逻辑信号V WLs=c 0
Figure PCTCN2018090247-appb-000031
以及
Figure PCTCN2018090247-appb-000032
计算和值
Figure PCTCN2018090247-appb-000033
并将和值s 0存储在1T1R阵列A 3的R s中;
(S1-4)读取1T1R阵列A 3的R s中存储的逻辑信号s 0
按照本发明的第三方面,提供了一种基于计算阵列的运算电路,用于实现多位逐位进位加法器,具体地,根据输入的数据a 0~n-1和b 0~n-1以及进位信息c 0,计算和值s 0~n-1以及进位信息c n,n表示运算数据的位数;运算电路包括:1T1R阵列D 1、1T1R阵列D 2以及1T1R阵列D 3;1T1R阵列D 1包括n个1T1R器件R 0b~R (n-1)b,用于存储计算中间结果
Figure PCTCN2018090247-appb-000034
R 0b~R (n-1)b对应的字线控制信号为V WL0b~V WL(n-1)b,R 0b~R (n-1)b对应的位线控制信号分别为V BL0b~V BL(n-1)b,R 0b~R (n-1)b对应的源线控制信号分别为V SL0b~V SL(n-1)b;1T1R阵列D 1用于数据备份;1T1R阵列D 2包括1个1T1R器件R n,用于计算并存储进位信息c i(i的取值为0~n),R n对应的字线控制信号为V WLn,R n对应的位线控制信号为V BLn,R n对应的源线控制信号为V SLn;1T1R阵列D 3包括n个1T1R器件R 0~R n-1,用于计算并存储加法运算结果s 0~n-1,R 0~R n-1对应的字线控制信号为V WL0~V WL(n-1),R 0~R n-1对应的位线控制信号为V BL0~V BL(n-1),R 0~R n-1对应的源线控制信号为V SL0~V SL(n-1);1T1R阵列D 1计算所得的中间数据
Figure PCTCN2018090247-appb-000035
和1T1R阵列D 2计算所得的进位信息c i通过信号 放大器和控制信号调制解调器实现信号转变,并通过数据传输电路传输给1T1R阵列D 3
结合本发明的第三方面,本发明还提供了一种基于计算阵列的运算电路的操作方法,包括如下步骤:
(S2-1)输入逻辑信号V WL0~(n-1)=1、V BL0~(n-1)=a 0~n以及
Figure PCTCN2018090247-appb-000036
将输入的运算数据a 0~n-1写入1T1R阵列D 3的R 0~R n-1中;输入逻辑信号V WLn=1、V BLn=c 0以及
Figure PCTCN2018090247-appb-000037
将输入的进位信息c 0写入到1T1R阵列D 2的R n中,同时保证1T1R阵列D 1与1T1R阵列D 3的字线输入信号、位线输入信号以及源线输入信号对应相同;
(S2-2)输入逻辑信号V WL0~(n-1)=b 0~n-1
Figure PCTCN2018090247-appb-000038
以及V SL0~(n-1)=a 0~n-1,计算中间结果
Figure PCTCN2018090247-appb-000039
并将
Figure PCTCN2018090247-appb-000040
存储到1T1R阵列D 3的R 0~R n-1中;输入逻辑信号V WL0b~(n-1)b=b 0~n-1
Figure PCTCN2018090247-appb-000041
以及V SL0b~(n-1)b=a 0~n-1,计算中间结果
Figure PCTCN2018090247-appb-000042
并将
Figure PCTCN2018090247-appb-000043
存储到1T1R阵D 1的R 0b~R (n-1)b中;输入逻辑信号V WLn=1、V BLn=a 0以及
Figure PCTCN2018090247-appb-000044
计算进位信息c 1=a 0·b 0+a 0·c 0+c 0·b 0,并将c 1存储到1T1R阵列D 2的R n中;
(S2-3)读取1T1R阵列D 1的R 0b中存储的逻辑信号
Figure PCTCN2018090247-appb-000045
读取1T1R阵列D 1的R 1b中存储的逻辑信号
Figure PCTCN2018090247-appb-000046
输入逻辑信号V WL0=c 0、V WL1=c 1、V WL2~n-1=0、
Figure PCTCN2018090247-appb-000047
V BL2~n-1=0、
Figure PCTCN2018090247-appb-000048
以及V SL2~n-1=0,计算
Figure PCTCN2018090247-appb-000049
并将s 0存储于1T1R阵列D 3的R 0中,将s 1存储于1T1R阵列D 3的R 1中;
(S2-4)用i表示运算数据或运算结果中的第i位,给i赋初始值i=2;
(S2-5)输入逻辑信号V WLn=1、V BLn=a i-1以及
Figure PCTCN2018090247-appb-000050
计算进位信息c i=a i-1·b i-1+a i-1·c i-1+c i-1·b i-1,并将进位信息c i存储到1T1R阵列D 2的R n中;
(S2-6)读取1T1R阵列D 1的R ib中存储的逻辑信号
Figure PCTCN2018090247-appb-000051
输入逻辑信号 V WL0~(i-1)=0、V WL2=c i、V WL(i+1)~(n-1)=0、V BL0~(i-1)=0、
Figure PCTCN2018090247-appb-000052
V BL(i+1)~(n-1)=0、
Figure PCTCN2018090247-appb-000053
以及V SL(i+1)~(n-1)=0,计算
Figure PCTCN2018090247-appb-000054
并将s i存储到1T1R阵列D 3的R i中;
(S2-7)将i的取值自增1,若i<n-1,则转入步骤(S2-5);否则,转入步骤(S2-8);
(S2-8)输入逻辑信号V WLn=1、V BLn=a n-2以及
Figure PCTCN2018090247-appb-000055
计算进位信息c n-1=a n-2·b n-2+a n-2·c n-2+c n-2·b n-2,并将进位信息c n-1存储到1T1R阵列D 2的R n中;
(S2-9)读取1T1R阵列D 1的R (n-1)b中存储的逻辑信息
Figure PCTCN2018090247-appb-000056
输入逻辑信号V WL0~(n-2)=0、V WL(n-1)=c n-1、V BL0~(n-2)=0、
Figure PCTCN2018090247-appb-000057
V SL0~(n-2)=0以及
Figure PCTCN2018090247-appb-000058
计算
Figure PCTCN2018090247-appb-000059
并将并将s n-1存储到1T1R阵列D 3的R n-1中;
(S2-10)输入逻辑信号V WLn=1、V BLn=a n-1以及
Figure PCTCN2018090247-appb-000060
计算c n=a n-1·b n-1+a n-1·c n-1+c n-1·b n-1,并将c n存储到1T1R阵列D 2的R n中。
按照本发明的第四方面,提供了一种基于计算阵列的运算电路,用于实现优化的多位逐位进位加法器,具体地,根据输入的数据a 0~n-1和b 0~n-1以及进位信息c 0,计算和值s 0~n-1及进位信息c n,n表示运算数据的位数;运算电路包括:1T1R阵列E 1、1T1R阵列E 2以及1T1R阵列E 3;1T1R阵列E 1包括n个1T1R器件R 0b~R (n-1)b,用于保存计算数据
Figure PCTCN2018090247-appb-000061
R 0b~R (n-1)b对应的字线控制信号为V WL0b~V WL(n-1)b,R 0b~R (n-1)b对应的位线控制信号分别为V BL0b~V BL(n-1)b,R 0b~R (n-1)b对应的源线控制信号分别为V SL0b~V SL(n-1)b;1T1R阵列E 1用于数据备份;1T1R阵列E 2包括(n+1)个1T1R器件R 0c~R nc,用于计算并存储进位数据c i(i的取值为0~n),R 0c~R nc对应的字线控制信号为V WL0c~V WLnc,R 0c~R nc对应的位线控制信号分别为V BL0c~V BLnc,R 0c~R nc对应的源线控制信号分别为V SL0c~V SLnc;1T1R阵列E 3包括n个1T1R器件 R 0~R n-1,用于计算并存储加法运算结果s 0~n-1,R 0~R n-1对应的字线控制信号为V WL0~V WL(n-1),R 0~R n-1对应的位线控制信号为V BL0~V BL(n-1),R 0~R n-1对应的源线控制信号为V SL0~V SL(n-1);1T1R阵列E 1计算所得的中间数据
Figure PCTCN2018090247-appb-000062
和1T1R阵列E 2计算所得的进位信息c i通过信号放大器和控制信号调制解调器实现信号转变,并通过数据传输电路传输给1T1R阵列E 3
结合本发明的第四方面,本发明还提供了一种基于计算阵列的运算电路的操作方法,包括如下步骤:
(S3-1)输入逻辑信号V WL0~(n-1)=1、V BL0~(n-1)=a 0~n-1以及
Figure PCTCN2018090247-appb-000063
将输入的运算数据a 0~n-1存储到1T1R阵列E 3的R 0~R n-1中;输入逻辑信号V WL0b~(n-1)b=1、V BL0b~(n-1)b=a 0~n-1以及
Figure PCTCN2018090247-appb-000064
将输入的运算数据a 0~n-1写入1T1R阵列E 1的R 0b~R (n-1)b中;输入逻辑信号V WL0c~nc=1、V BL0c~nc=c 0以及
Figure PCTCN2018090247-appb-000065
将输入的进位信息c 0写入到1T1R阵列E 2的R 0c~R nc中;
(S3-2)输入逻辑信号V WL0~n-1=b 0~n-1
Figure PCTCN2018090247-appb-000066
以及V SL0~(n-1)=a 0~n-1,计算
Figure PCTCN2018090247-appb-000067
并将
Figure PCTCN2018090247-appb-000068
存储到1T1R阵列E 3的R 0~R n-1中;输入逻辑信号V WL0b~(n-1)b=b 0~n-1
Figure PCTCN2018090247-appb-000069
以及V SL0b~(n-1)b=a n,计算
Figure PCTCN2018090247-appb-000070
并将
Figure PCTCN2018090247-appb-000071
存储到1T1R阵列E 1的R 0b~R (n-1)b中;输入逻辑信号V WL0c=0、V WL1c~nc=1、V BL0c~nc=a 0以及
Figure PCTCN2018090247-appb-000072
计算进位信息c 1=a 0·b 0+a 0·c 0+c 0·b 0,并将c 1存储到1T1R阵列E 2的R 1c~nc中;
(S3-3)读取1T1R阵列E 1的R 0b中存储的逻辑信号
Figure PCTCN2018090247-appb-000073
读取1T1R阵列E 1的R 1b中存储的逻辑信号
Figure PCTCN2018090247-appb-000074
输入逻辑信号V WL0=c 0、V WL1=c 1、V WL2~(n-1)=0、
Figure PCTCN2018090247-appb-000075
V BL2~(n-1)=0、
Figure PCTCN2018090247-appb-000076
以及V SL2~(n-1)=0,计算
Figure PCTCN2018090247-appb-000077
并将s 0存储到1T1R阵列E 3的R 0中,将s 1存储到1T1R阵列E 3的R 1中;输入逻辑信号V WL0c~1c=0、V WL2c~nc=1、V BL0c~nc=a 1以及
Figure PCTCN2018090247-appb-000078
计算进位信息c 2=a 1·b 1+a 1·c 1+c 1·b 1,并将c 2存储到1T1R阵列E 2的R 2c~nc中;
(S3-4)用i表示运算数据或运算结果中的第i位,给i赋初始值i=2;
(S3-5)读取1T1R阵列E 1的R ib中存储的逻辑信号
Figure PCTCN2018090247-appb-000079
输入逻辑信号V WL0~(i-1)=0、V WLi=c i、V WL(i+1)~(n-1)=0、V BL0~(i-1)=0、
Figure PCTCN2018090247-appb-000080
V BL(i+1)~(n-1)=0、
Figure PCTCN2018090247-appb-000081
以及V SL(i+1)~(n-1)=0,计算
Figure PCTCN2018090247-appb-000082
并将s i存储到1T1R阵列E 3的R i中;输入逻辑信号V WL0c~ic=0、V WL(i+1)c~nc=1、V BL0c~nc=a i以及
Figure PCTCN2018090247-appb-000083
计算进位信息c i+1=a i·b i+a i·c i+c i·b i,并将c i+1存储到1T1R阵列E 2的R (i+1)c~nc中;
(S3-6)将i的取值自增1,若i<n-1,则转入步骤(S3-5);否则,转入步骤(S3-7);
(S3-7)读取1T1R阵列E 1的R (n-1)b中存储的逻辑信号
Figure PCTCN2018090247-appb-000084
输入逻辑信号V WL0~(n-2)=0、V WL(n-1)=c n-1、V BL0~(n-2)=0、
Figure PCTCN2018090247-appb-000085
以及V SL0~(n-2)=0以及
Figure PCTCN2018090247-appb-000086
计算
Figure PCTCN2018090247-appb-000087
并将并将s n-1存储到1T1R阵列E 3的R n-1中;输入逻辑信号V WL0c~(n-1)c=0、V WLnc=1、V BL0c~nc=a n-1以及
Figure PCTCN2018090247-appb-000088
计算进位信息c n=a n-1·b n-1+a n-1·c n-1+c n-1·b n-1,并将c n存储在1T1R阵列E 2的的R nc中。
按照本发明的第五方面,提供了一种基于计算阵列的运算电路,用于实现二位数据选择器,具体地,输入逻辑信号a、逻辑信号b以及控制信号Sel,通过控制Sel的取值选择输出逻辑信号a或者逻辑信号b;运算电路包括1T1R阵列F;1T1R阵列F包括1个1T1R器件R,R对应的字线信号为V WL,R对应的位线信号为V BL,R对应的源线信号为V SL
结合本发明的第五方面,本发明还提供了一种基于计算阵列的运算电路的操作方法,具体包括如下步骤:
(S4-1)输入逻辑信号V WL=1、V BL=a以及
Figure PCTCN2018090247-appb-000089
对1T1R器件R进行初始化,将输入的逻辑信号a写入1T1R阵列F的R中;
(S4-2)输入逻辑信号V WL=Sel、V BL=b以及
Figure PCTCN2018090247-appb-000090
输入逻辑信号b 及控制信号Sel,并选择输出逻辑信号out;
逻辑信号a与逻辑信号b仅代表两个独立的逻辑信号;当控制信号Sel=0时,输出信号out=a;当控制信号Sel=1时,输出信号out=b。
按照本发明的第六方面,提供了一种基于计算阵列的运算电路,用于实现多位进位选择加法器,具体地,根据输入的数据a 0~n-1和b 0~n-1以及进位信息c 0,计算和值s 0~n-1及进位信息c n,n表示运算数据的位数,在计算过程中根据每一位的进位信息,选择运算数据对应位的同或运算结果或者异或运算结果作为和值的位信息;运算电路包括1T1R阵列G 1、1T1R阵列G 2以及1T1R阵列G 3;1T1R阵列G 1包括n个1T1R器件R 0x~R (n-1)x,用于保存计算数据a 0~n-1与b 0~n-1的同或运算结果X 0~n-1=a 0~n-1XNOR b 0~n-1,R 0x~R (n-1)x对应的字线控制信号为V WL0x~V WL(n-1)x,R 0x~R (n-1)x对应的位线控制信号分别为V BL0x~V BL(n-1)x,R 0x~R (n-1)x对应的源线控制信号分别为V SL0x~V SL(n-1)x;1T1R阵列G 2包括(n+1)个1T1R器件R 0c~R nc,用于计算进位信息c i(i的取值为0~n),R 0c~R nc对应的字线控制信号分别为V WL0c~V WLnc,R 0c~R nc对应的位线控制信号分别为V BL0c~V BLnc,R 0c~R nc对应的源线控制信号分别为V SL0c~V SLnc;1T1R阵列G 3包括n个1T1R器件R 0~R n-1,用于计算并存储加法运算结果s 0~n-1,R 0~R n-1对应的字线控制信号为V WL0~V WL(n-1),R 0~R n-1对应的位线控制信号为V BL0~V BL(n-1),R 0~R n-1对应的源线控制信号为V SL0~V SL(n-1);1T1R阵列G 1计算所得的同或运算结果X 0~n-1和1T1R阵列G 2计算所得的进位信息c i通过信号放大器和控制信号调制解调器实现信号转变,并通过数据传输电路传输给1T1R阵列G 3
结合本发明的第六方面,本发明还提供了一种基于计算阵列的运算电路的操作方法,包括如下步骤:
(S5-1)输入逻辑信号V WL0x~(n-1)x=1、
Figure PCTCN2018090247-appb-000091
以及V SL0x~7x=b 0~n-1,将输入的运算数据b 0~n-1取反后的结果
Figure PCTCN2018090247-appb-000092
存储到1T1R阵列G 1的R 0x~R (n-1)x 中;输入逻辑信号V WL0c~nc=1、V BL0c~nc=c 0以及
Figure PCTCN2018090247-appb-000093
将输入的进位信息c 0存储到1T1R阵列G 2的R 0c~R nc中;输入逻辑信号V WL0~(n-1)=1、V BL0~(n-1)=a 0~n-1以及
Figure PCTCN2018090247-appb-000094
将输入的运算数据a 0~n-1存储到1T1R阵列G 3的R 0~R n-1中;
(S5-2)输入逻辑信号V WL0x~(n-1)x=a 0~n-1、V BL0x~(n-1)x=b 0~n-1以及
Figure PCTCN2018090247-appb-000095
计算a 0~n-1与b 0~n-1的同或运算结果X 0~n-1=a 0~n-1XNOR b 0~n-1,并将同或运算结果X 0~n-1存储于1T1R阵列G 1的R 0x~R (n-1)x中;输入逻辑信号V WL0c=0、V WL1c~nc=1、V BL0c~nc=a 0以及
Figure PCTCN2018090247-appb-000096
计算进位信息c 1=a 0·b 0+a 0·c 0+c 0·b 0,并将c 1存储到1T1R阵列G 2的R 1c~R nc中;输入逻辑信号V WL0~(n-1)=b 0~n-1、V BL0~(n-1)=a 0~n-1以及
Figure PCTCN2018090247-appb-000097
计算异或结果
Figure PCTCN2018090247-appb-000098
Figure PCTCN2018090247-appb-000099
Figure PCTCN2018090247-appb-000100
存储于1T1R阵列G 3的R 0~R n-1中;
(S5-3)输入逻辑信号V WL0c~1c=0、V WL2c~nc=1、V BL0c~nc=a 1以及
Figure PCTCN2018090247-appb-000101
计算c 2=a 1·b 1+a 1·c 1+c 1·b 1,并将c 2存储到1T1R阵列G 2的R 2c~R nc中;输入逻辑信号V WL0=c 0、V WL1=c 1、V WL2~(n-1)=0、V BL0~(n-1)=X 0~n-1以及
Figure PCTCN2018090247-appb-000102
计算s 0和s 1,并将s 0存储到1T1R阵列G 3的R 0中,将s 1存储到1T1R阵列G 3的R 1中;当c 0=0时,
Figure PCTCN2018090247-appb-000103
当c 0=1时,
Figure PCTCN2018090247-appb-000104
当c 1=0时,
Figure PCTCN2018090247-appb-000105
当c 1=1时,
Figure PCTCN2018090247-appb-000106
(S5-4)用i表示运算数据或运算结果中的第i位,给i赋初始值i=2;
(S5-5)输入逻辑信号V WL0c~ic=0、V WL(i+1)c~nc=1、V BL0c~nc=a i以及
Figure PCTCN2018090247-appb-000107
计算进位信息c i+1=a i·b i+a i·c i+c i·b i,并将c i+1存储到1T1R阵列G 2的R (i+1)c~R nc中;输入逻辑信号V WL0~(i-1)=0、V WLi=c i、V WL(i+1)~(n-1)=0、V BL0~(n-1)=X 0~n-1以及
Figure PCTCN2018090247-appb-000108
计算s i,并将s i存储到1T1R阵列G 3的R i中;当c i=0时,
Figure PCTCN2018090247-appb-000109
当c i=1时,
Figure PCTCN2018090247-appb-000110
(S5-6)将i的取值自增1,若i<n-1,则转入步骤(S5-5);否则,转入步骤(S5-7);
(S5-7)输入逻辑信号V WL0c~(n-1)c=0、V WLnc=1、V BL0c~nc=a n-1以及
Figure PCTCN2018090247-appb-000111
计算c n=a n-1·b n-1+a n-1·c n-1+c n-1·b n-1,并将c n存储到1T1R阵列G 2的R nc中;输入逻辑信号V WL0~(n-2)=0、V WL(n-1)=c n-1、V BL0~(n-1)=X 0~n-1以及
Figure PCTCN2018090247-appb-000112
计算s n-1,并将s n-1存储到1T1R阵列G 3的R n-1中;当c n-1=0时,
Figure PCTCN2018090247-appb-000113
当c n-1=1时,
Figure PCTCN2018090247-appb-000114
按照本发明的第七方面,提供了一种基于计算阵列的运算电路,用于实现多位pre-calculation加法器,具体地,采用提前计算进位信息的方法,根据输入的数据a 0~n-1和b 0~n-1以及进位信息c 0,计算和值s 0~n-1及进位信息c n,n表示运算数据的位数;运算电路包括1T1R阵列H 1以及1T1R阵列H 2;1T1R阵列H 1包括(n+1)个1T1R器件R 0c~R nc,用于计算进位信息c i(i的取值为0~n),R 0c~R nc对应的字线控制信号为V WL0c~V WLnc,R 0c~R nc对应的位线控制信号分别为V BL0c~V BLnc,R 0c~R nc对应的源线控制信号分别为V SL0c~V SLnc;1T1R阵列H 2包括n个1T1R器件R 0~R n-1,用于计算并存储加法运算结果s 0~n-1,R 0~R n-1对应的字线控制信号分别为V WL0~V WL(n-1),R 0~R n-1对应的位线控制信号为V BL0~V BL(n-1),R 0~R n-1对应的源线控制信号为V SL0~V SL(n-1);1T1R阵列H 1计算所得的进位信息c i通过信号放大器和控制信号调制解调器实现信号转变,并通过数据传输电路传输给1T1R阵列H 2
结合本发明的第七方面,本发明还提供了一种基于计算阵列的运算电路的操作方法,包括如下步骤:
(S6-1)输入逻辑信号V WL0c~nc=1、V BL0c~nc=c 0以及
Figure PCTCN2018090247-appb-000115
将输入的进位信息c 0存储到1T1R阵列H 1的R 0c~R nc中;输入逻辑信号V WL0~(n-1)=1、V BL0~(n-1)=c 0以及
Figure PCTCN2018090247-appb-000116
将输入的进位信息c 0存储到1T1R阵列H 2的R 0~R n-1中;
(S6-2)输入逻辑信号V WL0c=0、V WL1c~nc=1、V BL0c~nc=a 0以及
Figure PCTCN2018090247-appb-000117
计算c 1=a 0·b 0+a 0·c 0+c 0·b 0,并将c 1存储到1T1R阵列H 1的R 1c~R nc中;输入逻辑信号V WL0~(n-1)=1、V BL0~(n-1)=a 0、V SL0=b 0以及
Figure PCTCN2018090247-appb-000118
计算
Figure PCTCN2018090247-appb-000119
以及进位信息c 1=a 0·b 0+a 0·c 0+c 0·b 0,并将s' 0存储到1T1R阵列H 2的R 0中,将c 1存储到1T1R阵列H 2的R 1~R n-1中;
(S6-3)输入逻辑信号V WL0c~1c=0、V WL2c~nc=1、V BL0c~nc=a 1以及
Figure PCTCN2018090247-appb-000120
计算c 2=a 1·b 1+a 1·c 1+c 1·b 1,并将c 2存储在1T1R阵列H 1的R 2c~R nc中;输入逻辑信号V WL0~(n-1)=1、V BL0=b 0、V BL1~(n-1)=a 1、V SL0=c 1、V SL1=b 1以及
Figure PCTCN2018090247-appb-000121
计算
Figure PCTCN2018090247-appb-000122
以及c 2=a 1·b 1+a 1·c 1+c 1·b 1,并将s 0存储在1T1R阵列H 2的R 0中,将s' 1存储在1T1R阵列H 2的R 1中,将c 2存储在1T1R阵列H 2的R 2~R 7中;
(S6-4)用i表示运算数据或运算结果中的第i位,给i赋初始值i=1;
(S6-5)输入逻辑信号V WL0c~(i+2)c=0、V WL(i+2)c~nc=1、V BL0c~nc=a i+1以及
Figure PCTCN2018090247-appb-000123
计算c i+2=a i+1·b i+1+a i+1·c i+1+c i+1·b i+1,并将c i+2存储在1T1R阵列H 1的R (i+2)c~R nc中;输入逻辑信号V WL0~(i-1)=0、V WLi~(n-1)=1、V BL0~(i-1)=0、V BLi=b i、V BL2~7=a i+1、V SL0~(i-1)=0、V SLi=c i+1、V SL(i+1)=b (i+1)以及
Figure PCTCN2018090247-appb-000124
计算
Figure PCTCN2018090247-appb-000125
以及c i+2=a i+1·b i+1+a i+1·c i+1+c i+1·b i+1,并将s i存储在1T1R阵列H 2的R i中,将s' i+1存储在1T1R阵列H 2的R i+1中,将c i+2存储在1T1R阵列H 2的R i+2~R n-1中;
(S6-6)将i的取值自增1,若i<n-2,则转入步骤(S6-5);否则,转入步骤(S6-7);
(S6-7)、输入逻辑信号V WL0c~(n-1)c=0、V WLnc=1、V BL0c~nc=a n-1以及
Figure PCTCN2018090247-appb-000126
计算c n=a n-1·b n-1+a n-1·c n-1+c n-1·b n-1,并将c n存储在1T1R阵列H 1的R nc中;输入逻辑信号V WL0~(n-3)=0、V WL(n-2)~(n-1)=1、V BL0~(n-3)=0、V BL(n-2)=b n-2、V BL(n-1)=a n-1、V SL0~(n-3)=0、V SL(n-2)=c n-1以及
Figure PCTCN2018090247-appb-000127
计算
Figure PCTCN2018090247-appb-000128
Figure PCTCN2018090247-appb-000129
以及
Figure PCTCN2018090247-appb-000130
并将s n-2存储到1T1R阵 列H 2的R n-2中,将s' n-1存储到1T1R阵列H 2的R n-1中;
(S6-8)输入逻辑信号V WL0~(n-2)=0、V WL(n-1)=1、V BL0~(n-2)=0、V BL(n-1)=b n-1、V SL0~(n-2)=0以及V SL(n-1)=c n,计算
Figure PCTCN2018090247-appb-000131
并将s n-1存储到1T1R阵列H 2的R n-1中。
总体而言,通过本发明所构思的以上技术方案,提供了一种基于1T1R器件的计算阵列,并基于本发明所提供的计算阵列,提供了多种运算电路,具体地,能够取得以下有益效果:
(1)运算电路以基于1T1R器件的计算阵列为基础,在进行逻辑运算的同时,能够将计算结果直接存储在计算阵列的1T1R器件中,实现了计算与存储的融合;
(2)本发明提供的运算电路,在实现16种布尔逻辑运算时,通过两步就可以完成所有的逻辑操作,极大地简化了逻辑电路的设计,降低了集成工艺的复杂性;
(3)通过设置计算阵列中不同的1T1R阵列数,以及1T1R阵列中的1T1R器件数,结合相应的操作方法,除了可以实现16种基本的布尔逻辑运算,还可以实现一位全加器、多位逐位进位加法器及其优化设计、二位数据选择器、多位进位选择加法器以及多位pre-calculation加法器等复杂运算。
[附图说明]
图1为本发明实施例提供的基于1T1R器件的计算阵列示意图;
图2为本发明实施例提供的计算阵列中的1T1R阵列示意图;
图3为本发明实施例提供的1T1R器件的三围结构示意图及等效电路示意图;(a)为1T1R器件的三围结构示意图;(b)为1T1R器件的等效电路示意图;
图4为本发明实施例提供的基于计算阵列的一位全加器运算电路的框 图及等效电路图;(a)为一位全加器的运算电路框图;(b)为一位全加器运算电路的等效电路图;
图5为本发明实施例提供的基于计算阵列的八位逐位进位加法器运算电路的等效电路图;
图6为本发明实施例提供的基于计算阵列的优化的八位逐位进位加法器运算电路的等效电路图;
图7为本发明实施例提供的基于计算阵列的二位数据选择器运算电路的框图及等效电路图;(a)为二位数据选择器的运算电路的框图;(b)为二位数据选择器运算电路的等效电路图;
图8为本发明实施例提供的基于计算阵列的八位进位选择加法器运算电路的等效电路图;
图9为本发明实施例提供的基于计算阵列的八位pre-calculation加法器运算电路的等效电路图。
在所有附图中,相同的附图标记用来表示相同的元件或者结构,其中:
100为源线译码器,101为字线译码器,102为位线译码器,103为信号放大器,104为状态控制器,105为控制信号调制解调器,106为数据传输电路,300为位线,301为RRAM上电极,302为RRAM功能层,303为RRAM下电极,304为源线,305为晶体管栅极,306为晶体管绝缘层,307为晶体管源极,308为晶体管漏极,309为晶体管基底。
[具体实施方式]
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
本发明提供的基于1T1R器件的计算阵列,如图1所示,包括:1T1R 阵列以及外围电路;1T1R阵列用于实现运算并存储运算结果,外围电路用于传输数据及控制信号,从而控制1T1R阵列的运算及存储过程。
1T1R阵列,如图2所示,包括以阵列形式排布的1T1R器件、字线WL(Write Line)、位线BL(Bit Line)以及源线SL(Source Line);1T1R器件通过不同的电阻状态实现对信息的存储和处理;位于同一行的1T1R器件连接至相同的位线,位于同一列的1T1R器件连接至相同的位线及字线,通过对字线WL、位线BL以及源线SL施加不同的信号以实现不同的运算并存储运算结果。
1T1R器件,如图3所示,包括一个晶体管和一个阻变元件;晶体管包括:基底309、源极307、漏极308、绝缘层306以及栅极305;在本实施例中,阻变元件为阻变存储器RRAM(Resistive Random Access Memory),包括:上电极301、功能层302和下电极303;晶体管的源极307与位线300相连接,晶体管的栅极305与字线相连接,阻变存储器RRAM的上电极301与位线300相连接,阻变存储器RRAM的下电极303与晶体管的漏极308相连接;
1T1R器件的电阻状态包括:高阻态H(High Resistance)和低阻态L(Low Resistance);1T1R器件的电阻状态在外加信号激励的作用下能够发生可逆的电阻状态转变,即在一种外加信号激励方式下,1T1R器件的电阻状态可以从高阻态转变为低阻态,在另一种外加信号激励方式下,1T1R器件的电阻状态可以从低阻态转变为高阻态;利用1T1R器件的两种电阻状态即可实现对信息的存储和处理。
如图1所示,外围电路包括:状态控制器104、字线译码器101、源线译码器100、位线译码器102、信号放大器103、控制信号调制解调器105以及数据传输电路106,其中:
状态控制器104具有数据输入输出端Data、地址输入端Address、时钟信号输入端CLK、结果输入端、字线输出端、位线输出端、源线输出端以 及次级输出端;状态控制器的数据输入输出端Data一方面用于输入计算数据,另一方面用于输出计算结果,状态控制器的地址输入端Address用于输入选定特定器件的地址信息,状态控制器的时钟信号输入端CLK用于输入控制计算时序的时钟信号,结果输入端用于输入上级电路产生的计算结果;状态控制器根据输入的数据、地址信息、时钟信号以及计算结果产生控制信号,或者输出最终的计算结果;
字线译码器101的输入端连接至状态控制器104的字线输出端,字线译码器101的输出端连接至1T1R阵列的字线;字线译码器101对状态控制器104产生的控制信号进行译码后,得到字线控制信号,并将字线控制信号通过1T1R阵列的字线输入到1T1R器件;
位线译码器102的输入端连接至状态控制器104的位线输出端,位线译码器102的输出端连接至1T1R阵列的位线;位线译码器102对状态控制器104产生的控制信号进行译码后,得到位线控制信号,并将位线控制信号通过1T1R阵列的位线输入到1T1R器件;
源线译码器100的输入端连接至状态控制器104的源线输出端,源线译码器100的输出端连接至1T1R阵列的源线;源线译码器100对状态控制器104产生的控制信号进行译码后,得到源线控制信号,并将源线控制信号通过1T1R阵列的源线输入到1T1R器件;
字线控制信号、位线控制信号以及源线控制信号到共同施加到1T1R阵列,实现对1T1R阵列中1T1R器件状态的控制;
信号放大器103的输入端连接至1T1R阵列的位线;在读取1T1R阵列中存储的数据信息时,信号放大器103将获取的1T1R器件存储的电阻信号转变为电压信号后输出到控制信号调制解调器105;
控制信号调制解调器105的第一输入端连接至状态控制器104的次级输出端,控制信号调制解调器105的第二输入端连接至信号放大器103的输出端;控制信号调制解调器105对状态控制器104产生的控制信号进行 译码,得到下一级电路的控制信号,或者直接对信号放大器103输出的数据电压信号进行传输;下一级电路为同一1T1R阵列中的下一个1T1R器件,或者为计算阵列中的下一个1T1R阵列;
数据传输电路106的输入端连接至控制信号调制解调器105的输出端;数据传输电路106将控制信号调制解调器105输出的数据电压信号通过状态控制器104的结果输入端反馈输出给状态控制器104,或者将控制信号调制解调器105输出的控制信号分别传输给下一级电路的字线译码器、位线译码器以及源线译码器。
状态控制器104的数据输入输出端Data、地址输入端Address以及时钟信号输入端CLK分别作为计算阵列的数据输入输出端、地址输入端以及时钟信号输入端。
基于1T1R器件的计算阵列以外加电压脉冲作为输入信号来进行逻辑运算,以1T1R器件最终的电阻状态表征逻辑运算的结果;逻辑运算的结果能够非易失地存储在器件的电阻状态中,通过小电流(一般在纳安级)或者小电压(一般在0.2V以下)的读信号可以将该电阻状态读出,通过施加一定幅值和脉宽的电压脉冲对该电阻信号进行擦除。
1T1R计算阵列通过对1T1R阵列的字线、源线以及位线施加不同的电压脉冲信号在1T1R器件上实现布尔逻辑运算。1T1R器件的初始化电阻状态定义为逻辑信号I,并且1T1R器件的初始化电阻状态为高阻态时I=0,1T1R器件的初始化电阻状态为低阻态时I=1;字线电平电压定义为逻辑信号V WL,并且给字线施加零电平脉冲时V WL=0,给字线施加正向电压脉冲时V WL=1;位线电平电压定义为逻辑信号V BL,并且给位线施加零电平脉冲时V BL=0,给位线施加正向电压脉冲时,V BL=1;源线电平电压定义为逻辑信号V SL,并且给源线施加零电平脉冲时V SL=0,给源线施加正向电压脉冲时V SL=1;1T1R器件上的逻辑运算结果非易失性地存储在1T1R器件中,读取1T1R器件上存储的信息时,1T1R器件的电阻状态定义为逻辑信号R, 并且当1T1R器件的电阻状态为高阻态时R=0,当1T1R器件的电阻状态为低阻态时R=1;逻辑信号I、逻辑信号V WL、逻辑信号V BL、逻辑信号V SL以及逻辑信号R之间的逻辑关系为:
Figure PCTCN2018090247-appb-000132
1T1R计算阵列在单个1T1R器件上实现布尔逻辑运算,具体包括如下步骤:
(1)对1T1R器件进行初始化处理,获取逻辑信号I;
(2)分别对字线、源线及位线施加电压脉冲信号,获取逻辑信号V WL、逻辑信号V SL以及逻辑信号V BL
(3)读取逻辑运算结果,即逻辑信号R。
通过控制逻辑信号I、V WL、V BL以及V SL的值,可以实现以下16中布尔逻辑运算:
逻辑0的实现:I=0,V WL=0,V BL=p,V SL=q;
逻辑1的实现:I=1,V WL=0,V BL=p,V SL=q;
p逻辑的实现:I=p,V WL=0,V BL=0,V SL=q;
p逻辑的实现:I=q,V WL=0,V BL=0,V SL=p;
Figure PCTCN2018090247-appb-000133
逻辑的实现:
Figure PCTCN2018090247-appb-000134
V WL=0,V BL=p,V SL=q;
Figure PCTCN2018090247-appb-000135
逻辑的实现:
Figure PCTCN2018090247-appb-000136
V WL=0,V BL=p,V SL=q;
p+q逻辑的实现:I=p,V WL=1,V BL=p,V SL=0;
Figure PCTCN2018090247-appb-000137
逻辑的实现:I=1,V WL=p,V BL=0,V SL=q;
p·q逻辑的实现:I=0,V WL=p,V BL=q,V SL=0;
Figure PCTCN2018090247-appb-000138
逻辑的实现:
Figure PCTCN2018090247-appb-000139
V WL=p,V BL=q,V SL=1;
Figure PCTCN2018090247-appb-000140
逻辑的实现:I=1,V WL=1,V BL=p,V SL=q;
Figure PCTCN2018090247-appb-000141
逻辑的实现:I=1,V WL=p,V BL=q,V SL=1;
Figure PCTCN2018090247-appb-000142
逻辑的实现:I=q,V WL=1,V BL=0,V SL=p;
Figure PCTCN2018090247-appb-000143
逻辑的实现:I=p,V WL=1,V BL=0,V SL=q;
Figure PCTCN2018090247-appb-000144
逻辑的实现:I=p,V WL=q,
Figure PCTCN2018090247-appb-000145
V SL=p;
Figure PCTCN2018090247-appb-000146
逻辑的实现:
Figure PCTCN2018090247-appb-000147
V WL=p,V BL=q,
Figure PCTCN2018090247-appb-000148
更进一步地,通过字线输入逻辑信号V WL=1,通过位线输入逻辑信号V BL=V read,通过源线输入逻辑信号V SL=0,可以读取1T1R器件上存储的逻辑信号;其中V read为读取1T1R器件的电阻状态时施加的电压脉冲信号。
本发明中,与I、V WL、V BL以及V SL相类似的符号均用于表示相同概念的逻辑信号,仅通过不同的下标区分不同的1T1R器件所对应的信号。
图4所示为本发明提供的基于计算阵列的运算电路,用于实现一位全加器,具体地,根据输入的逻辑信号a、逻辑信号b和低位进位c 0计算和值s 0以及高位进位c 1;运算电路包括:1T1R阵列A 1、1T1R阵列A 2以及1T1R阵列A 3;1T1R阵列A 1包括1个1T1R器件R b,用于计算并存储中间数据
Figure PCTCN2018090247-appb-000149
R b对应的字线信号为V WLb,R b对应的位线信号为V BLb,R b对应的源线信号为V SLb;1T1R阵列A 2包括1个1T1R器件R c,用于计算并存储高位进位c 1,R c对应的字线信号为V WLc,R c对应的位线信号为V BLc,R c对应的源线信号为V SLc;1T1R阵列A 3包括1个1T1R器件R s,用于计算并存储和值s 0,R s对应的字线信号为V WLs,R s对应的位线信号为V BLs,R s对应的源线信号为V SLs;1T1R阵列A 1计算所得的中间数据
Figure PCTCN2018090247-appb-000150
和1T1R阵列A 2计算所得的进位信息c 1通过信号放大器和控制信号调制解调器实现信号转变,并通过数据传输电路传输给1T1R阵列A 3
结合图4所示的基于计算阵列的运算电路,本发明提供的操作方法包括如下步骤:
(S1-1)输入逻辑信号V WLc=1、V BLc=c 0以及
Figure PCTCN2018090247-appb-000151
将输入的逻辑信号c 0写入到1T1R阵列A 2的R c中;输入逻辑信号V WLb=1、V BLb=a 0以及
Figure PCTCN2018090247-appb-000152
将输入的逻辑信号a 0写入到1T1R阵列A 1的R b中;输入逻辑信号V WLs=1、V BLs=a 0以及
Figure PCTCN2018090247-appb-000153
将输入的逻辑信号a 0写入到1T1R阵 列A 3的R s中;
(S1-2)输入逻辑信号V WLc=1、V BLc=a 0以及
Figure PCTCN2018090247-appb-000154
计算高位进位c 1=a 0·b 0+a 0·c 0+c 0·b 0,并将c 1存储到1T1R阵列A 2的R c中;输入逻辑信号V WLb=b 0
Figure PCTCN2018090247-appb-000155
以及V SLb=a 0,计算中间结果
Figure PCTCN2018090247-appb-000156
并将
Figure PCTCN2018090247-appb-000157
存储到1T1R阵列A 1的R b中;输入逻辑信号V WLs=b 0
Figure PCTCN2018090247-appb-000158
以及V SLs=a 0,计算中间结果
Figure PCTCN2018090247-appb-000159
并将
Figure PCTCN2018090247-appb-000160
存储到1T1R阵列A 3的R s中;
(S1-3)读取1T1R阵列A 2的R c中存储的逻辑信号c 1;读取1T1R阵列A 1的R b中存储的逻辑信号
Figure PCTCN2018090247-appb-000161
输入逻辑信号V WLs=c 0
Figure PCTCN2018090247-appb-000162
以及
Figure PCTCN2018090247-appb-000163
计算和值
Figure PCTCN2018090247-appb-000164
并将和值s 0存储在1T1R阵列A 3的R s中;
(S1-4)读取1T1R阵列A 3的R s中存储的逻辑信号s 0
图5所示为本发明提供的基于计算阵列的运算电路,用于实现八位逐位进位加法器,具体地,根据输入的数据a 0~7和b 0~7以及进位信息c 0,计算和值s 0~7以及进位信息c 8;运算电路包括:1T1R阵列D 1、1T1R阵列D 2以及1T1R阵列D 3;1T1R阵列D 1包括8个1T1R器件R 0b~R 7b,用于存储计算中间结果
Figure PCTCN2018090247-appb-000165
R 0b~R 7b对应的字线控制信号为V WL0b~V WL7b,R 0b~R 7b对应的位线控制信号分别为V BL0b~V BL7b,R 0b~R 7b对应的源线控制信号分别为V SL0b~V SL7b;1T1R阵D 1用于数据备份;1T1R阵列D 2包括1个1T1R器件R 8,用于计算并存储进位数据c i(i的取值为0~8),R 8对应的字线控制信号为V WL8,R 8对应的位线控制信号为V BL8,R 8对应的源线控制信号为V SL8;1T1R阵列D 3包括8个1T1R器件R 0~R 7,用于计算并存储加法运算结果s 0~7,R 0~R 7对应的字线控制信号为V WL0~V WL7,R 0~R 7对应的位线控制信号为V BL0~V BL7,R 0~R 7对应的源线控制信号为V SL0~V SL7;1T1R阵列D 1计算所得的中间数据
Figure PCTCN2018090247-appb-000166
和1T1R阵列D 2计算所得的进位信息c i通过信号放大器和控制信号调制解调器实现信号转变,并通过数据传输电路传输给1T1R阵列 D 3
结合图5所示的基于计算阵列的运算电路,本发明提供的操作方法包括如下步骤:
(S2-1)输入逻辑信号V WL0~7=1、V BL0~7=a 0~7以及
Figure PCTCN2018090247-appb-000167
将输入的数据a 0~7写入1T1R阵列D 3的R 0~R 7中;输入逻辑信号V WL8=1、V BL8=c 0以及
Figure PCTCN2018090247-appb-000168
将低位进位c 0写入到1T1R阵列D 2的R 8中;
(S2-2)输入逻辑信号V WL0~7=b 0~7
Figure PCTCN2018090247-appb-000169
以及V SL0~7=a 0~7,计算中间结果
Figure PCTCN2018090247-appb-000170
并将
Figure PCTCN2018090247-appb-000171
存储到1T1R阵列D 3的R 0~R 7中;输入逻辑信号V WL0b~7b=b 0~7
Figure PCTCN2018090247-appb-000172
以及V SL0b~7b=a 0~7,计算中间结果
Figure PCTCN2018090247-appb-000173
并将
Figure PCTCN2018090247-appb-000174
存储到1T1R阵D 1的R 0b~R 7b中;输入逻辑信号V WL8=1、V BL8=a 0以及
Figure PCTCN2018090247-appb-000175
计算c 1=a 0·b 0+a 0·c 0+c 0·b 0,并将c 1存储到1T1R阵列D 2的R 8中;
(S2-3)从1T1R阵列D 1的R 0b读取
Figure PCTCN2018090247-appb-000176
从1T1R阵列D 1的R 1b读取
Figure PCTCN2018090247-appb-000177
输入逻辑信号V WL0=c 0、V WL1=c 1、V WL2~7=0、
Figure PCTCN2018090247-appb-000178
V BL2~7=0、
Figure PCTCN2018090247-appb-000179
以及V SL2~7=0,计算
Figure PCTCN2018090247-appb-000180
并将s 0存储于1T1R阵列D 3的R 0中,将s 1存储于1T1R阵列D 3的R 1中;
(S2-4)输入逻辑信号V WL8=1、V BL8=a 1以及
Figure PCTCN2018090247-appb-000181
计算c 2=a 1·b 1+a 1·c 1+c 1·b 1,并将c 2存储到1T1R阵列D 2的R 8中;
(S2-5)从1T1R阵列D 1的R 2b读取
Figure PCTCN2018090247-appb-000182
输入逻辑信号V WL0~1=0、V WL2=c 2、V WL3~7=0、V BL0~1=0、
Figure PCTCN2018090247-appb-000183
V BL3~7=0、V SL0~1=0、
Figure PCTCN2018090247-appb-000184
以及V SL3~7=0,计算
Figure PCTCN2018090247-appb-000185
并将s 2存储于1T1R阵列D 3的R 2中;
(S2-6)输入逻辑信号V WL8=1、V BL8=a 2以及
Figure PCTCN2018090247-appb-000186
计算c 3=a 2·b 2+a 2·c 2+c 2·b 2,并将c 3存储到1T1R阵列D 2的R 8中;
(S2-7)从1T1R阵列D 1的R 3b读取
Figure PCTCN2018090247-appb-000187
输入逻辑信号V WL0~2=0、V WL3=c 3 以及V WL4~7=0、V BL0~2=0、
Figure PCTCN2018090247-appb-000188
V BL4~7=0、V SL0~2=0、
Figure PCTCN2018090247-appb-000189
以及V SL4~7=0,计算
Figure PCTCN2018090247-appb-000190
并将s 3存储于1T1R阵列D 3的R 3中;
(S2-8)、输入逻辑信号V WL8=1、V BL8=a 3以及
Figure PCTCN2018090247-appb-000191
计算c 4=a 3·b 3+a 3·c 3+c 3·b 3,并将c 4存储到1T1R阵列D 2的R 8中;
(S2-9)从1T1R阵列D 1的R 4b读取
Figure PCTCN2018090247-appb-000192
输入逻辑信号V WL0~3=0、V WL4=c 4、V WL5~7=0、V BL0~3=0、
Figure PCTCN2018090247-appb-000193
V BL5~7=0、V SL0~3=0、
Figure PCTCN2018090247-appb-000194
以及V SL5~7=0,计算
Figure PCTCN2018090247-appb-000195
并将s 4存储于1T1R阵列D 3的R 4中;
(S2-10)输入逻辑信号V WL8=1、V BL8=a 4以及
Figure PCTCN2018090247-appb-000196
计算c 5=a 4·b 4+a 4·c 4+c 4·b 4,并将c 5存储到1T1R阵列D 2的R 8中;
(S2-11)从1T1R阵列D 1的R 5b读取
Figure PCTCN2018090247-appb-000197
输入逻辑信号V WL0~4=0、V WL5=c 5、V WL6~7=0、V BL0~4=0、
Figure PCTCN2018090247-appb-000198
V BL6~7=0、V SL0~4=0、
Figure PCTCN2018090247-appb-000199
以及V SL6~7=0,计算
Figure PCTCN2018090247-appb-000200
并将s 5存储于1T1R阵列D 3的R 5中;
(S2-12)、输入逻辑信号V WL8=1、V BL8=a 5以及
Figure PCTCN2018090247-appb-000201
计算c 6=a 5·b 5+a 5·c 5+c 5·b 5,并将c 6存储到1T1R阵列D 2的R 8中;
(S2-13)从1T1R阵列D 1的R 6b读取
Figure PCTCN2018090247-appb-000202
输入逻辑信号V WL0~5=0、V WL6=c 6、V WL7=0、V BL0~5=0、
Figure PCTCN2018090247-appb-000203
V BL7=0、V SL0~5=0、
Figure PCTCN2018090247-appb-000204
以及V SL7=0,计算
Figure PCTCN2018090247-appb-000205
并将s 6存储于1T1R阵列D 3的R 6中;
(S2-14)输入逻辑信号V WL8=1、V BL8=a 6以及
Figure PCTCN2018090247-appb-000206
计算c 7=a 6·b 6+a 6·c 6+c 6·b 6,并将c 7存储到1T1R阵列D 2的R 8中;
(S2-15)从1T1R阵列D 1的R 7b读取
Figure PCTCN2018090247-appb-000207
输入逻辑信号V WL0~6=0、V WL7=c 7、V BL0~6=0、
Figure PCTCN2018090247-appb-000208
V SL0~6=0以及
Figure PCTCN2018090247-appb-000209
计算
Figure PCTCN2018090247-appb-000210
并将s 7存储于1T1R阵列D 3的R 7中;
(S2-16)、输入逻辑信号V WL8=1、V BL8=a 7以及
Figure PCTCN2018090247-appb-000211
计算c 8=a 7·b 7+a 7·c 7+c 7·b 7,并将c 8存储到1T1R阵列D 2的R 8中。
图6所示为本发明提供的基于计算阵列的运算电路,用于实现优化的八位逐位进位加法器,具体地,根据输入的数据a 0~7和b 0~7以及进位信息c 0,计算和值s 0~7以及进位信息c 8;运算电路包括:1T1R阵列E 1、1T1R阵列E 2以及1T1R阵列E 3;1T1R阵列E 1包括8个1T1R器件R 0b~R 7b,用于保存计算数据
Figure PCTCN2018090247-appb-000212
R 0b~R 7b对应的字线控制信号为V WL0b~V WL7b,R 0b~R 7b对应的位线控制信号分别为V BL0b~V BL7b,R 0b~R 7b对应的源线控制信号分别为V SL0b~V SL7b;1T1R阵列E 1用于数据备份;1T1R阵列E 2包括9个1T1R器件R 0c~R 8c,用于计算并存储进位数据c i(i的取值为0~8),R 0c~R 8c对应的字线控制信号为V WL0c~V WL8c,R 0c~R 8c对应的位线控制信号分别为V BL0c~V BL8c,R 0c~R 8c对应的源线控制信号分别为V SL0c~V SL8c;1T1R阵列E 3包括8个1T1R器件R 0~R 7,用于计算并存储加法运算结果s 0~7;1T1R阵列E 1计算所得的中间数据
Figure PCTCN2018090247-appb-000213
和1T1R阵列E 2计算所得的进位信息c i通过信号放大器和控制信号调制解调器实现信号转变,并通过数据传输电路传输给1T1R阵列E 3
结合图6所示的基于计算阵列的运算电路,本发明提供的操作方法包括如下步骤:
(S3-1)输入逻辑信号V WL0~7=1、V BL0~7=a 0~7以及
Figure PCTCN2018090247-appb-000214
将输入的运算数据a 0~7存储到1T1R阵列E 3的R 0~R 7中;输入逻辑信号V WL0b~7b=1、V BL0b~7b=a 0~7以及
Figure PCTCN2018090247-appb-000215
将输入的运算数据a 0~7写入1T1R阵列E 1的R 0b~R 7b中;输入逻辑信号V WL0c~8c=1、V BL0c~8c=c 0以及
Figure PCTCN2018090247-appb-000216
将进位信息c 0写入到1T1R阵列E 2的R 0c~R 8c中;
(S3-2)输入逻辑信号V WL0~7=b 0~7
Figure PCTCN2018090247-appb-000217
以及V SL0~7=a 0~7,计算
Figure PCTCN2018090247-appb-000218
并将
Figure PCTCN2018090247-appb-000219
存储到1T1R阵列E 3的R 0~R 7中;输入逻辑信号V WL0b~7b=b 0~7
Figure PCTCN2018090247-appb-000220
以及V SL0b~7b=a 0~7,计算
Figure PCTCN2018090247-appb-000221
并将
Figure PCTCN2018090247-appb-000222
存储到1T1R阵列E 1的R 0b~R 7b中;输入逻辑信号V WL0c=0、V WL1c~8c=1、V BL0c~8c=a 0以及
Figure PCTCN2018090247-appb-000223
计算c 1=a 0·b 0+a 0·c 0+c 0·b 0,并将c 1存储到1T1R阵列E 2的R 1c~8c中;
(S3-3)从1T1R阵列E 1的R 0b读取
Figure PCTCN2018090247-appb-000224
从1T1R阵列E 1的R 1b读取
Figure PCTCN2018090247-appb-000225
输入逻辑信号V WL0=c 0、V WL1=c 1、V WL2~7=0、
Figure PCTCN2018090247-appb-000226
V BL2~7=0、
Figure PCTCN2018090247-appb-000227
以及V SL2~7=0,计算
Figure PCTCN2018090247-appb-000228
并将s 0存储到1T1R阵列E 3的R 0中,将s 1存储到1T1R阵列E 3的R 1中;输入逻辑信号V WL0c~1c=0、V WL2c~8c=1、V BL0c~8c=a 1以及
Figure PCTCN2018090247-appb-000229
计算c 2=a 1·b 1+a 1·c 1+c 1·b 1,并将c 2存储到1T1R阵列E 2的R 2c~8c中;
(S3-4)从1T1R阵列E 1的R 2b读取
Figure PCTCN2018090247-appb-000230
输入逻辑信号V WL0~1=0、V WL2=c 2、V WL3~7=0、V BL0~1=0、
Figure PCTCN2018090247-appb-000231
V BL3~7=0、V SL0~1=0、
Figure PCTCN2018090247-appb-000232
以及V SL3~7=0,计算
Figure PCTCN2018090247-appb-000233
并将s 2存储到1T1R阵列E 3的R 2中;输入逻辑信号V WL0c~2c=0、V WL3c~8c=1、V BL0c~8c=a 2以及
Figure PCTCN2018090247-appb-000234
计算c 3=a 2·b 2+a 2·c 2+c 2·b 2,并将c 3存储到1T1R阵列E 2的R 3c~8c中;
(S3-5)从1T1R阵列E 1的R 3b读取
Figure PCTCN2018090247-appb-000235
输入逻辑信号V WL0~2=0、V WL3=c 3、V WL4~7=0、V BL0~2=0、
Figure PCTCN2018090247-appb-000236
V BL4~7=0、V SL0~2=0、
Figure PCTCN2018090247-appb-000237
以及V SL4~7=0,计算
Figure PCTCN2018090247-appb-000238
并将s 3存储到1T1R阵列E 3的R 3中;输入逻辑信号V WL0c~3c=0、V WL4c~8c=1、V BL0c~8c=a 3以及
Figure PCTCN2018090247-appb-000239
计算c 4=a 3·b 3+a 3·c 3+c 3·b 3,并将c 4存储到1T1R阵列E 2的R 4c~8c中;
(S3-6)从1T1R阵列E 1的R 4b读取
Figure PCTCN2018090247-appb-000240
输入逻辑信号V WL0~3=0、V WL4=c 4、V WL5~7=0、V BL0~3=0、
Figure PCTCN2018090247-appb-000241
V BL5~7=0、V SL0~3=0、
Figure PCTCN2018090247-appb-000242
以及V SL5~7=0,计算
Figure PCTCN2018090247-appb-000243
并将s 4存储到1T1R阵列E 3的R 4中;输入逻辑信号V WL0c~4c=0、V WL5c~8c=1、V BL0c~8c=a 4以及
Figure PCTCN2018090247-appb-000244
计算c 5=a 4·b 4+a 4·c 4+c 4·b 4,并将c 5存储到1T1R阵列E 2的R 5c~8c中;
(S3-7)从1T1R阵列E 1的R 5b读取
Figure PCTCN2018090247-appb-000245
输入逻辑信号V WL0~4=0、V WL5=c 5、 V WL6~7=0、V BL0~4=0、
Figure PCTCN2018090247-appb-000246
V BL6~7=0、V SL0~4=0、
Figure PCTCN2018090247-appb-000247
以及V SL6~7=0,计算
Figure PCTCN2018090247-appb-000248
并将s 5存储到1T1R阵列E 3的R 5中;输入逻辑信号V WL0c~5c=0、V WL6c~8c=1、V BL0c~8c=a 5以及
Figure PCTCN2018090247-appb-000249
计算c 6=a 5·b 5+a 5·c 5+c 5·b 5,并将c 6存储到1T1R阵列E 2的R 6c~8c中;
(S3-8)从1T1R阵列E 1的R 6b读取
Figure PCTCN2018090247-appb-000250
输入逻辑信号V WL0~5=0、V WL6=c 6、V WL7=0、V BL0~5=0、
Figure PCTCN2018090247-appb-000251
V BL7=0、V SL0~5=0、
Figure PCTCN2018090247-appb-000252
以及V SL7=0,计算
Figure PCTCN2018090247-appb-000253
并将s 6存储到1T1R阵列E 3的R 6中;输入逻辑信号V WL0c~6c=0、V WL7c~8c=1、V BL0c~8c=a 6以及
Figure PCTCN2018090247-appb-000254
计算c 7=a 6·b 6+a 6·c 6+c 6·b 6,并将c 7存储到1T1R阵列E 2的R 7c~8c中;
(S3-9)从1T1R阵列E 1的R 7b读取
Figure PCTCN2018090247-appb-000255
输入逻辑信号V WL0~6=0、V WL7=c 7、V BL0~6=0、
Figure PCTCN2018090247-appb-000256
V SL0~6=0以及
Figure PCTCN2018090247-appb-000257
计算
Figure PCTCN2018090247-appb-000258
并将s 7存储到1T1R阵列E 3的R 7中;输入逻辑信号V WL0c~7c=0、V WL8c=1、V BL0c~8c=a 7以及
Figure PCTCN2018090247-appb-000259
计算c 8=a 7·b 7+a 7·c 7+c 7·b 7,并将c 8存储到1T1R阵列E 2的R 8c中。
图7所示为本发明提供的基于计算阵列的运算电路,用于实现二位数据选择器,具体地,输入逻辑信号a、逻辑信号b以及控制信号Sel,通过控制Sel的取值选择输出逻辑信号a或者逻辑信号b;运算电路包括1T1R阵列F;1T1R阵列F包括1个1T1R器件R。
结合图7所示的基于计算阵列的运算电路,本发明提供的操作方法包括如下步骤:
(S4-1)输入逻辑信号V WL=1、V BL=a以及
Figure PCTCN2018090247-appb-000260
对1T1R器件R进行初始化,将输入的逻辑信号a写入1T1R阵列F的R中;
(S4-2)输入逻辑信号V WL=Sel、V BL=b以及
Figure PCTCN2018090247-appb-000261
输入逻辑信号b及控制信号Sel,并选择输出逻辑信号out;
逻辑信号a与逻辑信号b仅代表两个独立的逻辑信号;当控制信号 Sel=0时,输出信号out=a;当控制信号Sel=1时,输出信号out=b。
图8所示为本发明提供的基于计算阵列的运算电路,用于实现八位进位选择加法器,具体地,根据输入的数据a 0~7和b 0~7以及进位信息c 0,计算和值s 0~7及进位信息c 8,在计算过程中根据每一位的进位信息,选择运算数据对应位的同或运算结果或者异或运算结果作为和值的位信息;运算电路包括1T1R阵列G 1、1T1R阵列G 2以及1T1R阵列G 3;1T1R阵列G 1包括8个1T1R器件R 0x~R 7x,用于保存计算数据a 0~7与b 0~7的同或运算结果X 0~7=a 0~7XNOR b 0~7,R 0x~R 7x对应的字线控制信号为V WL0x~V WL7x,R 0x~R 7x对应的位线控制信号分别为V BL0x~V BL7x,R 0x~R 7x对应的源线控制信号分别为V SL0x~V SL7x;1T1R阵列G 2包括9个1T1R器件R 0c~R 8c,用于计算进位信息c i(i的取值为0~8),R 0c~R 8c对应的字线控制信号分别为V WL0c~V WL8c,R 0c~R 8c对应的位线控制信号分别为V BL0c~V BL8c,R 0c~R 8c对应的源线控制信号分别为V SL0c~V SL8c;1T1R阵列G 3包括8个1T1R器件R 0~R 7,用于计算并存储加法运算结果s 0~7,R 0~R 7对应的字线控制信号为V WL0~V WL7,R 0~R 7对应的位线控制信号为V BL0~V BL7,R 0~R 7对应的源线控制信号为V SL0~V SL7;1T1R阵列G 1计算所得的同或运算结果X 0~7和1T1R阵列G 2计算所得的进位信息c i通过信号放大器和控制信号调制解调器实现信号转变,并通过数据传输电路传输给1T1R阵列G 3
结合图8所示的基于计算阵列的运算电路,本发明提供的操作方法包括如下步骤:
(S5-1)输入逻辑信号V WL0x~7x=1、
Figure PCTCN2018090247-appb-000262
以及V SL0x~7x=b 0~7,将输入的运算数据b 0~n-1取反后的结果
Figure PCTCN2018090247-appb-000263
存储到1T1R阵列G 1的R 0x~R 7x中;输入逻辑信号V WL0c~8c=1、V BL0c~8c=c 0以及
Figure PCTCN2018090247-appb-000264
将c 0存储到1T1R阵列G 2的R 0c~R 8c中;输入逻辑信号V WL0~7=1、V BL0~7=a 0~7以及
Figure PCTCN2018090247-appb-000265
将输入的运算数据a 0~7存储到1T1R阵列G 3的R 0~R 7中;
(S5-2)输入逻辑信号V WL0x~7x=a 0~7、V BL0x~7x=b 0~7以及
Figure PCTCN2018090247-appb-000266
计算a 0~7与a 0~7的同或运算结果X 0~7=a 0~7XNOR b 0~7,并将X 0~7存储于1T1R阵列G 1的R 0x~R 7x中;输入逻辑信号V WL1c~8c=1、V BL1c~8c=a 0以及
Figure PCTCN2018090247-appb-000267
计算c 1=a 0·b 0+a 0·c 0+c 0·b 0,并将c 1存储到1T1R阵列G 2的R 1c~R 8c中;输入逻辑信号V WL0~7=b 0~7、V BL0~7=a 0~7以及
Figure PCTCN2018090247-appb-000268
计算a 0~7与b 0~7的同或运算结果X 0~7,并将同或运算结果X 0~7存储于1T1R阵列G 3的R 0~R 7中;
(S5-3)输入逻辑信号V WL0c~1c=0、V WL2c~8c=1、V BL0c~8c=a 1以及
Figure PCTCN2018090247-appb-000269
计算c 2=a 1·b 1+a 1·c 1+c 1·b 1,并将c 2存储到1T1R阵列G 2的R 2c~R 8c中;输入逻辑信号V WL0=c 0、V WL1=c 1、V WL2~7=0、V BL0~7=X 0~7以及
Figure PCTCN2018090247-appb-000270
计算s 0和s 1,并将s 0存储到1T1R阵列G 3的R 0中,将s 1存储到1T1R阵列G 3的R 1中;当c 0=0时,
Figure PCTCN2018090247-appb-000271
当c 0=1时,
Figure PCTCN2018090247-appb-000272
当c 1=0时,
Figure PCTCN2018090247-appb-000273
当c 1=1时,
Figure PCTCN2018090247-appb-000274
(S5-4)输入逻辑信号V WL0c~2c=0、V WL3c~8c=1、V BL0c~8c=a 2以及
Figure PCTCN2018090247-appb-000275
计算c 3=a 2·b 2+a 2·c 2+c 2·b 2,并将c 3存储到1T1R阵列G 2的R 3c~R 8c中;输入逻辑信号V WL0~1=0、V WL2=c 2、V WL3~7=0、V BL0~7=X 0~7以及
Figure PCTCN2018090247-appb-000276
计算s 2,并将s 2存储到1T1R阵列G 3的R 2中;当c 2=0时,
Figure PCTCN2018090247-appb-000277
当c 2=1时,
Figure PCTCN2018090247-appb-000278
(S5-5)输入逻辑信号V WL0c~3c=0、V WL4c~8c=1、V BL0c~8c=a 3以及
Figure PCTCN2018090247-appb-000279
计算c 4=a 3·b 3+a 3·c 3+c 3·b 3,并将c 4存储到1T1R阵列G 2的R 4c~R 8c中;输入逻辑信号V WL0~2=0、V WL3=c 3、V WL4~7=0、V BL0~7=X 0~7以及
Figure PCTCN2018090247-appb-000280
计算s 3,并将s 3存储到1T1R阵列G 3的R 3中;当c 3=0时,
Figure PCTCN2018090247-appb-000281
当c 3=1时,
Figure PCTCN2018090247-appb-000282
(S5-6)输入逻辑信号V WL0c~4c=0、V WL5c~8c=1、V BL0c~8c=a 4以及
Figure PCTCN2018090247-appb-000283
计算c 5=a 4·b 4+a 4·c 4+c 4·b 4,并将c 5存储到1T1R阵列G 2的R 5c~R 8c中;输入逻辑信号V WL0~3=0、V WL3=c 4、V WL5~7=0、V BL0~7=X 0~7以及
Figure PCTCN2018090247-appb-000284
计算s 4,并将s 4存储到1T1R阵列G 3的R 4中;当c 4=0时,
Figure PCTCN2018090247-appb-000285
当c 4=1时,
Figure PCTCN2018090247-appb-000286
(S5-7)输入逻辑信号 WL0c~5c=0、V WL6c~8c=1、V BL0c~8c=a 5以及
Figure PCTCN2018090247-appb-000287
计算c 6=a 5·b 5+a 5·c 5+c 5·b 5,并将c 6存储到1T1R阵列G 2的R 6c~R 8c中;输入逻辑信号V WL0~4=0、V WL5=c 5、V WL6~7=0、V BL0~7=X 0~7以及
Figure PCTCN2018090247-appb-000288
计算s 5,并将s 5存储到1T1R阵列G 3的R 5中;当c 5=0时,
Figure PCTCN2018090247-appb-000289
当c 5=1时,
Figure PCTCN2018090247-appb-000290
(S5-8)输入逻辑信号V WL0c~6c=0、V WL7c~8c=1、V BL0c~8c=a 6以及
Figure PCTCN2018090247-appb-000291
计算c 7=a 6·b 6+a 6·c 6+c 6·b 6,并将c 7存储到1T1R阵列G 2的R 7c~R 8c中;输入逻辑信号V WL0~5=0、V WL6=c 6、V WL7=0、V BL0~7=X 0~7以及
Figure PCTCN2018090247-appb-000292
计算s 6,并将s 6存储到1T1R阵列G 3的R 6中;当c 6=0时,
Figure PCTCN2018090247-appb-000293
当c 6=1时,
Figure PCTCN2018090247-appb-000294
(S5-9)输入逻辑信号V WL0c~7c=0、V WL8c=1、V BL0c~8c=a 7以及
Figure PCTCN2018090247-appb-000295
计算c 8=a 7·b 7+a 7·c 7+c 7·b 7,并将c 8存储到1T1R阵列G 2的R 8c中;输入逻辑信号V WL0~6=0、V WL7=c 7、V BL0~7=X 0~7以及
Figure PCTCN2018090247-appb-000296
计算s 7,并将s 7存储到1T1R阵列G 3的R 7中,当c 7=0时,
Figure PCTCN2018090247-appb-000297
当c 7=1时,
Figure PCTCN2018090247-appb-000298
图9所示为本发明提供的基于计算阵列的运算电路,用于实现八位pre-calculation加法器,具体地,采用提前计算进位信息的方法,根据输入的数据a 0~7和b 0~7以及进位信息c 0,计算和值s 0~7及进位信息c 8;运算电路包括:1T1R阵列H 1以及1T1R阵列H 2;1T1R阵列H 1包括9个1T1R器件R 0c~R 8c,用于计算进位信息c i(i的取值为0~8),R 0c~R 8c对应的字线控制信号为V WL0c~V WL8c,R 0c~R 8c对应的位线控制信号分别为V BL0c~V BL8c, R 0c~R 8c对应的源线控制信号分别为V SL0c~V SL8c;1T1R阵列H 2包括8个1T1R器件R 0~R 7,用于计算并存储加法运算结果s 0~7,R 0~R 7对应的字线控制信号分别为V WL0~V WL7,R 0~R 7对应的位线控制信号为V BL0~V BL7,R 0~R 7对应的源线控制信号为V SL0~V SL7;1T1R阵列H 1计算所得的进位信息c i通过信号放大器和控制信号调制解调器实现信号转变,并通过数据传输电路传输给1T1R阵列H 2
结合图9所示的基于计算阵列的运算电路,本发明提供的操作方法包括如下步骤:
(S6-1)输入逻辑信号V WL0c~8c=1、V BL0c~8c=c 0以及
Figure PCTCN2018090247-appb-000299
将输入的进位信息c 0存储到1T1R阵列H 1的R 0c~R 8c中;输入逻辑信号V WL0~7=1、V BL0~7=c 0以及
Figure PCTCN2018090247-appb-000300
将输入的进位信息c 0存储到1T1R阵列H 2的R 0~R 7中;
(S6-2)输入逻辑信号V WL0c=0、V WL1c~8c=1、V BL0c~8c=a 0以及
Figure PCTCN2018090247-appb-000301
计算c 1=a 0·b 0+a 0·c 0+c 0·b 0,并将c 1存储到1T1R阵列H 1的R 1c~R 8c中;输入逻辑信号V WL0~7=1、V BL0~7=a 0、V SL0=b 0以及
Figure PCTCN2018090247-appb-000302
计算
Figure PCTCN2018090247-appb-000303
以及c 1=a 0·b 0+a 0·c 0+c 0·b 0,并将s' 0存储在1T1R阵列H 2的R 0中,将c 1存储在1T1R阵列H 2的R 1~R 7中;
(S6-3)输入逻辑信号V WL0c~1c=0、V WL2c~8c=1、V BL0c~8c=a 1以及
Figure PCTCN2018090247-appb-000304
计算c 2=a 1·b 1+a 1·c 1+c 1·b 1,并将c 2存储在1T1R阵列H 1的R 2c~R 8c中;输入逻辑信号V WL0~7=1、V BL0=b 0、V BL1~7=a 1、V SL0=c 1、V SL1=b 1以及
Figure PCTCN2018090247-appb-000305
计算
Figure PCTCN2018090247-appb-000306
以及c 2,并将s 0存储在1T1R阵列H 2的R 0中,将s' 1存储在1T1R阵列H 2的R 1中,将c 1存储在1T1R阵列H 2的R 2~R 7中;
(S6-4)输入逻辑信号V WL0c~2c=0、V WL3c~8c=1、V BL0c~8c=a 2以及
Figure PCTCN2018090247-appb-000307
计算c 3=a 2·b 2+a 2·c 2+c 2·b 2,并将c 3存储在1T1R阵列H 1 的R 3c~R 8c中;输入逻辑信号V WL0=0、V WL1~7=1、V BL0=0、V BL1=b 1、V BL2~7=a 2、V SL0=0、V SL0=c 2、V SL2=b 2以及
Figure PCTCN2018090247-appb-000308
计算
Figure PCTCN2018090247-appb-000309
Figure PCTCN2018090247-appb-000310
以及c 3=a 2·b 2+a 2·c 2+c 2·b 2,并将s 1存储在1T1R阵列H 2的R 1中,将s' 2存储在1T1R阵列H 2的R 2中,将c 2存储在1T1R阵列H 2的R 3~R 7中;
(S6-5)输入逻辑信号V WL0c~3c=0、V WL4c~8c=1、V BL0c~8c=a 3以及
Figure PCTCN2018090247-appb-000311
计算c 4=a 3·b 3+a 3·c 3+c 3·b 3,并将c 4存储在1T1R阵列H 1的R 4c~R 8c中;输入逻辑信号V WL0~1=0、V WL2~7=1、V BL0~1=0、V BL2=b 2、V BL3~7=a 3、V SL0~1=0、V SL2=c 3、V SL3=b 3以及
Figure PCTCN2018090247-appb-000312
计算
Figure PCTCN2018090247-appb-000313
Figure PCTCN2018090247-appb-000314
以及c 4,并将s 2存储在1T1R阵列H 2的R 2中,将s' 3存储在1T1R阵列H 2的R 3中,将c 4存储在1T1R阵列H 2的R 4~R 7中;
(S6-6)输入逻辑信号V WL0c~4c=0、V WL5c~8c=1、V BL0c~8c=a 4以及
Figure PCTCN2018090247-appb-000315
计算c 5=a 4·b 4+a 4·c 4+c 4·b 4,并将c 5存储在1T1R阵列H 1的R 5c~R 8c中;输入逻辑信号V WL0~2=0、V WL3~7=1、V BL0~2=0、V BL3=b 3、V BL4~7=a 4、V SL0~2=0,V SL3=c 4、V SL4=b 4以及
Figure PCTCN2018090247-appb-000316
计算
Figure PCTCN2018090247-appb-000317
Figure PCTCN2018090247-appb-000318
以及c 5,并将s 3存储在1T1R阵列H 2的R 3中,将s' 4存储在1T1R阵列H 2的R 4中,将c 5存储在1T1R阵列H 2的R 5~R 7中;
(S6-7)输入逻辑信号V WL0c~5c=0、V WL6c~8c=1、V BL0c~8c=a 5以及
Figure PCTCN2018090247-appb-000319
计算c 6=a 5·b 5+a 5·c 5+c 5·b 5,并将c 6存储在1T1R阵列H 1的R 6c~R 8c中;输入逻辑信号V WL0~3=0、V WL4~7=1、V BL0~3=0、V BL4=b 4、V BL5~7=a 5、V SL0~3=0、V SL4=c 5、V SL5=b 5以及
Figure PCTCN2018090247-appb-000320
计算
Figure PCTCN2018090247-appb-000321
Figure PCTCN2018090247-appb-000322
以及c 6,并将s 4存储在1T1R阵列H 2的R 4中,将s' 5存储在1T1R阵列H 2的R 5中,将c 6存储在1T1R阵列H 2的R 6~R 7中;
(S6-8)输入逻辑信号V WL0c~6c=0、V WL7c~8c=1、V BL0c~8c=a 6以及
Figure PCTCN2018090247-appb-000323
计算c 7=a 6·b 6+a 6·c 6+c 6·b 6,并将c 7存储在1T1R阵列H 1的R 7c~R 8c中;输入逻辑信号V WL0~4=0、V WL5~7=1、V BL0~4=0、V BL5=b 5、V BL6~7=a 6V SL0~4=0、V SL5=c 6、V SL6=b 6以及
Figure PCTCN2018090247-appb-000324
计算
Figure PCTCN2018090247-appb-000325
Figure PCTCN2018090247-appb-000326
以及c 7,并将s 5存储在1T1R阵列H 2的R 5中,将s' 6存储在1T1R阵列H 2的R 6中,将c 7存储在1T1R阵列H 2的R 7中;
(S6-9)输入逻辑信号V WL0c~7c=0、V WL8c=1、V BL0c~8c=a 7以及
Figure PCTCN2018090247-appb-000327
计算c 8=a 7·b 7+a 7·c 7+c 7·b 7,并将c 8存储在1T1R阵列H 1的R 8c中;输入逻辑信号V WL0~5=0、V WL6~7=1、V BL0~5=0、V BL6=b 6、V BL7=a 7、V SL0~5=0、V SL6=c 7以及
Figure PCTCN2018090247-appb-000328
计算
Figure PCTCN2018090247-appb-000329
并将s 6存储在1T1R阵列H 2的R 6中,将s' 7存储在1T1R阵列H 2的R 7中;
(S6-10)输入逻辑信号V WL0~6=0、V WL7=1、V BL0~6=0、V BL7=b 7、V SL0~6=0、V SL7=c 8,同时其余各端输入的逻辑信号为0,计算
Figure PCTCN2018090247-appb-000330
并将s 7存储在1T1R阵列H 2的R 7中。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (18)

  1. 一种基于1T1R器件的计算阵列,其特征在于,包括:1T1R阵列以及外围电路;所述1T1R阵列用于实现运算并存储运算结果,所述外围电路用于传输数据及控制信号,从而控制所述1T1R阵列的运算及存储过程。
  2. 如权利要求1所述的基于1T1R器件的计算阵列,其特征在于,所述1T1R阵列包括以阵列形式排布的1T1R器件、字线WL、位线BL以及源线SL;所述1T1R器件的电阻状态包括:高阻态H和低阻态L;所述1T1R器件通过不同的电阻状态实现对信息的存储和处理;位于同一行的1T1R器件连接至相同的位线,位于同一列的1T1R器件连接至相同的位线及源线,通过对所述字线WL、所述位线BL以及所述源线SL施加不同的信号以实现不同的运算并存储运算结果。
  3. 如权利要求2所述的基于1T1R器件的计算阵列,其特征在于,所述1T1R器件包括:一个晶体管和一个阻变元件;所述晶体管包括:基底、源极、漏极、绝缘层以及栅极,其中,所述源极与所述源线SL相连接,所述栅极与所述字线WL相连接;所述阻变元件包括两端电极,其中一端电极与位线BL相连接,另一端电极与所述晶体管的漏极相连接;所述阻变元件具有堆叠结构,且具有非易失性电阻转变特性。
  4. 如权利要求1-3任一项所述的基于1T1R器件的计算阵列,其特征在于,所述外围电路包括:状态控制器、字线译码器、源线译码器、位线译码器、信号放大器、控制信号调制解调器以及数据传输电路;
    所述状态控制器具有数据输入输出端Data、地址输入端Address、时钟信号输入端CLK、结果输入端、字线输出端、位线输出端、源线输出端以及次级输出端;所述状态控制器的数据输入输出端Data一方面用于输入计算数据,另一方面用于输出计算结果,所述状态控制器的地址输入端Address用于输入选定特定器件的地址信息,所述状态控制器的时钟信号输 入端CLK用于输入控制计算时序的时钟信号,所述状态控制器的结果输入端用于输入上级电路产生的计算结果;所述状态控制器根据输入的数据、地址信息、时钟信号以及上级电路的计算结果产生控制信号,或者输出最终的计算结果;
    所述字线译码器的输入端连接至所述状态控制器的字线输出端,所述字线译码器的输出端连接至所述1T1R阵列的字线;所述字线译码器对所述状态控制器产生的控制信号进行译码后,得到字线控制信号,并将字线控制信号通过所述1T1R阵列的字线输入到1T1R器件;
    所述位线译码器的输入端连接至所述状态控制器的位线输出端,所述位线译码器的输出端连接至所述1T1R阵列的位线;所述位线译码器对所述状态控制器产生的控制信号进行译码后,得到位线控制信号,并将位线控制信号通过所述1T1R阵列的位线输入到1T1R器件;
    所述源线译码器的输入端连接至所述状态控制器的源线输出端,所述源线译码器的输出端连接至所述1T1R阵列的源线;所述源线译码器对所述状态控制器产生的控制信号进行译码后,得到源线控制信号,并将源线控制信号通过所述1T1R阵列的源线输入到1T1R器件;
    所述字线控制信号、所述位线控制信号以及所述源线控制信号到共同施加到所述1T1R阵列,实现对所述1T1R阵列中1T1R器件状态的控制;
    所述信号放大器的输入端连接至所述1T1R阵列的位线;在读取所述1T1R阵列中存储的数据信息时,所述信号放大器将获取的1T1R器件存储的电阻信号转变为电压信号后输出到所述控制信号调制解调器;
    所述控制信号调制解调器的第一输入端连接至所述状态控制器的次级输出端,所述控制信号调制解调器的第二输入端连接至所述信号放大器的输出端;所述控制信号调制解调器对所述状态控制器产生的控制信号进行译码,得到下一级电路的控制信号,或者直接对所述信号放大器输出的数据电压信号进行传输;所述下一级电路为同一1T1R阵列中的下一个1T1R 器件,或者为计算阵列中的下一个1T1R阵列;
    所述数据传输电路的输入端连接至所述控制信号调制解调器的输出端;所述数据传输电路将所述控制信号调制解调器输出的数据电压信号通过所述状态控制器的结果输入端反馈输出给所述状态控制器,或者将所述控制信号调制解调器输出的控制信号分别传输给下一级电路的字线译码器、位线译码器以及源线译码器。
  5. 如权利要求4所述的基于1T1R器件的计算阵列,其特征在于,所述状态控制器的数据输入输出端Data、地址输入端Address以及时钟信号输入端CLK分别作为所述计算阵列的数据输入输出端、地址输入端以及时钟信号输入端。
  6. 如权利要求1至5任一项所述的基于1T1R器件的计算阵列,其特征在于,通过控制1T1R器件的初始化电阻状态、字线输入信号、位线输入信号以及源线输入信号,实现16种基本的布尔逻辑运算;
    通过字线输入逻辑信号V WL=1,通过位线输入逻辑信号V BL=V read,通过源线输入逻辑信号V SL=0,读取1T1R器件上存储的逻辑信号;其中V read为读取1T1R器件的电阻状态时施加的电压脉冲信号。
  7. 一种基于权利要求1所述计算阵列的运算电路,用于实现一位全加器,根据输入的逻辑信号a、逻辑信号b和低位进位c 0计算和值s 0以及高位进位c 1,其特征在于,包括:1T1R阵列A 1、1T1R阵列A 2以及1T1R阵列A 3;1T1R阵列A 1包括1个1T1R器件R b,用于计算并存储中间数据
    Figure PCTCN2018090247-appb-100001
    R b对应的字线信号为V WLb,R b对应的位线信号为V BLb,R b对应的源线信号为V SLb;1T1R阵列A 2包括1个1T1R器件R c,用于计算并存储高位进位c 1,R c对应的字线信号为V WLc,R c对应的位线信号为V BLc,R c对应的源线信号为V SLc;1T1R阵列A 3包括1个1T1R器件R s,用于计算并存储和值s 0,R s对应的字线信号为V WLs,R s对应的位线信号为V BLs,R s对应的源线 信号为V SLs;所述1T1R阵列A 1计算所得的中间数据
    Figure PCTCN2018090247-appb-100002
    和所述1T1R阵列A 2计算所得的进位信息c 1通过所述信号放大器和所述控制信号调制解调器实现信号转变,并通过所述数据传输电路传输给所述1T1R阵列A 3
  8. 一种基于权利要求7所述运算电路的操作方法,其特征在于,包括如下操作步骤:
    (S1-1)输入逻辑信号V WLc=1、V BLc=c 0以及
    Figure PCTCN2018090247-appb-100003
    将输入的逻辑信号c 0写入到1T1R阵列A 2的R c中;输入逻辑信号V WLb=1、V BLb=a 0以及
    Figure PCTCN2018090247-appb-100004
    将输入的逻辑信号a 0写入到1T1R阵列A 1的R b中;输入逻辑信号V WLs=1、V BLs=a 0以及
    Figure PCTCN2018090247-appb-100005
    将输入的逻辑信号a 0写入到1T1R阵列A 3的R s中;
    (S1-2)输入逻辑信号V WLc=1、V BLc=a 0以及
    Figure PCTCN2018090247-appb-100006
    计算高位进位c 1=a 0·b 0+a 0·c 0+c 0·b 0,并将c 1存储到1T1R阵列A 2的R c中;输入逻辑信号V WLb=b 0
    Figure PCTCN2018090247-appb-100007
    以及V SLb=a 0,计算中间结果
    Figure PCTCN2018090247-appb-100008
    并将
    Figure PCTCN2018090247-appb-100009
    存储到1T1R阵列A 1的R b中;输入逻辑信号V WLs=b 0
    Figure PCTCN2018090247-appb-100010
    以及V SLs=a 0,计算中间结果
    Figure PCTCN2018090247-appb-100011
    并将
    Figure PCTCN2018090247-appb-100012
    存储到1T1R阵列A 3的R s中;
    (S1-3)读取1T1R阵列A 2的R c中存储的逻辑信号c 1;读取1T1R阵列A 1的R b中存储的逻辑信号
    Figure PCTCN2018090247-appb-100013
    输入逻辑信号V WLs=c 0
    Figure PCTCN2018090247-appb-100014
    以及
    Figure PCTCN2018090247-appb-100015
    计算和值s 0=a 0⊕b 0⊕c 0,并将和值s 0存储在1T1R阵列A 3的R s中;
    (S1-4)读取1T1R阵列A 3的R s中存储的逻辑信号s 0
  9. 一种基于权利要求1所述计算阵列的运算电路,用于实现多位逐位进位加法器,根据输入的数据a 0~n-1和b 0~n-1以及进位信息c 0,计算和值s 0~n-1以及进位信息c n,n表示运算数据的位数,其特征在于,包括:1T1R阵列D 1、1T1R阵列D 2以及1T1R阵列D 3;1T1R阵列D 1包括n个1T1R器件R 0b~R (n-1)b,用于存储计算中间结果
    Figure PCTCN2018090247-appb-100016
    R 0b~R (n-1)b对应的字线控制信号为 V WL0b~V WL(n-1)b,R 0b~R (n-1)b对应的位线控制信号分别为V BL0b~V BL(n-1)b,R 0b~R (n-1)b对应的源线控制信号分别为V SL0b~V SL(n-1)b;1T1R阵列D 1用于数据备份;1T1R阵列D 2包括1个1T1R器件R n,用于计算并存储进位信息c i,i的取值为0~n,R n对应的字线控制信号为V WLn,R n对应的位线控制信号为V BLn,R n对应的源线控制信号为V SLn;1T1R阵列D 3包括n个1T1R器件R 0~R n-1,用于计算并存储加法运算结果s 0~n-1,R 0~R n-1对应的字线控制信号为V WL0~V WL(n-1),R 0~R n-1对应的位线控制信号为V BL0~V BL(n-1),R 0~R n-1对应的源线控制信号为V SL0~V SL(n-1);所述1T1R阵列D 1计算所得的中间数据
    Figure PCTCN2018090247-appb-100017
    和所述1T1R阵列D 2计算所得的进位信息c i通过所述信号放大器和所述控制信号调制解调器实现信号转变,并通过所述数据传输电路传输给所述1T1R阵列D 3
  10. 一种基于权利要求9所述运算电路的操作方法,其特征在于,包括如下操作步骤:
    (S2-1)输入逻辑信号V WL0~(n-1)=1、V BL0~(n-1)=a 0~n以及
    Figure PCTCN2018090247-appb-100018
    将输入的运算数据a 0~n-1写入1T1R阵列D 3的R 0~R n-1中;输入逻辑信号V WLn=1、V BLn=c 0以及
    Figure PCTCN2018090247-appb-100019
    将输入的进位信息c 0写入到1T1R阵列D 2的R n中,同时保证1T1R阵列D 1与1T1R阵列D 3的字线输入信号、位线输入信号以及源线输入信号对应相同;
    (S2-2)输入逻辑信号V WL0~(n-1)=b 0~n-1
    Figure PCTCN2018090247-appb-100020
    以及V SL0~(n-1)=a 0~n-1,计算中间结果
    Figure PCTCN2018090247-appb-100021
    并将
    Figure PCTCN2018090247-appb-100022
    存储到1T1R阵列D 3的R 0~R n-1中;输入逻辑信号V WL0b~(n-1)b=b 0~n-1
    Figure PCTCN2018090247-appb-100023
    以及V SL0b~(n-1)b=a 0~n-1,计算中间结果
    Figure PCTCN2018090247-appb-100024
    并将
    Figure PCTCN2018090247-appb-100025
    存储到1T1R阵D 1的R 0b~R (n-1)b中;输入逻辑信号V WLn=1、V BLn=a 0以及
    Figure PCTCN2018090247-appb-100026
    计算进位信息c 1=a 0·b 0+a 0·c 0+c 0·b 0,并将c 1存储到1T1R阵列D 2的R n中;
    (S2-3)读取1T1R阵列D 1的R 0b中存储的逻辑信号
    Figure PCTCN2018090247-appb-100027
    读取1T1R阵 列D 1的R 1b中存储的逻辑信号
    Figure PCTCN2018090247-appb-100028
    输入逻辑信号V WL0=c 0、V WL1=c 1、V WL2~n-1=0、
    Figure PCTCN2018090247-appb-100029
    V BL2~n-1=0、
    Figure PCTCN2018090247-appb-100030
    以及V SL2~n-1=0,计算s 0=a 0⊕b 0⊕c 0、s 1=a 1⊕b 1⊕c 1,并将s 0存储于1T1R阵列D 3的R 0中,将s 1存储于1T1R阵列D 3的R 1中;
    (S2-4)用i表示运算数据或运算结果中的第i位,给i赋初始值i=2;
    (S2-5)输入逻辑信号V WLn=1、V BLn=a i-1以及
    Figure PCTCN2018090247-appb-100031
    计算进位信息c i=a i-1·b i-1+a i-1·c i-1+c i-1·b i-1,并将进位信息c i存储到1T1R阵列D 2的R n中;
    (S2-6)读取1T1R阵列D 1的R ib中存储的逻辑信号
    Figure PCTCN2018090247-appb-100032
    输入逻辑信号V WL0~(i-1)=0、V WL2=c i、V WL(i+1)~(n-1)=0、V BL0~(i-1)=0、
    Figure PCTCN2018090247-appb-100033
    V BL(i+1)~(n-1)=0、V SL0~(i-1)=0、
    Figure PCTCN2018090247-appb-100034
    以及V SL(i+1)~(n-1)=0,计算s i=a i⊕b i⊕c i,并将s i存储到1T1R阵列D 3的R i中;
    (S2-7)将i的取值自增1,若i<n-1,则转入步骤(S2-5);否则,转入步骤(S2-8);
    (S2-8)输入逻辑信号V WLn=1、V BLn=a n-2以及
    Figure PCTCN2018090247-appb-100035
    计算进位信息c n-1=a n-2·b n-2+a n-2·c n-2+c n-2·b n-2,并将进位信息c n-1存储到1T1R阵列D 2的R n中;
    (S2-9)读取1T1R阵列D 1的R (n-1)b中存储的逻辑信息
    Figure PCTCN2018090247-appb-100036
    输入逻辑信号V WL0~(n-2)=0、V WL(n-1)=c n-1、V BL0~(n-2)=0、
    Figure PCTCN2018090247-appb-100037
    V SL0~(n-2)=0以及
    Figure PCTCN2018090247-appb-100038
    计算s n-1=a n-1⊕b n-1⊕c n-1,并将并将s n-1存储到1T1R阵列D 3的R n-1中;
    (S2-10)输入逻辑信号V WLn=1、V BLn=a n-1以及
    Figure PCTCN2018090247-appb-100039
    计算c n=a n-1·b n-1+a n-1·c n-1+c n-1·b n-1,并将c n存储到1T1R阵列D 2的R n中。
  11. 一种基于权利要求1所述计算阵列的运算电路,用于实现优化的多位逐位进位加法器,根据输入的数据a 0~n-1、b 0~n-1和进位信息c 0计算和值 s 0~n-1及进位信息c n,n表示运算数据的位数,其特征在于,包括:1T1R阵列E 1、1T1R阵列E 2以及1T1R阵列E 3;1T1R阵列E 1包括n个1T1R器件R 0b~R (n-1)b,用于保存计算数据
    Figure PCTCN2018090247-appb-100040
    R 0b~R (n-1)b对应的字线控制信号为V WL0b~V WL(n-1)b,R 0b~R (n-1)b对应的位线控制信号分别为V BL0b~V BL(n-1)b,R 0b~R (n-1)b对应的源线控制信号分别为V SL0b~V SL(n-1)b;1T1R阵列E 1用于数据备份;1T1R阵列E 2包括(n+1)个1T1R器件R 0c~R nc,用于计算并存储进位数据c i,i的取值为0~n,R 0c~R nc对应的字线控制信号为V WL0c~V WLnc,R 0c~R nc对应的位线控制信号分别为V BL0c~V BLnc,R 0c~R nc对应的源线控制信号分别为V SL0c~V SLnc;1T1R阵列E 3包括n个1T1R器件R 0~R n-1,用于计算并存储加法运算结果s 0~n-1,R 0~R n-1对应的字线控制信号为V WL0~V WL(n-1),R 0~R n-1对应的位线控制信号为V BL0~V BL(n-1),R 0~R n-1对应的源线控制信号为V SL0~V SL(n-1);所述1T1R阵列E 1计算所得的中间数据
    Figure PCTCN2018090247-appb-100041
    和所述1T1R阵列E 2计算所得的进位信息c i通过所述信号放大器和所述控制信号调制解调器实现信号转变,并通过所述数据传输电路传输给所述1T1R阵列E 3
  12. 一种基于权利要求11所述运算电路的操作方法,其特征在于,包括如下操作步骤:
    (S3-1)输入逻辑信号V WL0~(n-1)=1、V BL0~(n-1)=a 0~n-1以及
    Figure PCTCN2018090247-appb-100042
    将输入的运算数据a 0~n-1存储到1T1R阵列E 3的R 0~R n-1中;输入逻辑信号V WL0b~(n-1)b=1、V BL0b~(n-1)b=a 0~n-1以及
    Figure PCTCN2018090247-appb-100043
    将输入的运算数据a 0~n-1写入1T1R阵列E 1的R 0b~R (n-1)b中;输入逻辑信号V WL0c~nc=1、V BL0c~nc=c 0以及
    Figure PCTCN2018090247-appb-100044
    将输入的进位信息c 0写入到1T1R阵列E 2的R 0c~R nc中;
    (S3-2)输入逻辑信号V WL0~n-1=b 0~n-1
    Figure PCTCN2018090247-appb-100045
    以及V SL0~(n-1)=a 0~n-1,计算
    Figure PCTCN2018090247-appb-100046
    并将
    Figure PCTCN2018090247-appb-100047
    存储到1T1R阵列E 3的R 0~R n-1中;输入逻辑信号V WL0b~(n-1)b=b 0~n-1
    Figure PCTCN2018090247-appb-100048
    以及V SL0b~(n-1)b=a n,计算
    Figure PCTCN2018090247-appb-100049
    并将
    Figure PCTCN2018090247-appb-100050
    存储到1T1R阵列E 1的R 0b~R (n-1)b中;输入逻辑信号V WL0c=0、 V WL1c~nc=1、V BL0c~nc=a 0以及
    Figure PCTCN2018090247-appb-100051
    计算进位信息c 1=a 0·b 0+a 0·c 0+c 0·b 0,并将c 1存储到1T1R阵列E 2的R 1c~nc中;
    (S3-3)读取1T1R阵列E 1的R 0b中存储的逻辑信号
    Figure PCTCN2018090247-appb-100052
    读取1T1R阵列E 1的R 1b中存储的逻辑信号
    Figure PCTCN2018090247-appb-100053
    输入逻辑信号V WL0=c 0、V WL1=c 1、V WL2~(n-1)=0、
    Figure PCTCN2018090247-appb-100054
    V BL2~(n-1)=0、
    Figure PCTCN2018090247-appb-100055
    以及V SL2~(n-1)=0,计算s 0=a 0⊕b 0⊕c 0,s 1=a 1⊕b 1⊕c 1,并将s 0存储到1T1R阵列E 3的R 0中,将s 1存储到1T1R阵列E 3的R 1中;输入逻辑信号V WL0c~1c=0、V WL2c~nc=1、V BL0c~nc=a 1以及
    Figure PCTCN2018090247-appb-100056
    计算进位信息c 2=a 1·b 1+a 1·c 1+c 1·b 1,并将c 2存储到1T1R阵列E 2的R 2c~nc中;
    (S3-4)用i表示运算数据或运算结果中的第i位,给i赋初始值i=2;
    (S3-5)读取1T1R阵列E 1的R ib中存储的逻辑信号
    Figure PCTCN2018090247-appb-100057
    输入逻辑信号V WL0~(i-1)=0、V WLi=c i、V WL(i+1)~(n-1)=0、V BL0~(i-1)=0、
    Figure PCTCN2018090247-appb-100058
    V BL(i+1)~(n-1)=0、V SL0~(i-1)=0、
    Figure PCTCN2018090247-appb-100059
    以及V SL(i+1)~(n-1)=0,计算s i=a i⊕b i⊕c i,并将s i存储到1T1R阵列E 3的R i中;输入逻辑信号V WL0c~ic=0、V WL(i+1)c~nc=1、V BL0c~nc=a i以及
    Figure PCTCN2018090247-appb-100060
    计算进位信息c i+1=a i·b i+a i·c i+c i·b i,并将c i+1存储到1T1R阵列E 2的R (i+1)c~nc中;
    (S3-6)将i的取值自增1,若i<n-1,则转入步骤(S3-5);否则,转入步骤(S3-7);
    (S3-7)读取1T1R阵列E 1的R (n-1)b中存储的逻辑信号
    Figure PCTCN2018090247-appb-100061
    输入逻辑信号V WL0~(n-2)=0、V WL(n-1)=c n-1、V BL0~(n-2)=0、
    Figure PCTCN2018090247-appb-100062
    以及V SL0~(n-2)=0以及
    Figure PCTCN2018090247-appb-100063
    计算s n-1=a n-1⊕b n-1⊕c n-1,并将并将s n-1存储到1T1R阵列E 3的R n-1中;输入逻辑信号V WL0c~(n-1)c=0、V WLnc=1、V BL0c~nc=a n-1以及
    Figure PCTCN2018090247-appb-100064
    计算进位信息c n=a n-1·b n-1+a n-1·c n-1+c n-1·b n-1,并将c n存储在1T1R阵列E 2的的R nc中。
  13. 一种基于权利要求1所述计算阵列的运算电路,用于实现二位数 据选择器,输入逻辑信号a、逻辑信号b和控制信号Sel,通过控制Sel的取值选择输出逻辑信号a或者逻辑信号b,其特征在于,包括:1T1R阵列F;1T1R阵列F包括1个1T1R器件R,R对应的字线信号为V WL,R对应的位线信号为V BL,R对应的源线信号为V SL
  14. 一种基于权利要求13所述运算电路的操作方法,其特征在于,包括如下操作步骤:
    (S4-1)输入逻辑信号V WL=1、V BL=a以及
    Figure PCTCN2018090247-appb-100065
    对1T1R器件R进行初始化,将输入的逻辑信号a写入1T1R阵列F的R中;
    (S4-2)输入逻辑信号V WL=Sel、V BL=b以及
    Figure PCTCN2018090247-appb-100066
    输入逻辑信号b及控制信号Sel,并选择输出逻辑信号out;
    逻辑信号a与逻辑信号b仅代表两个独立的逻辑信号;当控制信号Sel=0时,输出信号out=a;当控制信号Sel=1时,输出信号out=b。
  15. 一种基于权利要求1所述计算阵列的运算电路,用于实现多位进位选择加法器,根据输入的数据a 0~n-1、b 0~n-1和进位信息c 0计算和值s 0~n-1及进位信息c n,n表示运算数据的位数,在计算过程中根据每一位的进位信息,选择运算数据对应位的同或运算结果或者异或运算结果作为和值的位信息,其特征在于,包括:1T1R阵列G 1、1T1R阵列G 2以及1T1R阵列G 3;1T1R阵列G 1包括n个1T1R器件R 0x~R (n-1)x,用于保存计算数据a 0~n-1与b 0~n-1的同或运算结果X 0~n-1=a 0~n-1XNOR b 0~n-1,R 0x~R (n-1)x对应的字线控制信号为V WL0x~V WL(n-1)x,R 0x~R (n-1)x对应的位线控制信号分别为V BL0x~V BL(n-1)x,R 0x~R (n-1)x对应的源线控制信号分别为V SL0x~V SL(n-1)x;1T1R阵列G 2包括(n+1)个1T1R器件R 0c~R nc,用于计算进位信息c i,i的取值为0~n,R 0c~R nc对应的字线控制信号分别为V WL0c~V WLnc,R 0c~R nc对应的位线控制信号分别为V BL0c~V BLnc,R 0c~R nc对应的源线控制信号分别为V SL0c~V SLnc;1T1R阵列G 3包括n个1T1R器件R 0~R n-1,用于计算并存储加法运算结果s 0~n-1,R 0~R n-1对应的字线控制信号为V WL0~V WL(n-1),R 0~R n-1对 应的位线控制信号为V BL0~V BL(n-1),R 0~R n-1对应的源线控制信号为V SL0~V SL(n-1);所述1T1R阵列G 1计算所得的同或运算结果X 0~n-1和所述1T1R阵列G 2计算所得的进位信息c i通过所述信号放大器和所述控制信号调制解调器实现信号转变,并通过所述数据传输电路传输给所述1T1R阵列G 3
  16. 一种基于权利要求15所述运算电路的操作方法,其特征在于,包括如下操作步骤:
    (S5-1)输入逻辑信号V WL0x~(n-1)x=1、
    Figure PCTCN2018090247-appb-100067
    以及V SL0x~7x=b 0~n-1,将输入的运算数据b 0~n-1取反后的结果
    Figure PCTCN2018090247-appb-100068
    存储到1T1R阵列G 1的R 0x~R (n-1)x中;输入逻辑信号V WL0c~nc=1、V BL0c~nc=c 0以及
    Figure PCTCN2018090247-appb-100069
    将输入的进位信息c 0存储到1T1R阵列G 2的R 0c~R nc中;输入逻辑信号V WL0~(n-1)=1、V BL0~(n-1)=a 0~n-1以及
    Figure PCTCN2018090247-appb-100070
    将输入的运算数据a 0~n-1存储到1T1R阵列G 3的R 0~R n-1中;
    (S5-2)输入逻辑信号V WL0x~(n-1)x=a 0~n-1、V BL0x~(n-1)x=b 0~n-1以及
    Figure PCTCN2018090247-appb-100071
    计算a 0~n-1与b 0~n-1的同或运算结果X 0~n-1=a 0~n-1XNOR b 0~n-1,并将同或运算结果X 0~n-1存储于1T1R阵列G 1的R 0x~R (n-1)x中;输入逻辑信号V WL0c=0、V WL1c~nc=1、V BL0c~nc=a 0以及
    Figure PCTCN2018090247-appb-100072
    计算进位信息c 1=a 0·b 0+a 0·c 0+c 0·b 0,并将c 1存储到1T1R阵列G 2的R 1c~R nc中;输入逻辑信号V WL0~(n-1)=b 0~n-1、V BL0~(n-1)=a 0~n-1以及
    Figure PCTCN2018090247-appb-100073
    计算异或结果
    Figure PCTCN2018090247-appb-100074
    Figure PCTCN2018090247-appb-100075
    Figure PCTCN2018090247-appb-100076
    存储于1T1R阵列G 3的R 0~R n-1中;
    (S5-3)输入逻辑信号V WL0c~1c=0、V WL2c~nc=1、V BL0c~nc=a 1以及
    Figure PCTCN2018090247-appb-100077
    计算c 2=a 1·b 1+a 1·c 1+c 1·b 1,并将c 2存储到1T1R阵列G 2的R 2c~R nc中;输入逻辑信号V WL0=c 0、V WL1=c 1、V WL2~(n-1)=0、V BL0~(n-1)=X 0~n-1以及
    Figure PCTCN2018090247-appb-100078
    计算s 0和s 1,并将s 0存储到1T1R阵列G 3的R 0中,将s 1存储到1T1R阵列G 3的R 1中;当c 0=0时,s 0=a 0⊕b 0,当c 0=1时,
    Figure PCTCN2018090247-appb-100079
    当c 1=0时,s 1=a 1⊕b 1,当c 1=1时,
    Figure PCTCN2018090247-appb-100080
    (S5-4)用i表示运算数据或运算结果中的第i位,给i赋初始值i=2;
    (S5-5)输入逻辑信号V WL0c~ic=0、V WL(i+1)c~nc=1、V BL0c~nc=a i以及
    Figure PCTCN2018090247-appb-100081
    计算进位信息c i+1=a i·b i+a i·c i+c i·b i,并将c i+1存储到1T1R阵列G 2的R (i+1)c~R nc中;输入逻辑信号V WL0(i-1)=0、V WLi=c i、V WL(i+1)~(n-1)=0、V BL0~(n-1)=X 0~n-1以及
    Figure PCTCN2018090247-appb-100082
    计算s i,并将s i存储到1T1R阵列G 3的R i中;当c i=0时,s i=a i⊕b i,当c i=1时,
    Figure PCTCN2018090247-appb-100083
    (S5-6)将i的取值自增1,若i<n-1,则转入步骤(S5-5);否则,转入步骤(S5-7);
    (S5-7)输入逻辑信号V WL0c~(n-1)c=0、V WLnc=1、V BL0c~nc=a n-1以及
    Figure PCTCN2018090247-appb-100084
    计算c n=a n-1·b n-1+a n-1·c n-1+c n-1·b n-1,并将c n存储到1T1R阵列G 2的R nc中;输入逻辑信号V WL0(n-2)=0、V WL(n-1)=c n-1、V BL0~(n-1)=X 0~n-1以及
    Figure PCTCN2018090247-appb-100085
    计算s n-1,并将s n-1存储到1T1R阵列G 3的R n-1中;当c n-1=0时,s n-1=a n-1⊕b n-1,当c n-1=1时,
    Figure PCTCN2018090247-appb-100086
  17. 一种基于权利要求1所述计算阵列的运算电路,用于实现多位pre-calculation加法器,采用提前计算进位信息的方法,根据输入的数据a 0~n-1、b 0~n-1以及进位信息c 0计算和值s 0~n-1及进位信息c n,n表示运算数据的位数,其特征在于,包括:1T1R阵列H 1以及1T1R阵列H 2;1T1R阵列H 1包括(n+1)个1T1R器件R 0c~R nc,用于计算进位信息c i,i的取值为0~n,R 0c~R nc对应的字线控制信号为V WL0c~V WLnc,R 0c~R nc对应的位线控制信号分别为V BL0c~V BLnc,R 0c~R nc对应的源线控制信号分别为V SL0c~V SLnc;1T1R阵列H 2包括n个1T1R器件R 0~R n-1,用于计算并存储加法运算结果s 0~n-1,R 0~R n-1对应的字线控制信号分别为V WL0~V WL(n-1),R 0~R n-1对应的位线控制信号为V BL0~V BL(n-1),R 0~R n-1对应的源线控制信号为V SL0~V SL(n-1);所述1T1R阵列H 1计算所得的进位信息c i通过所述信号放大器和所述控制信号调制解调器实现信号转变,并通过所述数据传输电路传输给所述1T1R阵列H 2
  18. 一种基于权利要求17所述运算电路的操作方法,其特征在于,包括如下操作步骤:
    (S6-1)输入逻辑信号V WL0c~nc=1、V BL0c~nc=c 0以及
    Figure PCTCN2018090247-appb-100087
    将输入的进位信息c 0存储到1T1R阵列H 1的R 0c~R nc中;输入逻辑信号V WL0~(n-1)=1、V BL0~(n-1)=c 0以及
    Figure PCTCN2018090247-appb-100088
    将输入的进位信息c 0存储到1T1R阵列H 2的R 0~R n-1中;
    (S6-2)输入逻辑信号V WL0c=0、V WL1c~nc=1、V BL0c~nc=a 0以及
    Figure PCTCN2018090247-appb-100089
    计算c 1=a 0·b 0+a 0·c 0+c 0·b 0,并将c 1存储到1T1R阵列H 1的R 1c~R nc中;输入逻辑信号V WL0~(n-1)=1、V BL0~(n-1)=a 0、V SL0=b 0以及
    Figure PCTCN2018090247-appb-100090
    计算
    Figure PCTCN2018090247-appb-100091
    以及进位信息c 1=a 0·b 0+a 0·c 0+c 0·b 0,并将s' 0存储到1T1R阵列H 2的R 0中,将c 1存储到1T1R阵列H 2的R 1~R n-1中;
    (S6-3)输入逻辑信号V WL0c~1c=0、V WL2c~nc=1、V BL0c~nc=a 1以及
    Figure PCTCN2018090247-appb-100092
    计算c 2=a 1·b 1+a 1·c 1+c 1·b 1,并将c 2存储在1T1R阵列H 1的R 2c~R nc中;输入逻辑信号V WL0~(n-1)=1、V BL0=b 0、V BL1~(n-1)=a 1、V SL0=c 1、V SL1=b 1以及
    Figure PCTCN2018090247-appb-100093
    计算s 0=a 0⊕b 0⊕c 0
    Figure PCTCN2018090247-appb-100094
    以及c 2=a 1·b 1+a 1·c 1+c 1·b 1,并将s 0存储在1T1R阵列H 2的R 0中,将s' 1存储在1T1R阵列H 2的R 1中,将c 2存储在1T1R阵列H 2的R 2~R 7中;
    (S6-4)用i表示运算数据或运算结果中的第i位,给i赋初始值i=1;
    (S6-5)输入逻辑信号V WL0c~(i+2)c=0、V WL(i+2)c~nc=1、V BL0c~nc=a i+1以及
    Figure PCTCN2018090247-appb-100095
    计算c i+2=a i+1·b i+1+a i+1·c i+1+c i+1·b i+1,并将c i+2存储在1T1R阵列H 1的R (i+2)c~R nc中;输入逻辑信号V WL0~(i-1)=0、V WLi~(n-1)=1、V BL0~(i-1)=0、V BLi=b i、V BL2~7=a i+1、V SL0~(i-1)=0、V SLi=c i+1、V SL(i+1)=b (i+1)以及
    Figure PCTCN2018090247-appb-100096
    计算s i=a i⊕b i⊕c i
    Figure PCTCN2018090247-appb-100097
    以及c i+2=a i+1·b i+1+a i+1·c i+1+c i+1·b i+1,并将s i存储在1T1R阵列H 2的R i中,将s' i+1存储在1T1R阵列H 2的R i+1中,将c i+2存储在1T1R阵列H 2的R i+2~R n-1中;
    (S6-6)将i的取值自增1,若i<n-2,则转入步骤(S6-5);否则,转入步骤(S6-7);
    (S6-7)、输入逻辑信号V WL0c~(n-1)c=0、V WLnc=1、V BL0c~nc=a n-1以及
    Figure PCTCN2018090247-appb-100098
    计算c n=a n-1·b n-1+a n-1·c n-1+c n-1·b n-1,并将c n存储在1T1R阵列H 1的R nc中;输入逻辑信号V WL0~(n-3)=0、V WL(n-2)~(n-1)=1、V BL0~(n-3)=0、V BL(n-2)=b n-2、V BL(n-1)=a n-1、V SL0~(n-3)=0、V SL(n-2)=c n-1以及
    Figure PCTCN2018090247-appb-100099
    计算s n-2=a n-2⊕b n-2⊕c n-2以及
    Figure PCTCN2018090247-appb-100100
    并将s n-2存储到1T1R阵列H 2的R n-2中,将s' n-1存储到1T1R阵列H 2的R n-1中;
    (S6-8)输入逻辑信号V WL0~(n-2)=0、V WL(n-1)=1、V BL0~(n-2)=0、V BL(n-1)=b n-1、V SL0~(n-2)=0以及V SL(n-1)=c n,计算s n-1=a n-1⊕b n-1⊕c n-1,并将s n-1存储到1T1R阵列H 2的R n-1中。
PCT/CN2018/090247 2017-12-17 2018-06-07 一种基于 1t1r 器件的计算阵列、运算电路及操作方法 WO2019114217A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US16/336,900 US11475949B2 (en) 2017-12-17 2018-06-07 Computing array based on 1T1R device, operation circuits and operating methods thereof

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201711358553.4 2017-12-17
CN201711358553.4A CN108111162B (zh) 2017-12-17 2017-12-17 一种运算电路及操作方法

Publications (1)

Publication Number Publication Date
WO2019114217A1 true WO2019114217A1 (zh) 2019-06-20

Family

ID=62216480

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/090247 WO2019114217A1 (zh) 2017-12-17 2018-06-07 一种基于 1t1r 器件的计算阵列、运算电路及操作方法

Country Status (3)

Country Link
US (1) US11475949B2 (zh)
CN (1) CN108111162B (zh)
WO (1) WO2019114217A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114400031A (zh) * 2022-03-24 2022-04-26 之江实验室 一种补码映射的rram存算一体芯片及电子设备

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108111162B (zh) * 2017-12-17 2020-12-08 华中科技大学 一种运算电路及操作方法
CN109521995B (zh) * 2018-11-02 2023-05-12 上海交通大学 一种内嵌于忆阻器阵列的逻辑运算装置的计算方法
CN109634557B (zh) * 2018-11-19 2021-04-06 华中科技大学 一种基于1t1r存储器的乘法器及运算方法
CN109994139B (zh) * 2019-03-15 2020-11-03 北京大学 一种基于单极性忆阻器的完备非易失逻辑实现方法及其应用
CN110298181A (zh) * 2019-05-14 2019-10-01 北京航空航天大学 数据加密存储方法、数据解密方法以及加密存储器芯片
CN110445489B (zh) * 2019-07-24 2020-12-18 华中科技大学 一种数位比较电路及其操作方法
CN110597484B (zh) * 2019-08-02 2021-08-13 北京航空航天大学 基于存内计算的多比特全加器、多比特全加运算控制方法
CN110837355B (zh) * 2019-10-21 2022-05-17 华中科技大学 一种基于NOR flash阵列的逻辑电路及操作方法
EP4002471A1 (en) * 2020-11-12 2022-05-25 Commissariat à l'Energie Atomique et aux Energies Alternatives Hybrid resistive memory
US11388356B1 (en) * 2021-04-12 2022-07-12 Tetramem Inc. AI fusion pixel sensor using memristors
CN113380296A (zh) * 2021-05-07 2021-09-10 中国科学院上海微系统与信息技术研究所 一种相变存储单元布尔逻辑的图像处理装置及方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1503366A (zh) * 2002-11-26 2004-06-09 夏普株式会社 共用位/源极线高密度一晶体管/一电阻型r-ram阵列及其操作方法
US20050248978A1 (en) * 2004-05-03 2005-11-10 Symetrix Corporation 1T1R resistive memory array with chained structure
CN101908373A (zh) * 2009-06-04 2010-12-08 复旦大学 一种带读电压偏置nmos晶体管的电阻转换存储器
CN203942512U (zh) * 2014-06-20 2014-11-12 华中科技大学 一种非易失性布尔逻辑运算电路
CN104318956A (zh) * 2014-09-30 2015-01-28 山东华芯半导体有限公司 一种阻变随机存储器存储阵列编程方法及装置
CN106374912A (zh) * 2016-09-12 2017-02-01 华中科技大学 一种逻辑运算电路与操作方法
CN108111162A (zh) * 2017-12-17 2018-06-01 华中科技大学 一种基于1t1r器件的计算阵列、运算电路及操作方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4174402B2 (ja) * 2003-09-26 2008-10-29 株式会社東芝 制御回路及びリコンフィギャラブル論理ブロック
CN101933096A (zh) * 2008-10-21 2010-12-29 松下电器产业株式会社 非易失性存储装置及向其存储单元的写入方法
WO2013019678A2 (en) * 2011-07-29 2013-02-07 Crossbar, Inc. Field programmable gate array utilizing two-terminal non-volatile memory
JP5853843B2 (ja) * 2012-04-25 2016-02-09 ソニー株式会社 記憶制御装置、記憶装置、および、それらにおける処理方法
CN103716038B (zh) * 2013-12-25 2016-05-25 华中科技大学 一种基于相变存储器的非易失性逻辑门电路
CN103839585A (zh) * 2014-03-03 2014-06-04 山东华芯半导体有限公司 一种具有读取自参考功能的 2-1t1r rram 存储单元
CN104124960B (zh) * 2014-06-20 2018-02-23 华中科技大学 一种非易失性布尔逻辑运算电路及其操作方法
JP2016129318A (ja) * 2015-01-09 2016-07-14 株式会社東芝 ルックアップテーブル回路および不揮発性記憶装置
CN105869672B (zh) * 2016-03-28 2018-05-22 华中科技大学 一种基于rram的非易失fpga编程点电路及其操作方法
US9792987B1 (en) * 2016-07-21 2017-10-17 Taiwan Semiconductor Manufacturing Co., Ltd. Resistive random access memory device
CN106373611A (zh) * 2016-09-29 2017-02-01 华中科技大学 一种存储与计算阵列结构及其操作方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1503366A (zh) * 2002-11-26 2004-06-09 夏普株式会社 共用位/源极线高密度一晶体管/一电阻型r-ram阵列及其操作方法
US20050248978A1 (en) * 2004-05-03 2005-11-10 Symetrix Corporation 1T1R resistive memory array with chained structure
CN101908373A (zh) * 2009-06-04 2010-12-08 复旦大学 一种带读电压偏置nmos晶体管的电阻转换存储器
CN203942512U (zh) * 2014-06-20 2014-11-12 华中科技大学 一种非易失性布尔逻辑运算电路
CN104318956A (zh) * 2014-09-30 2015-01-28 山东华芯半导体有限公司 一种阻变随机存储器存储阵列编程方法及装置
CN106374912A (zh) * 2016-09-12 2017-02-01 华中科技大学 一种逻辑运算电路与操作方法
CN108111162A (zh) * 2017-12-17 2018-06-01 华中科技大学 一种基于1t1r器件的计算阵列、运算电路及操作方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114400031A (zh) * 2022-03-24 2022-04-26 之江实验室 一种补码映射的rram存算一体芯片及电子设备
CN114400031B (zh) * 2022-03-24 2022-07-08 之江实验室 一种补码映射的rram存算一体芯片及电子设备

Also Published As

Publication number Publication date
US11475949B2 (en) 2022-10-18
CN108111162A (zh) 2018-06-01
US20210327505A1 (en) 2021-10-21
CN108111162B (zh) 2020-12-08

Similar Documents

Publication Publication Date Title
WO2019114217A1 (zh) 一种基于 1t1r 器件的计算阵列、运算电路及操作方法
CN109634557B (zh) 一种基于1t1r存储器的乘法器及运算方法
JP5204868B2 (ja) 半導体記憶装置
US20210192325A1 (en) Kernel transformation techniques to reduce power consumption of binary input, binary weight in-memory convolutional neural network inference engine
KR102514045B1 (ko) 저항성 메모리 장치 및 이를 포함하는 메모리 시스템
JP2014179155A (ja) ソースラインフローティング回路、それを含むメモリ装置及びメモリ装置の読み出し方法
JP6646103B2 (ja) 半導体装置
TWI508084B (zh) 自記憶體陣列判定及轉移資料
CN111061454B (zh) 一种基于双极性忆阻器的逻辑实现方法
KR102049258B1 (ko) 레퍼런스 셀을 포함하는 불휘발성 메모리 장치 및 그것의 데이터 관리 방법 및
WO2020173040A1 (zh) 一种可逆逻辑电路及其操作方法
CN111048134A (zh) 操作电阻式存储器装置的方法
CN108335716B (zh) 一种基于非易失存储器的内存计算方法
KR20180016854A (ko) 반도체 메모리 장치 및 그 동작 방법
TWI773210B (zh) 記憶體裝置及其讀取方法
CN114496010A (zh) 一种基于磁性随机存储器的模拟域近存计算阵列结构
WO2015100586A1 (zh) 基于阻变器件的多位全加器及其操作方法
JP3980731B2 (ja) 不揮発性半導体記憶装置および読出し方法
TWI790497B (zh) 半導體記憶裝置
Reuben et al. Carry-free addition in resistive ram array: n-bit addition in 22 memory cycles
KR20100013125A (ko) 반도체 장치, 이를 포함하는 반도체 시스템, 및 저항성메모리 셀의 프로그램 방법
CN114627937A (zh) 基于非易失存储器件的存内计算电路和方法
JP2012185870A (ja) 半導体記憶装置
TWI784515B (zh) 記憶體系統以及操作記憶體系統的方法
Saha et al. A novel time-domain in-memory computing unit using STT-MRAM

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18888072

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18888072

Country of ref document: EP

Kind code of ref document: A1