METHOD, UNIT AND CIRCUIT FOR IMPLEMENTING BOOLEAN LOGIC BASED ON COMPUTING-IN-MEMORY TRANSISTOR

Information

  • Patent Application
  • 20230223939
  • Publication Number
    20230223939
  • Date Filed
    March 14, 2023
    a year ago
  • Date Published
    July 13, 2023
    a year ago
Abstract
A method, a unit and circuits for implementing Boolean logics based on computing-in-memory transistors. The method is implemented by using the characteristics and the read-write mode of the computing-in-memory transistor; the basic unit consists of a computing-in-memory transistor and a pull resistor; the pull resistor in the basic unit is connected in series with the transistor, and the gate of the transistor is independent; the basic units can implement sixteen Boolean logic operations through different circuit structures and voltage configuration schemes. Compared with the logic circuit structure of the conventional CMOS transistors, the present disclosure can implement more logic operations with fewer transistors, which greatly optimizes circuit density and computing speed caused by data transmission between storage units and process units.
Description
TECHNICAL FIELD

The present disclosure belongs to the technical field of semiconductors and integrated circuits, and in particular relates to a method, a unit and circuits for implementing Boolean logic based on computing-in-memory transistors.


BACKGROUND

In the traditional computing system based on the Von Neumann architecture, the data need to be frequently transmitted between the process unit and the storage unit due to the physical separation, resulting in serious loss of system power consumption and speed. The improvement of memory performance lags far behind that of CPU, and the performance gap between them keeps widening, which limits the development of high-speed and low-power processors. At the same time, applications such as artificial intelligence and brain-like computing with high memory access and high parallelism are accelerating the development of in-memory computing.


The computing-in-memory transistor has the advantages of high speed, low power consumption, high integration density and non-destructive readout. At the same time, this kind of device can implement non-volatile storage of data by adjusting the polarization of the gate material, which is helpful to accelerate the application of in-memory computing.


Therefore, the implementation of data storage and process by using the computing-in-memory transistors plays an important role in realizing the new computing architecture, improving the computing speed and energy efficiency, and increasing the integrated-circuit density.


SUMMARY

In view of the deficiency of the separation between the storage and process in Von Neumann architecture in the prior art, the purpose of the present disclosure is to provide a method, a unit and circuits for implementing Boolean logic based on computing-in-memory transistors. In the present disclosure, the non-volatile computing-in-memory transistor is used to implement in-memory Boolean logic, which can reduce the circuit area and optimize the power consumption of data transmission.


The purpose of the present disclosure is implemented by the following technical solution: an in-memory computing basic unit consists of a computing-in-memory transistor and a pull resistor. The pull resistor is connected in series with the computing-in-memory transistor, and the gate of the computing-in-memory transistor is independent; one end of the pull resistor is connected with the drain of computing-in-memory transistor, the other end of the pull resistor which is not connected to the computing-in-memory transistor is a port T1, and the source of the computing-in-memory transistor is connected to the port T2; a threshold voltage Vt of the computing-in-memory transistor represents an input A of the basic unit; a gate voltage Vin, of the computing-in-memory transistor represents an input B of the basic unit; A and B are serial inputs; a drain voltage of the computing-in-memory transistor is an output Vout of the basic unit.


Further, the gate voltage Vin and the threshold voltage Vt of the computing-in-memory transistor satisfy the following relationship:






V
t+
>V
in+
>V
t0
>V
in−
>V
t−


where the gate voltage Vin is modulated between Vin+ and Vin−, and the threshold voltage Vt is modulated between Vt+, Vt0 and Vt−.


A method for implementing Boolean logic based on computing-in-memory transistors implements 10 kinds of Boolean logics: 1, 0, A, B, Ā, B, AB, A+B, custom-character, custom-character by a single basic unit as described above; the threshold voltage modulation of the computing-in-memory transistor can change the AND/OR logic relationship of A and B, and the configuration scheme of the port voltages of the basic unit determines whether the circuit has a NOT gate function.


Further, the method includes the following steps.


a) When the port T1 is grounded and the voltage of the port T2 is Vdd, the threshold voltage of the computing-in-memory transistor is Vt0, the logic operation of 0 or 1 is complemented by modulating the gate voltage: when the applied gate voltage is Vin+, which is greater than the threshold voltage Vt0, the output is 1; when the applied gate voltage is Vin−, which is less than the threshold voltage Vt0, the output is 0;


b) When the output is irrelated to B, the gate voltage of the computing-in-memory transistor is Vin+, and the threshold voltage is Vt+/Vt−, the logic operation of A is implemented, the logic value of A is related with the modulation of the threshold voltage: when the threshold voltage is Vt+, which is greater than the gate voltage Vin+, the logic value of A is 0; when the threshold voltage is Vt−, which is less than the gate voltage the logic value of A is 1; the logic operation of A is implemented by adjusting the port voltage which can configure the NOT gate function.


