HALF-ADDER, FULL-ADDER AND MULTIPLIER BASED ON MEMRISTOR ARRAY

20220374204 · 2022-11-24

Assignee

Inventors

Cpc classification

International classification

Abstract

The present invention discloses a memristor array, comprising metal wires and memristors; the metal wires are arranged laterally and vertically; a memristor is arranged at the intersection of every two metal wires; the connection/disconnection of the metal wires is judged according to the resistance values of the memristors; and an adder is constituted according to the resistance value states of the memristors. The present invention provides a memristor-CMOS hybrid multiplication core circuit, in which one input of multiplication can be stored in a memristor network, one part of operation is completed in a memory network, the other part of operation is completed through a CMOS circuit, thereby reducing frequent data calls by half, and the power consumption of the CMOS circuit is further reduced by reducing competitive adventure in the operation process, thereby greatly reducing the overall energy consumption.

Claims

1. A half-adder based on a memristor array, wherein the half-adder comprises a 7*4 memristor array; the 7*4 memristor array comprises metal wires and memristors; the metal wires are arranged laterally and vertically; a memristor is arranged at the intersection of every two metal wires; the connection disconnection of the metal wires is judged according to the relative magnitude of the resistance values of the memristors ; an adder is constituted according to the resistance value states of the memristors; five lateral metal wires of the 7*4 memristor array are taken as inputs, and two metal wires are respectively output sum and output carry; For groups of memristors 1-1 and 2-1, memristors 3-2 and 4-2, memristors 4-3 and 5-3, memristors 6-1 and 6-2 and memristors 7-3 and 7-4, one of each group is in the high resistance state, and the other one is, in the low resistance state; a memristor 4-4 is in the low resistance state; and other memristors are in the high resistance state.

2. The half-adder based on a memristor array according to claim 1, wherein the half-adder has the same structure as a full-adder.

3. A multiplier containing the half-adder based on a memristor array of claim 1, further comprising a CMOS half-adder and a CMOS full-adder; the half-adder, the CMOS half-adder and the CMOS full-adder constitute a wallace-tree digital multiplier; the product of a multiplicator and each bit of a multiplicand is taken as an input, the output sum of the half-adder is taken as a low-bit output or the input of a full-adder at the next level, and the output carry is taken as the input of a high-bit full-adder; and the output sum of the full-adder is taken as an output or the input of the full-adder at the next level, and the output carry is taken as the input of the high-bit full-adder.

4. A multiplier containing the half-adder based on a memristor array of claim 2, further comprising a CMOS full-adder; the half-adder, the full-adder and the CMOS full-adder constitute a wallace-tree digital multiplier; the product of a multiplicator and each bit of a multiplicand is taken as an input, the output sum of the half-adder is taken as a low-bit output or the input of a full-adder at the next level, and the output carry is taken as the input of a high-bit full-adder; and the output sum of the full-adder is taken as an output or the input of the full-adder at the next level, and the output carry is taken as the input of the high-bit full-adder.

5. The multiplier according to claim 3, wherein the multiplicator and each bit of the multiplicand are taken as inputs, and the product form is obtained through an AND gate circuit.

6. The multiplier according to claim 4, wherein the multiplicator and each bit of the multiplicand are taken as inputs, and the product form is obtained through an AND gate circuit.

Description

DESCRIPTION OF DRAWINGS

[0020] To more clearly describe the technical solution in the embodiments of the present invention or in the prior art, the drawings required to be used in the description of the embodiments or the prior art will be simply presented below. Apparently, the drawings in the following description are merely the embodiments of the present invention, and for those ordinary skilled in the art, other drawings can also be obtained according to the provided drawings without contributing creative labor.

[0021] FIG. 1 is a schematic diagram of a wallace-tree digital multiplier of the present invention;

[0022] FIG. 2 is a schematic diagram of a switching network of a half-adder of the present invention;

[0023] FIG. 3 is a schematic diagram of a switching network of a full-adder of the present invention;

[0024] FIG. 4 is a schematic diagram of a traditional wallace-tree digital multiplier of the present invention.

DETAILED DESCRIPTION

[0025] The technical solution in the embodiments of the present invention will be clearly and fully described below in combination with the drawings in the embodiments of the present invention. Apparently, the described embodiments are merely part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments in the present invention, all other embodiments obtained by those ordinary skilled in the art without contributing creative labor will belong to the protection scope of the present invention.

[0026] Embodiments of the present invention disclose a memristor-CMOS hybrid multiplication core circuit, in which one input of multiplication can be stored in a memristor network, one part of operation is completed in a memory network, the other part of operation is completed through a CMOS circuit, thereby reducing frequent data calls by half, and the power consumption of the