c) When the output is irrelated to A, the threshold voltage of the computing-in-memory transistor is Vt0, and the gate voltage is Vin+/Vin−, the logic operation of B is implemented, the logic value of B is related with the modulation of the gate voltage: when the gate voltage is Vin+, which is greater than the threshold voltage Vt0, the logic value of B is 1; when the gate voltage is Vin−, which is less than the threshold voltage Vt0, the logic value of B is 0; the logic operation of 173 is implemented by adjusting the port voltage which can configure the NOT gate function.


d) When the output is related to both A and B, the applied gate voltage is Vin+/Vin− (i.e. the logic value of B is 1/0):


d1) When the threshold voltage is Vt+/Vt0 (i.e. the logic value of A is 1/0), two logic operations of custom-character, AB are implemented by adjusting the port voltage which can configure the NOT gate function.


d2) When the threshold voltage is Vt0/Vt− (i.e. the logic value of A is 1/0), two logic operations of custom-character, A+B can be implemented by adjusting the port voltage which can configure the NOT gate function.


Further, the NOT gate function is configurable by adjusting the port voltage. It includes: when the port T1 is grounded and the voltage of port T2 is Vdd, the basic unit has no NOT gate function; when the voltage of port T1 is Vdd and port T2 is grounded, the basic unit has the NOT gate function.


An in-memory computing logic circuit based on computing-in-memory transistors consists of two basic units in cascade, and the output port of the upper-stage basic unit is connected to the gate of the lower-stage basic unit.


The threshold voltage Vt1 of the upper-stage computing-in-memory transistor is V0, and the gate voltage Vin1 of the upper-stage computing-in-memory transistor is an input B of the logic circuit; the gate voltage Vin2 of the lower-stage computing-in-memory transistor is the output voltage Vt1 from the upper-stage basic unit; the threshold voltage Vt2 of the lower-stage computing-in-memory transistor is an input A of the logic circuit; the output Vout2 of the lower-stage basic unit is the output of the logic circuit; one end of the upper-stage pull resistor, which does not output Vout1, is a port T1, and the source of the upper-stage computing-in-memory transistor is connected to the port T2; one end of the lower-stage pull resistor, which does not output Vout2, is a port T3, and the source of the lower-stage computing-in-memory transistor is connected to the port T4.


A method for implementing Boolean logic based on computing-in-memory transistors whose output logic is related to both A and B, implements four Boolean logics of A+B, A+B, AB, AB by the above logic circuit, includes:


The voltage of port T1 is Vdd, the port T2 is grounded, and the gate voltage Vm1 of the upper-stage computing-in-memory transistor is Vin+/Vin−, the upper-stage basic unit has the NOT gate function at this time, and its output Vout1 is B; the logic operations of AB, A+B are implemented by modulating the threshold voltage of the lower-stage computing-in-memory transistor; the configuration scheme of the port voltages of the lower-stage basic unit (i.e. T3, T4) determines whether to perform the NOT operation on the logic operations of AB, A+B:


e) When the port T3 is grounded, the voltage of port T4 is Vdd, and the threshold voltage Vt2 of the lower-stage computing-in-memory transistor is Vt+/Vt0, the logic operation of AB is implemented.


f) When the port T3 is grounded, the voltage of port T4 is Vdd, and the threshold voltage Vt2 of the lower-stage computing-in-memory transistor is Vt0/Vt−, the logic operation of A+11 is implemented.


g) When the voltage of port T3 is Vdd, the port T4 is grounded, and the threshold voltage Vt2 of the lower-stage computing-in-memory transistor is V+/Vt0, the logic operation of Ā+B is implemented.


h) When the voltage of port T3 is Vdd, the port T4 is grounded, and the threshold voltage V2 of the lower-stage computing-in-memory transistor is Vt0/Vt−, the logic operation of ĀB is implemented.


An in-memory computing logic circuit based on the computing-in-memory transistors includes three basic units mentioned above; the drain of the first-stage computing-in-memory transistor is connected with the gate of the second-stage computing-in-memory transistor, so that the first-stage basic unit is cascaded with the second-stage basic unit; the second-stage basic unit and the third-stage basic unit share a pull resistor, the drain of the second-stage computing-in-memory transistor is connected with the drain of the third-stage computing-in-memory transistor, and the source of the second-stage computing-in-memory transistor is connected with the source of the third-stage computing-in-memory transistor, so that the second-stage basic unit and the third-stage basic unit are connected in parallel; the gate of the first-stage computing-in-memory transistor and the gate of the third-stage computing-in-memory transistor are input ports of the in-memory computing logic circuit; the drain voltage of the third-stage computing-in-memory transistor is the output of the in-memory computing logic circuit.


A method for implementing Boolean logic based on computing-in-memory transistors can implements two logic operations of XNOR (AB+custom-character) and XOR (ĀB+AB), includes:


The threshold voltage of the first-stage computing-in-memory transistor is Vt0/Vt− (i.e. the logic value is 1/0); the threshold voltage of the second-stage computing-in-memory transistor is Vt0, the threshold voltage of the third-stage computing-in-memory transistor is Vt+/Vt0 (i.e. the logic value is 1/0); the first-stage basic unit implements the logic operation of NOR. The threshold voltage of the first-stage computing-in-memory transistor and the threshold voltage of the third-stage computing-in-memory transistor correspond to the same logic value, which are denoted by A; the gate voltage of the first-stage computing-in-memory transistor and the gate voltage of the third-stage computing-in-memory transistor correspond to the same logic value, which are denoted by B.


When the port connected with the pull resistor of the parallel structure and the source of the first-stage computing-in-memory transistor are grounded, meanwhile, the source of the computing-in-memory transistor of the parallel structure and the port connected to the first-stage pull resistor are connected to Vdd, the logic circuit implements the logic operation of XNOR (i.e. AB+custom-character); when the source of the computing-in-memory transistor of the parallel structure and the source of the first-stage computing-in-memory transistor are grounded, meanwhile, the port connected to the pull resistor of the parallel structure and the port connected with the first-stage pull resistor are connected to Vdd, the logic circuit implements the logic operation of XOR (i.e. ĀB+AB).


The present disclosure has the following beneficial effects: on the basis of storing data in computing-in-memory transistors, the present disclosure not only can implement Boolean logic operations by using fewer transistors, but also reduce the circuit area and optimize the power consumption of data transmission, which can greatly improve the computing speed and energy efficiency.





BRIEF DESCRIPTION OF DRAWINGS


FIG. 1 is a logic circuit structure diagram of an in-memory computing basic unit according to the present disclosure;



FIG. 2 is a structural diagram of a logic circuit consisting of basic units in cascade according to the present disclosure;



FIG. 3 is a structure diagram of an XNOR circuit consisting of cascaded and parallel basic units according to the present disclosure; and



FIG. 4 is a structural diagram of an XOR circuit consisting of cascaded and parallel basic units according to the present disclosure.





DESCRIPTION OF EMBODIMENTS

The technical solutions in the embodiments of the present disclosure will be clearly and completely described below with reference to the drawings in the embodiments of the present disclosure. The described embodiments are only some of the possible embodiments of the present disclosure, but not all of them. They are intended to provide a basic understanding of the present disclosure, and are not intended to confirm the key or decisive elements of the present disclosure or limit the scope to be protected. It is easy to understand that, according to the technical solutions of the present disclosure, a general technical personnel in this filed can propose other alternative implementations without changing the essential spirit of the present disclosure. Therefore, the following detailed description and drawings are only examples of the technical solutions of the present disclosure, and should not be regarded as the whole solutions of the present disclosure or as a limitation of the technical solutions of the present disclosure.


The present disclosure relates to a method, a unit and circuits for implementing Boolean logic based on computing-in-memory transistors, which implements the Boolean logic operations by using the characteristics and the read-write mode of the computing-in-memory transistors. The basic unit of the present disclosure consists of a pull resistance and a computing-in-memory transistor whose threshold voltage can be controlled by the external physical field; the threshold voltage and gate voltage of the computing-in-memory transistor represent inputs A and B respectively, A and B are serial inputs. The pull resistor in the basic unit is connected in series with the computing-in-memory transistor, and the gate of the transistor is independent. The basic units can implement sixteen kinds of basic Boolean logic operations through different circuit structures and configuration schemes of port voltage: one basic unit described above can implement ten kinds of basic Boolean logics: 1, 0, A, B, Ā, B, AB, A+B, custom-character and custom-character, and modulating the threshold voltage of the computing-in-memory transistor can change the AND/OR logic relationship of A and B, the configuration scheme of the port voltages of the basic unit determines whether it has the NOT-gate function; four kinds of logic operations can be implemented through the cascade of two basic units described above, and the cascade mode is that the output port of the previous-stage basic unit is connected with the gate of the next-stage basic unit, this circuit structure can implement four logic operations of A+B, Ā+B, AB and ĀB; two logic operations of XNOR (AB+custom-character) and XOR (ĀB+AB) can be implemented through the combination of the cascade circuit.


As shown in FIG. 1, an in-memory computing basic unit of the present disclosure consists of a pull resistor and a computing-in-memory transistor; the threshold voltage Vt of the computing-in-memory transistor can be controlled by an external physical field, and logic information can be stored by adjusting the input of the threshold voltage. The pull resistor is connected in series with the transistor, and the gate of the transistor is independent. The drain of the computing-in-memory transistor is connected with one end of the pull resistor, and the drain voltage Vt is used as the logic output of the basic unit; the other end of the pull resistor is connected to the port T1, and the source of the computing-in-memory transistor is connected to the port T2. This embodiment adopts ferroelectric-based computing-in-memory transistor.