[0027] CMOS circuit is further reduced by reducing competitive adventure in the operation process, thereby greatly reducing the overall energy consumption.

[0028] A half-adder based on a memristor array, comprises a 7*4 memristor array; the 7*4 memristor array comprises metal wires and memristors; the metal wires are arranged laterally and vertically; a memristor is arranged at the intersection of every two metal wires; the connection/disconnection of the metal wires is judged according to the relative magnitude of the resistance values of the memristors; an adder is constituted according to the resistance value states of the memristors; five lateral metal wires of the 7*4 memristor array are taken as inputs, and two metal wires are respectively output sum and output carry; For groups of memristors 1-1 and 2-1, memristors 3-2 and 4-2, memristors 4-3 and 5-3, memristors 6-1 and 6-2 and memristors 7-3 and 7-4, one of each group is in the high resistance state, and the other one is in the low resistance state; a memristor 4-4 is in the low resistance state; and other memristors are in the high resistance state.

[0029] To further optimize the above technical solution, the half-adder has the same structure as the full-adder.

[0030] A multiplier containing a half-adder based on a memristor array further comprises a CMOS half-adder and a CMOS full-adder; the half-adder, the CMOS half-adder and the CMOS full-adder constitute a wallace-tree digital multiplier; the product of a multiplicator and each bit of a multiplicand is taken as an input, the output sum of the half-adder is taken as a low-bit output or the input of a full-adder at the next level, and the output carry is taken as the input of a high-bit full-adder; and the output sum of the full-adder is taken as an output or the input of the full-adder at the next level, and the output carry is taken as the input of the high-bit full-adder.

[0031] A multiplier containing a half-adder based on a memristor array is characterized by further comprising a CMOS full-adder; the half-adder, the full-adder and the CMOS full-adder constitute a wallace-tree digital multiplier; the product of a multiplicator and each bit of a multiplicand is taken as an input, the output sum of the half-adder is taken as a low-bit output or the input of a full-adder at the next level, and the output carry is taken, as the input of a high-bit full-adder; and the output sum of the full-adder is taken as an output or the input of the full-adder at the next level, and the output carry is taken as the input of the high-bit full-adder.

[0032] To further optimize the above technical solution, the multiplicator and each bit of the multiplicand are taken as inputs, and the product form is obtained through an AND gate circuit.

[0033] As shown in FIG. 2 and FIG. 3, the resistance values of the memristors are set according to the follow rules to enable the memristor array to complete operation. × indicates that the memristors always keep high resistance, and lateral and vertical metal wires are disconnected;

[0034] Black dot indicates that the memristors always keep low resistance, and lateral and vertical metal wires are connected;

[0035] Circle and square indicate that the resistance values of the memristors are set to complementary resistance values (high and low) according to the value of yi so that the vertical metal wires are selectively connected with one of lateral metal wires.

[0036] As shown in FIG. 2, it is assumed that the inputs of the half-adder are x1y1 and x2y2, the output sum:

[0037] Output carry:

[0038] As shown in FIG. 3, the output sum:

[0039] Output carry:

[0040] Embodiment 1

[0041] FIG. 4 shows a traditional wallace-tree digital multiplier, multiplication of 4 bits by 4 bits, as an example, is divided into level 1, level 2 and output level, and partial product, as an input, is obtained by a multiplicator and each bit of a multiplicand through an AND gate circuit; X0Y0 is the unit's place Z0; X0Y1 and X1Y0 are taken as inputs of a first CMOS half-adder, the output sum is the ten's place Z1, and the output carry is taken as the input of the CMOS full-adder of the output-level hundred's place; X0Y2 and X1Y1 are taken as inputs of a second CMOS half-adder, the output sum, X2Y0 and the output carry of the first CMOS half-adder are jointly taken as inputs of the CMOS full-adder of the hundred's place, and the output sum is the hundred's place Z2; X1Y2 and X0Y3 are taken as inputs of a third CMOS half-adder; the output sum of the third CMOS half-adder, X3Y0 and X2Y1 are jointly taken as inputs of the CMOS full-adder of the level 2 thousand's place; the output sum of the CMOS full-adder of the level 2 thousand's place, the output carry of the second CMOS half-adder and the output carry of the CMOS full-adder of the output-level hundred's place are taken as inputs of the CMOS full-adder of the output-level thousand's place, and the output sum is the thousand's place Z3; X2Y2 and X1 Y3 are taken as inputs of a fourth CMOS half-adder; the output sum of the fourth CMOS half-adder, X3Y1 and the output carry of the third CMOS half-adder are jointly taken as inputs of the CMOS full-adder of the level 2 ten thousand's place; the output sum of the CMOS full-adder of the level 2 ten thousand's place, the output carry of the second CMOS full-adder of the level 2 thousand's place and the output carry of the CMOS full-adder of the output-level thousand's place are taken as inputs of the CMOS full-adder of the output-level ten thousand's place, and the output sum of the CMOS full-adder of the output-level ten thousand's place is the ten thousand's place Z4; X3Y2, X2Y3 and the output carry of the fourth CMOS half-adder are taken as inputs of the full-adder (dotted portion) of the level 2 hundred thousand's place; the output sum, of the full-adder of the level 2 hundred thousand's place, the output carry of the CMOS full-adder of the level 2 ten thousand's place and the output carry of the CMOS full-adder of the output-level ten thousand's place are taken as inputs of the CMOS full-adder of the output-level hundred thousand's place, and the output sum is the hundred thousand's place Z5; X3Y3, the output carry of the full-adder of the level 2 hundred thousand's place and the output carry of the CMOS full-adder of the output-level hundred thousand's place are taken as inputs of the CMOS full-adder of the output-level million's place; and the output sum of the CMOS full-adder of the output-level, million's place is the million's place Z6, and the output carry is the ten million's place Z7.