The threshold voltage Vt of the ferroelectric-based computing-in-memory transistor represents the input A (Vt can be modulated between Vt+, Vt0 and Vt−); the gate voltage Vin represents the input B (Vin can be modulated between Vin+ and Vin−). A and B are serial inputs, and modulating the threshold voltage Vt of the transistor can implement the logic operation of AND/OR between A and B; In this embodiment, the threshold voltage of the ferroelectric-based computing-in-memory transistor is firstly modulated to realize the input of the value A, and then the gate voltage is applied to realize the input of the value B. Different configuration schemes of port voltages can decide whether to implement the NOT-gate function.


The threshold voltage Vt and the gate voltage Vin satisfy the following relationship:






V
t+
>V
in+
>V
t0
>V
in−
>V
t−


where the gate voltage Vin is modulated between Vin+ and Vin−, and the threshold voltage Vt is modulated between Vt+, Vt0 and Vt−; Vt0 is the threshold voltage before applying the pulse of programing or erasing. When the gate voltage Vin is greater than the threshold voltage Vt, the transistor is turned on (the logic output is 1); when the gate voltage Vin is less than the threshold voltage Vt, the transistor is turned off (the logic output is 0).


The present disclosure relates to a method for implementing logic operations based on a single in-memory computing basic unit, which implements ten kinds of Boolean logics through the voltage configuration of the in-memory computing basic unit (according to Table 1), including: 1custom-character 0custom-character Acustom-character Bcustom-character Ācustom-characterBcustom-character ABcustom-character A+Bcustom-charactercustom-charactercustom-charactercustom-character.


a) When the port T1 is grounded and the voltage of the port T2 is Vdd, the threshold voltage of the ferroelectric-based computing-in-memory transistor is Vt0, the logic operation of 0 or 1 is complemented by modulating the gate voltage: when an applied gate voltage is Vin+, which is greater than the threshold voltage Vt0, the output is 1; when the applied gate voltage is Vin−, which is less than the threshold voltage Vt0, the output is 0;


b) When the output is irrelated to B, the gate voltage of the ferroelectric-based computing-in-memory transistor is Vin+ and the threshold voltage is Vt+/Vt−, the logic operation of A is implemented, the logic value of A is related with the modulation of the threshold voltage: when the threshold voltage is Vt+, which is greater than the gate voltage Vin+, the logic value of A is 0; when the threshold voltage is Vt−, which is less than the gate voltage Vin+, the logic value of A is 1; the logic operation of Ā is implemented by adjusting the port voltage: when the port T2 is grounded and the voltage of the port T1 is Vdd, the NOT gate function can be achieved, and the output of Boolean logic is Ā;


c) When the output is irrelated to A, the threshold voltage of the ferroelectric-based computing-in-memory transistor is Vt0, and the gate voltage is Vin+/Vin−, the logic operation of B is implemented, the logic value of B is related with the modulation of the gate voltage: when the gate voltage is Vin+, which is greater than the threshold voltage Vt0, the logic value of B is 1; when the gate voltage is Vin−, which is less than the threshold voltage Vt0, the logic value of B is 0; the logic operation of B is implemented by adjusting the port voltage: when the port T2 is grounded and the voltage of the port T1 is Vdd, the NOT gate function can be achieved, the output of Boolean logic is 173;


d) When the output is related to both A and B, the applied gate voltage is Vin+/Vin− (i.e. the logic value of B is 1/0):


d1) When the threshold voltage is V+/Vt0 (i.e. the logic value of A is 1/0), two logic operations of AB, AB are implemented by adjusting the port voltage: when the port T1 is grounded and the voltage of the port T2 is Vdd, the output of Boolean logic is AB; when the port T2 is grounded and the voltage of the port T1 is Vdd, the NOT gate function can be achieved, the output of Boolean logic is custom-character;


d2) When the threshold voltage is Vt0/Vt− (i.e. the logic value of A is 1/0), two logic operations of custom-character, A+B can be implemented by adjusting the port voltage: when the port T1 is grounded and the voltage of the port T2 is Vdd, the output of Boolean logic is A+B; when the port T2 is grounded and the voltage of the port T1 is Vdd, the NOT gate function can be achieved, the output of Boolean logic is custom-character.









TABLE 1







Configuration schemes of ten Boolean logic operations with


adjustable port voltage, gate voltage and threshold voltage









Port voltage, Gate voltage, Threshold voltage












T1
T2
Vin
Vt
















Boolean
0
GND
Vdd
Vin−
Vt0


logics
1
GND
Vdd
Vin+
Vt0



A
GND
Vdd
Vin+
Vt+/Vt− (0/1)



B
GND
Vdd
Vin+/Vin− (1/0)
Vt0



Ā
Vdd
GND
Vin+
Vt+/Vt− (0/1)




B

Vdd
GND
Vin+/Vin− (1/0)
Vt0



AB
GND
Vdd
Vin+/Vin− (1/0)
Vt+/Vt0 (0/1)



A + B
GND
Vdd
Vin+/Vin− (1/0)
Vt0/Vt− (0/1)




custom-character

Vdd
GND
Vin+/Vin− (1/0)
Vt+/Vt0 (0/1)




custom-character

Vdd
GND
Vin+/Vin− (1/0)
Vt0/Vt− (0/1)









Taking the implementation of the logic output custom-character as an example, specifically, according to the value of the input A, the threshold voltage Vt of the ferroelectric-based computing-in-memory transistor is set to Vt0 or Vt− (i.e. the logic value of A is 0 or 1). According to the value of the input B, the gate voltage is set to Vin+ or Vin− (i.e. logic value of B is 1 or 0). Table 2 shows the Karnaugh map of the logical functions between A and B, and it can be deduced that the logic output is A+B. On this basis, the logic operation of custom-character can be implemented by adjusting the port voltage: when the port T2 is grounded and the voltage of the port T1 is Vdd, the NOT gate function can be achieved, and the logic output is custom-character.









TABLE 2







Karnaugh map of logical functions between A and B










B













0
1



A
(Vin−)
(Vin+)







0
0
1



(Vt0)
(Vt0 > Vin−)
(Vt0 < Vin+)



1
1
1



(Vt−)
(Vt− < Vin−)
(Vt− < Vin+)










As shown in FIG. 2, the logic circuit of the present disclosure consists of two in-memory computing basic units in cascade, which can implement more logic operations; the output port of the upper-stage basic unit is connected to the gate of the lower-stage basic unit. The threshold voltage Vt1 of the upper-stage ferroelectric-based computing-in-memory transistor is Vt0, and the gate voltage Vii is a logic input B. The gate voltage Vin2 of the lower-stage ferroelectric-based computing-in-memory transistor is the output voltage Vout1 of the upper-stage basic unit; the threshold voltage Vt2 of the lower-stage ferroelectric-based computing-in-memory transistor is a logic input A, and the drain voltage Vout2 is taken as the output of the logic circuit. One end of the upper-stage pull resistor, which does not output Vout1, is a port T1, and the source of the upper-stage computing-in-memory transistor is connected to the port T2; one end of the lower-stage pull resistor, which does not output Vout2, is a port T3, and the source of the lower-stage computing-in-memory transistor is connected to the port T4.


When the voltage of port T1 is Vdd, and the port T2 is grounded, the upper-stage basic unit has the NOT gate function.


The present disclosure relates to a method for implementing Boolean logic operation based on two cascaded in-memory computing basic units. The logic output is related to both A and B, and four Boolean logic operations are implemented according to Table 3.


The voltage of port T1 is Vdd, the port T2 is grounded, and the gate voltage Vin1 of the upper-stage computing-in-memory transistor is Vin+/Vin−, an upper-stage basic unit has the NOT gate function at this time, and its output Vout1 is B; by modulating the threshold voltage of the lower-stage computing-in-memory transistor, logic operations of AB, A+B are implemented; the configuration scheme of the port voltages of the lower-stage basic unit (i.e. T3, T4) determines whether to perform the NOT operation on the logic operations of A+B:


e) When the port T3 is grounded, the voltage of port T4 is Vdd, and the threshold voltage Vt2 of the lower-stage computing-in-memory transistor is Vt+/Vt0, the logic operation of AB can be implemented;


f) When the port T3 is grounded, the voltage of port T4 is Vdd, and the threshold voltage Vt2 of the lower-stage computing-in-memory transistor is Vt0/Vt−, the logic operation of A+173 can be implemented;


g) When the voltage of port T3 is Vdd, the port T4 is grounded, and the threshold voltage Vt2 of the lower-stage computing-in-memory transistor is Vt+/Vt0, the logic operation of Ā+B can be implemented;


h) When the voltage of port T3 is Vdd, the port T4 is grounded, and the threshold voltage Vt2 of the lower-stage computing-in-memory transistor is Vt0/Vt−, the logic operation of ĀB can be implemented.









TABLE 3







Configuration schemes for implementing four kinds of


Boolean logics through the cascade of two basic units









Boolean logics












A + B
Ā + B
AB
ĀB
















Port voltage,
T1
Vdd
Vdd
Vdd
Vdd


Gate voltage,
T2
GND
GND
GND
GND


Threshold voltage
T3
GND
Vdd
GND
Vdd



T4
Vdd
GND
Vdd
GND



Vin1
Vin+/Vin−
Vin+/Vin−
Vin+/Vin−
Vin+/Vin−



Vin2
Vout1
Vout1
Vout1
Vout1



Vt1
Vt0
Vt0
Vt0
Vt0



Vt2
Vt0/Vt−
Vt+/Vt0
Vt+/Vt0
Vt0/Vt−