[0042] Embodiment 2

[0043] On the basis of embodiment 1, one or more of a first CMOS half-adder, a second CMOS half-adder, a third CMOS half-adder and a fourth CMOS half-adder are transformed into a half-adder composed of a memristor array.

[0044] Embodiment 3

[0045] As shown in FIG. 1, multiplication of 4 bits by 4 bits, as an example, is divided into level 1, level 2 and output level, and partial product, as an input, is obtained by a multiplicator and each bit of a multiplicand through an AND gate circuit; X0Y0 is the unit's place Z0; X0Y1 and X1Y0 are taken as inputs of a first half-adder, the output sum is the ten's place Z1, and the output carry is taken as the input of the CMOS full-adder of the output-level hundred's place; X0Y2 and X1Y1 are taken as inputs of a second half-adder, the output sum, X2Y0 and the output carry of the first half-adder are jointly taken as inputs of the CMOS full-adder of the hundred's place, and the output sum is the hundred's place Z2; X1Y2 and X0Y3 are taken as inputs of a third half-adder; the output sum of the third half-adder, X3Y0 and X2Y1 are jointly taken as inputs of the CMOS full-adder of the level 2 thousand's place; the output sum of the CMOS full-adder of the level 2 thousand's place, the output carry of the second half-adder and the output carry of the CMOS full-adder of the output-level hundred's place are taken as inputs of the CMOS full-adder of the output-level thousand's place, and the output sum is the thousand's place Z3; X2Y2 and X1Y3 are taken as inputs of a fourth half-adder; the output sum of the fourth half-adder, X3 Y1 and the output carry of the third half-adder are jointly taken as inputs of the CMOS full-adder of the level 2 ten thousand's place; the output sum of the CMOS full-adder of the level 2 ten thousand's place, the output carry of the second CMOS full-adder of the level 2 thousand's place and the output carry of the CMOS full-adder of the output-level thousand's place are taken as inputs of the CMOS full-adder of the output-level ten thousand's place, and the output sum of the CMOS full-adder of the output-level ten thousands place is the ten thousand's place Z4; X3Y2, X2Y3 and the output carry of the fourth half-adder are taken as inputs of the first full-adder (dotted portion); the output sum of the first full-adder, the output carry of the CMOS full-adder of the level 2 ten thousand's place and the output carry of the CMOS full-adder of the output-level ten thousand's place are taken as inputs of the CMOS full-adder of the output-level hundred thousand's place, and the output sum is the hundred thousand's place Z5; X3Y3, the output carry of the first full-adder and the output carry of the CMOS full-adder of the output-level hundred thousand's place are taken as inputs of the CMOS full-adder of the output-level million's place; and the output sum of the CMOS full-adder of the output-level million's place is the million's place Z6, and the output carry is the ten million's place Z7.

[0046] Each embodiment in the description is described in a progressive way. The difference of each embodiment from each other is the focus of explanation. The same and similar parts among all of the embodiments can be referred to each other. For a device disclosed by the embodiments, because the device corresponds to a method disclosed by the embodiments, the device is simply described. Refer to the description of the method part for the related part.

[0047] The above description of the disclosed embodiments enables those skilled in the art to realize or use the present invention. Many modifications to these embodiments will be apparent to those skilled in the art. The general principle defined herein can be realized in other embodiments without departing from the spirit or scope of the present invention. Therefore, the present invention will not be limited to these embodiments shown herein, but will conform to the widest scope consistent with the principle and novel features disclosed herein.