Taking the implementation of the logic output AB as an example, specifically, a voltage Vdd is applied to port T1 and port T4 respectively, the port T2 and port T3 are grounded; the gate voltage Vin1 of the upper-stage ferroelectric-based computing-in-memory transistor is set to Vin+ or Vin−, when the threshold voltage Vt1 is modulated to Vt0, the output Vout1 of the upper-stage basic unit is 11; when the threshold voltage Vt2 of the lower-stage basic unit is modulated to Vt+ or Vt0, the AND gate function is implemented, and the output of logic circuit is AB.


As shown in FIG. 3, the present disclosure provides an XNOR circuit consisting of three basic units in cascade and parallel connection. The drain of the first-stage computing-in-memory transistor is connected with the gate of the second-stage basic unit, so that the first-stage basic unit is cascaded with the second-stage basic unit; the second-stage basic unit and the third-stage basic unit share a pull resistor, the drain of the second-stage computing-in-memory transistor is connected with the drain of the third-stage computing-in-memory transistor, and the source of the second-stage computing-in-memory transistor is connected with the source of the third-stage computing-in-memory transistor, so that the second-stage basic unit and the third-stage basic unit are connected in parallel. The gate of the first-stage computing-in-memory transistor and the gate of the third-stage computing-in-memory transistor are input ports of the in-memory computing logic circuit; the drain voltage of the third-stage computing-in-memory transistor is an output of the in-memory computing logic circuit. The threshold voltage of the first-stage computing-in-memory transistor and the threshold voltage of the third-stage computing-in-memory transistor correspond to the same logic value, which are denoted by A; the gate voltage of the first-stage computing-in-memory transistor and the gate voltage of the third-stage computing-in-memory transistor correspond to the same logic value, which are denoted by B.


For the ferroelectric-based computing-in-memory transistor of the first-stage basic unit, the gate voltage is set to Vin+/Vin−, and the threshold voltage is set to Vt0/Vt−, so that the logic gate 1 is A+B.


When the source of the first-stage basic unit is grounded and the port voltage of the first-stage pull resistor is Vdd, the NOR operation (custom-character) can be implemented. Seeing Table 1 for specific operating conditions.


The output voltage of the ferroelectric-based computing-in-memory transistor of the first-stage basic unit is the gate input of the second-stage basic unit; the threshold voltage of the ferroelectric-based computing-in-memory transistor of the second-stage basic unit is set to Vt0, which implements the function of the input transmission, that is, the logic gate 2 is custom-character.


When the threshold voltage of the ferroelectric-based computing-in-memory transistor of the third-stage basic unit is set to Vt+/Vt0, the logic gate 3 implements the logic operation of AB.


The second-stage basic unit is connected in parallel with the third-stage basic unit, this parallel structure can implement OR logic operation of the logic gate 2 and logic gate 3.


Therefore, the whole circuit structure implements the XNOR logic operation, and the logic expression is: custom-character+AB=custom-character+AB.


As shown in FIG. 4, the present disclosure provides an XOR circuit based on three basic units connected in cascade and parallel. The first-stage basic unit is cascaded with the second-stage basic unit, and the second-stage basic unit is connected in parallel with the third-stage basic unit. The gate of the first-stage ferroelectric-based computing-in-memory transistor and the gate of the third-stage ferroelectric-based computing-in-memory transistor are taken as input ports; the drain voltage of the third-stage computing-in-memory transistor is the output of the in-memory computing logic circuit. The threshold voltage of the first-stage computing-in-memory transistor and the threshold voltage of the third-stage computing-in-memory transistor correspond to the same logic value, which are denoted by A; the gate voltage of the first-stage computing-in-memory transistor and the gate voltage of the third-stage computing-in-memory transistor correspond to the same logic value, which are denoted by B.


For the ferroelectric-based computing-in-memory transistor of the first-stage basic unit, the gate voltage is set to Vin+/Vin−, and the threshold voltage is set to Vt0/Vt−, so that the logic gate 1 is A+B. When the source of the first-stage basic unit is grounded and the port voltage of the first-stage pull resistor is Vdd, the NOR operation (custom-character) can be implemented. Seeing Table 1 for specific operating conditions.


The output voltage of the ferroelectric-based computing-in-memory transistor of the first-stage basic unit is the gate input of the second-stage basic unit; the threshold voltage of the ferroelectric-based computing-in-memory transistor of the second-stage basic unit is set to Vt0, which implements the function of the input transmission, that is, the logic gate 2 is custom-character.


When the threshold voltage of the ferroelectric-based computing-in-memory transistor of the third-stage basic unit is set to Vt+/Vt0, the logic gate 3 implements the logic operation of AB.


When the second-stage basic unit is connected in parallel with the third-stage basic unit, the source of the transistor of the parallel structure is grounded and the port voltage connected with the pull resistor is Vdd, the NOR logic operation of the logic gate 2 and logic gate 3 can be implemented.


Therefore, the whole circuit structure implements the XOR logic operation, and its logic expression is custom-character=AB+ĀB.


The present disclosure has been described in detail above. Compared with the logic circuit structure of the conventional CMOS transistors, the present disclosure can implement more logic operations with fewer transistors; compared with the current Von Neumann computing architecture, it can avoid the delay and power consumption caused by data transmission between storage units and process units, which plays an important role in realizing a new computing architecture, improving computing speed and energy efficiency, and increasing the integrated-circuit density.

Claims
  • 1. An in-memory computing logic circuit based on computing-in-memory transistors comprises three basic units, wherein a basic unit comprises a computing-in-memory transistor and a pull resistor, the pull resistor is connected in series with the computing-in-memory transistor, a gate of the computing-in-memory transistor is independent, and one end of the pull resistor is connected with a drain of the computing-in-memory transistor; wherein a drain of a first-stage computing-in-memory transistor is connected with a gate of a second-stage basic unit, so that the first-stage basic unit is cascaded with the second-stage basic unit, the second-stage basic unit and a third-stage basic unit share a pull resistor, a drain of a second-stage computing-in-memory transistor is connected with a drain of a third-stage computing-in-memory transistor, and a source of the second-stage computing-in-memory transistor is connected with a source of the third-stage computing-in-memory transistor, so that the second-stage basic unit and the third-stage basic unit are connected in parallel; a gate of the first-stage computing-in-memory transistor and a gate of the third-stage computing-in-memory transistor are input ports of the in-memory computing logic circuit; and the drain voltage of the third-stage computing-in-memory transistor is an output of the in-memory computing logic circuit;wherein the second-stage basic unit and the third-stage basic unit are in parallel structure, a port connected with the pull resistor of the parallel structure and a source of the first-stage computing-in-memory transistor are grounded, a source of the computing-in-memory transistor of the parallel structure and the port connected with the first-stage pull resistor are connected to Vdd; a threshold voltage of the first-stage computing-in-memory transistor is Vt0/Vt−, a threshold voltage of the second-stage computing-in-memory transistor is Vt0, a threshold voltage of the third-stage computing-in-memory transistor is Vt+/Vt0, and the first-stage basic unit implements NOR logic operation; andwherein the in-memory computing logic circuit implements XNOR logic operation of AB+AB; the threshold voltage of the first-stage computing-in-memory transistor and the threshold voltage of the third-stage computing-in-memory transistor correspond to a same logic value denoted by A; and a gate voltage of the first-stage computing-in-memory transistor and a gate voltage of the third-stage computing-in-memory transistor correspond to a same logic value denoted by B.
  • 2. An in-memory computing logic circuit based on computing-in-memory transistors comprising three basic units, wherein the basic unit comprises a computing-in-memory transistor and a pull resistor, the pull resistor is connected in series with the computing-in-memory transistor, and the gate of the computing-in-memory transistor is independent, one end of the pull resistor is connected with the drain of the computing-in-memory transistor; wherein a drain of a first-stage computing-in-memory transistor is connected with the gate of a second-stage basic unit, so that a first-stage basic unit is cascaded with the second-stage basic unit; the second-stage basic unit and a third-stage basic unit share a pull resistor, a drain of the second-stage computing-in-memory transistor is connected with a drain of a third-stage computing-in-memory transistor, and a source of the second-stage computing-in-memory transistor is connected with a source of the third-stage computing-in-memory transistor, so that the second-stage basic unit and the third-stage basic unit are connected in parallel; the gate of the first-stage computing-in-memory transistor and the gate of the third-stage computing-in-memory transistor are input ports of the in-memory computing logic circuit, the drain voltage of the third-stage computing-in-memory transistor is the output of the in-memory computing logic circuit;wherein the second-stage basic unit and the third-stage basic unit are in parallel structure; a source of the computing-in-memory transistor of the parallel structure and a source of the first-stage computing-in-memory transistor are grounded, a port connected with a pull resistor of the parallel structure and a port connected with a first-stage pull resistor are connected to Vdd, a threshold voltage of the first-stage computing-in-memory transistor is Vt0/Vt−, a threshold voltage of the second-stage computing-in-memory transistor is Vt0, a threshold voltage of the third-stage computing-in-memory transistor is Vt+/Vt0, the first-stage basic unit implements NOR logic operation; andwherein the in-memory computing logic circuit implements XOR logic operation of AB+AB; the threshold voltage of the first-stage computing-in-memory transistor and the threshold voltage of the third-stage computing-in-memory transistor correspond to a same logic value denoted by A, a gate voltage of the first-stage computing-in-memory transistor and a gate voltage of the third-stage computing-in-memory transistor correspond to a same logic value denoted by B.
  • 3. The in-memory computing logic circuit according to claim 1, wherein in the basic unit, a threshold voltage (Vt) of the computing-in-memory transistor represents the input A of the basic unit; a gate voltage (Vin) of the computing-in-memory transistor represents the input B of the basic unit, A and B are serial inputs; a drain voltage of the computing-in-memory transistor is an output Vout of the basic unit; an end of the pull resistor that is not connected to the computing-in-memory transistor is a port T1, and the source of the computing-in-memory transistor is a port T2.
  • 4. The in-memory computing logic circuit according to claim 3, wherein in the basic unit, the gate voltage (Vin) and the threshold voltage (Vt) of the computing-in-memory transistor satisfy: Vt+>Vin+>Vt0>Vin−>Vt−where the gate voltage Vin is modulated between Vin+ and Vin−, and the threshold voltage Vt is modulated between Vt+, Vt0 and Vt−.
  • 5. The in-memory computing logic circuit according to claim 4, wherein the basic unit is configured to implement ten kinds of Boolean logics, consisting of: 1, 0, A, B, Ā, B, AB, A+B, , , modulating the threshold voltage of the computing-in-memory transistor is capable of changing the AND/OR logic relationship of A and B, and the configuration scheme of the port voltages of the basic unit determines whether the in-memory computing logic circuit has a NOT gate function.
  • 6. The in-memory computing logic circuit according to claim 5, wherein a method for implementing the Boolean logics of the basic unit including: a) when a port T1 is grounded and a voltage of port T2 is Vdd, the threshold voltage of the computing-in-memory transistor is Vt0, the logic operation of 0 or 1 is complemented by modulating the gate voltage: when an applied gate voltage is Vin+, which is greater than the threshold voltage Vt0, an output is 1, when the applied gate voltage is Vin−, which is less than the threshold voltage Vt0, an output is 0;b) when the output is irrelated to B, the gate voltage of the computing-in-memory transistor is Vin+ and the threshold voltage is Vt+/Vt−, the logic operation of A is implemented, the logic value of A is related with a modulation of the threshold voltage: when the threshold voltage is Vt+, which is greater than the gate voltage the logic value of A is 0, and when the threshold voltage is Vt−, which is less than the gate voltage the logic value of A is 1; the logic operation of A is implemented by adjusting the port voltage: when the port T2 is grounded and the voltage of the port T1 is Vdd, the NOT operation is performed, an output of Boolean logic is A;c) when the output is irrelated to A, the threshold voltage of the computing-in-memory transistor is Vt0, and the gate voltage is Vin+/Vin−, the logic operation of B is implemented, the logic value of B is related with the modulation of the gate voltage: when the gate voltage is which is greater than the threshold voltage Vt0, the logic value of B is 1, and when the gate voltage is Vin−, which is less than the threshold voltage Vt0, the logic value of B is 0; the logic operation of 173 is implemented by adjusting the port voltage: when the port T2 is grounded and the voltage of the port T1 is Vdd, the NOT operation is performed, an output of Boolean logic is 11; andd) when the output logic is related to both A and B, the applied gate voltage is Vin+/Vin−, that is, the logic value of B is 1/0:d1) when the threshold voltage is V+/Vt0, that is, the logic value of A is 1/0, two logic operations of , AB are implemented by adjusting the port voltage to configurate the NOT gate function or not; andd2) when the threshold voltage is Vt0/Vt−, the logic value of A is 1/0, two logic operations of , A+B are implemented by adjusting the port voltage to configurate the NOT gate function or not.
  • 7. The in-memory computing logic circuit according to claim 6, wherein by cascading two basic units, four Boolean logics of A+B, Ā+B, AB, ĀB are implemented, the voltage of port T1 is Vdd, the port T2 is grounded, and a gate voltage (Vin1) of a upper-stage computing-in-memory transistor is Vin+/Vin−, a upper-stage basic unit performs the NOT operation, and its output Vout1 is B; the logic operations of A+B are implemented by modulating a threshold voltage of a lower-stage computing-in-memory transistor; a configuration scheme of port voltages of a lower-stage basic unit determines whether to perform the NOT operation to implement the logic operations of Ā+B, ĀB.
  • 8. The in-memory computing logic circuit according to claim 7, wherein a configuration of the NOT gate function achieved by adjusting the port voltage includes: when port T1 is grounded and the voltage of port T2 is Vdd, the basic unit has no NOT gate function, and when the voltage of port T1 is Vdd and port T2 is grounded, the basic unit has a NOT gate function.
  • 9. The in-memory computing logic circuit according to claim 1, wherein the computing-in-memory transistor is a non-volatile three-terminal memory transistor.
Priority Claims (1)
Number Date Country Kind
202210021493.1 Jan 2022 CN national
CROSS-REFERENCE TO RELATED APPLICATIONS

The present application is a continuation of International Application No. PCT/CN2022/091442, filed on May 7, 2022, which claims priority to Chinese Application No. 202210021493.1, filed on Jan. 10, 2021, the contents of both of which are incorporated herein by reference in their entireties.

Continuations (1)
Number Date Country
Parent PCT/CN2022/091442 May 2022 US
Child 18183908 US