Abstract:
A nonvolatilely reconfigurable logical circuit is built It is a reconfigurable logical circuit based on the CMOS configuration using the spin MOSFET. By changing the transmission characteristic of each transistor in accordance with the magnetization states of Tr 1,  Tr 2,  Tr 5,  and Tr 8  which are spin MOSFETs, it is possible to reconfigure all the two-input symmetric functions AND/OR/XOR/NAND/NOR/XNOR/“1”/“0”. Since it is possible to constitute the logical function by a small number of non-volatile elements, it is possible to reduce the chip area, thereby increasing the speed and reducing the power consumption.

Description:
FIELD OF THE INVENTION  
       [0001]     The present invention relates to logic circuits with reconfigurable functions, and more particularly, to a reconfigurable logic circuit using transistors (hereafter referred to as the “spin transistors”) that contain ferromagnetic bodies and have transfer characteristics depending on the magnetization states of the ferromagnetic bodies.  
       BACKGROUND OF THE INVENTION  
       [0002]     Recently, attention has been drawn to logic circuits that can reconfigure (or reprogram) functions in accordance with user programs. For example, a field programmable logic array (FPGA) that has been developed by the LSI technique is widely used (disclosed by S. Trimberger in Proc. IEEE 81 (1993) pp. 1030-1041, S. Hauck in Proc. IEEE 86 (1998) pp. 615-638, and Toshinori Sueyoshi in “Programmable Logic Devices” IEICE Tech. Report, Vol. 101, No. 632, (2002) pp. 17-24, for example). Conventionally, the FPGA has been used only for test products and limited products. However, since shipment can be made quickly and the functions can be rewritten after shipment, the FPGA is incorporated as the last component into mobile devices such as portable telephone devices that tend to be replaced with newly developed devices in a short time. Also, studies have been made on the FPGA as an information device of novel architecture that reconfigures its hardware for each operation.  
         [0003]     There are several types of configurations for the FPGA. Among them, the Look Up Table (LUT) method using SRAMs is most widely used. In this configuration, small-sized logic blocks that are formed with LUTs for achieving desired functions are arranged in a matrix fashion, and the blocks are connected to one another with lines that can be changed by a switch (a pass transistor, for example) (see  FIG. 56A ).  
         [0004]     A desired logic circuit is realized by rewriting the values to be written in the register of the LUT and the switch for the lines. Each logic block includes a flip-flop (FF) for operations in synchronization with the LUT (see  FIG. 56B ). The LUT includes a decoder circuit for matching each input pattern with an address, and memories (SRAM cells) for storing a value in the register of each address.  FIG. 56C  shows an example of the LUT circuit that can achieve symmetric Boolean functions.  
         [0005]     A SRAM is a volatile memory, and loses stored information when the power supply is cut off. Therefore, so as to maintain data, a non-volatile memory (a flash memory, for example) is prepared externally, and the information stored in the non-volatile memory is loaded every time the power supply is resumed.  
         [0006]     Recently, studies have been made on a circuit that has a neuron MOS (hereinafter referred to as the “νMOS ”) in the logic circuit blocks. This circuit has been developed as a reconfigurable logic circuit based on principles entirely different from those of the FPGA according to the LUT method (disclosed by T. Shibata and T. Ohmi in IEEE Trans. Electron Dev. ED-39 (1992) pp. 1444-1455 and IEEE Trans. Electron Dev. ED-40 (1993) pp. 570-576, and by Hiroshi Sawada, Kazuo Aoyama, Akira Nagoya, and Kazuo Nakajima in “Consideration for a Reconfigurable Logic Device using Neuron MOS Transistors”, IEICE Tech. Report, Vol. 99, No. 481, (1999) pp. 41-48). Using νMOS, symmetric functions can be efficiently realized. Although the functions are limited compared with the functions according to the LUT method, attention is being drawn to this method, as a large number of symmetric functions appear in the stage of logic design.  
         [0007]      FIG. 56  illustrates an example structure of a logic circuit that can achieve symmetric Boolean functions. This logic circuit includes three pre-inverters  201 ,  203 , and  205  that employ νMOS structures, and a main inverter  207  that also employs the νMOS structure. In the pre-inverters that serve as input units, digital values are input via equal capacitances. The inverters  201 ,  203 ,  205 , and  207  have different logic threshold values from one another. In the drawing, V k /n indicates that the number of inputs to the inverter is n, and the logic threshold value is V k /n with respect to the logic level “1”.  
         [0008]     Also, inputs are denoted by A and B, and the input of each control signal is denoted by C k  (k=0, 1, 2). The input to the main inverter  207  is controlled with C k , thereby achieving a desired symmetric function. In the operation of this circuit, if C k  is “1”, the output is “0” only when the number of “1”s in the input is k. In other cases, the output is “1”. For example, if C 0  and C 2  are “1” and C 1  is “0”, the output is “0” when the number of “1”s is 0 (A=B=“0”) and when the number of “1”s is 2 (A=B=“1”), but the output is “1” when the number of “1”s is 1 (A or B=“1”). Thus, a XOR logic circuit is obtained.  
       DISCLOSURE OF THE INVENTION  
       [0009]     The above described logic blocks of the FPGA have the following problems. More specifically, the logic blocks that utilizes the LUT method and νMOS have problems in the volatility of logic functions. Also, problems are caused with respect to the number of devices (the occupied area).  
         [0010]     First, the problems with the logic blocks according to the LUT method are described. In accordance with the LUT method, the circuit does not have capacity to rewrite to reconfigure logics, but refers to the values stored in the registers. SRAMs are employed for LUTs, the problems are caused by the volatility of the SRAMs. When the power supply is cut off, the contents of the LUTs, or the logic functions, are lost. In a case where the circuit is incorporated into a product, it is necessary to externally provide a non-volatile memory with an extremely large capacity for maintaining data. As a result, the area of the entire chip becomes larger, and the power consumption increases as a longer start-up time is required when power supply is resumed.  
         [0011]     Also, in a case where a large number of devices (forty transistors are required in the circuit of  FIG. 56C , for example) are employed to achieve symmetric Boolean functions with decoders and SRAM cells including transistors in the logic blocks, the area occupied by the logic blocks becomes larger.  
         [0012]     Next, the problems with the logic blocks using νMOS are described. In such logic blocks, the operation of the circuit can be rewritten with a control signal, unlike in the logic blocks according to the LUT method. For two inputs, the number of MOSFETs is 8, and the number of capacitors is 14, which are almost half of the number of devices required according to the LUT method. However, the area occupied by the capacitors for the νMOS structure is not small. Also, to maintain the functions of the circuit, a control signals needs to be constantly supplied during the use of the circuit. It is also necessary to prepare a control signal of a size different from the supply voltage and to employ a control circuit (a controller) for controlling the control signal. Since functions cannot be stored in a non-volatile manner, there is a problem in the maintenance of the non-volatility for logic functions, as with the LUT method.  
         [0013]     It is therefore an object of the present invention to provide a non-volatilely reconfigurable circuit with a small number of devices. Such a circuit should be small in size and have low power consumption.  
         [0014]     In a circuit in accordance with the present invention, a transistor (hereinafter referred to as “spin transistor”) with transfer characteristics that depend on the spin direction of the conduction carriers or the magnetization states of the ferromagnetic bodies in the transistor is employed, and the input of the transistor is formed with a νMOS transistor. The operating point of the circuit is adjusted to rewrite functions by varying the driving force of the transistor through the control of the magnetization state of the spin transistor. This circuit is based on a novel technique of rewriting functions entirely in terns of hardware, as the characteristics of the device are changed. This circuit differs from a logic block only with a νMOS in that logic functions can be maintained in a non-volatile manner and a control signal is not required for switching logic functions. Furthermore, the functions of the circuit can be stored in a non-volatile manner, by virtue of the ferromagnetic bodies in the spin transistor. Using such a logic circuit of the present invention, the above described problems in FPGA can be eliminated.  
         [0015]     The non-volatility is now described. The functions of a circuit are determined by the magnetization states of the ferromagnetic bodies included in the spin transistor. Accordingly, even when the power supply is cut off, the logic functions are maintained in a non-volatile manner, as the magnetization states do not change. In view of this, the portion corresponding to a logic block unit that is necessary in the conventional FPGA becomes unnecessary in an external non-volatile memory. This is advantageous in reducing the chip size. Furthermore, the time for loading logic functions is not required. Accordingly, the time required for start-up can also be shortened.  
         [0016]     In a circuit in accordance with the present invention, the logic block includes nine to eleven MOSFETs and two capacitors. Accordingly, the number of devices decreases to a third of the number of device in the LUT structure or even less than that. Compared with a logic block using only a νMOS, the number of devices is halved. Since the external non-volatile memories are employed only for the line unit, the total number of devices is much smaller than that in a conventional circuit.  
         [0017]     A spin transistor can be employed as a switch for selecting the line that connects logic blocks. Especially, a spin MOSFET that is described later is employed as the switch, so that the mutual lines between logic blocks can also be stored in a non-volatile manner. In such a case, a non-volatile memory becomes unnecessary for the line unit. The spin MOSFET as the switch may be a depletion MOSFET or an enhancement MOSFET. Further, a transfer gate that is formed with p-channel and n-channel spin MOSFETs can also be employed.  
         [0018]     One aspect of the present invention can provide a circuit that includes a spin transistor having transfer characteristics depending on the spin direction of conduction carriers. In this circuit, the spin direction of the conduction carriers is changed so as to vary the transfer characteristics of the spin transistor, and an operating point is changed based on the transfer characteristics, thereby reconfiguring a function.  
         [0019]     An A-D converter is connected to an output terminal of the circuit, so that the analog operating point at the output terminal is converted to a digital logic level. Also, the A-D converter includes a spin transistor, so that functions can be reconfigured by setting a threshold value depending on the magnetization state of the spin transistor.  
         [0020]     Instead of the spin transistor, another spin transistor with variable transfer characteristics can be employed in the circuit. In such a case, the operating point is also moved by changing the transfer characteristics of the transistor, thereby reconfiguring functions. Here, the “variable transfer characteristics” are variable solid-state properties other than the biases such as V ds  and V gs , and the transfer characteristics of a transistor can be varied in a non-volatile manner. Accordingly, the output characteristics vary, even when biases are applied under the same conditions. Such a transistor can be realized with a ferromagnetic material or a ferroelectric material, or can be formed by a floating gate technique (by which carriers are injected to a floating gate so as to change a threshold value). The above described spin transistor is one of the transistors with variable transfer characteristics. 
     
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0021]      FIGS. 1A and 1B  are block diagrams each illustrating the fundamental structure of a circuit in accordance with the present invention;  
         [0022]      FIG. 2A  illustrates an example structure of a MOSFET-type spin transistor (hereinafter referred to as “spin MOSFET”);  
         [0023]      FIG. 2B  illustrates an example structure of a νMOS (B);  
         [0024]      FIG. 3A  shows the idealized static characteristics of a spin MOSFET;  
         [0025]      FIG. 3B  shows the gate voltage dependence of the drain current;  
         [0026]      FIG. 4  shows the static characteristics of the νMOS transistor of  FIG. 2B , with the inputs A and B being digital values;  
         [0027]      FIGS. 5A, 5B , and  5 C show AND/OR reconfigurable logic circuits with E/E, E/D, and CMOS inverter structures;  
         [0028]      FIG. 6  illustrates an example structure of a NAND/NOR reconfigurable logic circuit, with a CMOS inverter for an input;  
         [0029]      FIG. 7  illustrates an AND/OR circuit with a n-channel spin MOSFET of a depletion type;  
         [0030]      FIG. 8  shows the operating curve of an AND/OR circuit with the n-channel spin MOSFET of a depletion type;  
         [0031]      FIGS. 9A and 9B  are truth tables of the AND/OR circuit with the n-channel spin MOSFET of a depletion type;  
         [0032]      FIG. 10  illustrates a circuit that has a XNOR function added to the circuit illustrated in  FIG. 7 ;  
         [0033]      FIG. 11  illustrates a first operation of the circuit illustrated in  FIG. 10 ;  
         [0034]      FIG. 12A  shows the operating curve of the AND/OR function;  
         [0035]      FIG. 12B  shows a truth table of the OR circuit;  
         [0036]      FIG. 12C  shows a truth table of the AND circuit;  
         [0037]      FIG. 13A  shows the operating curve of the XNOR function;  
         [0038]      FIG. 13B  shows a truth table of the XNOR circuit;  
         [0039]      FIG. 14A  illustrates a third operation of the circuit illustrated in  FIG. 10 ;  
         [0040]      FIG. 14  is a truth table of the operation;  
         [0041]      FIG. 15  illustrates the structure of a circuit that can reconfigure all the symmetric Boolean functions;  
         [0042]      FIG. 16A  illustrates the circuit structure of a threshold value variable inverter;  
         [0043]      FIG. 16B  illustrates an example operation of the inverter;  
         [0044]      FIG. 17  has the threshold value of a conventional CMOS inverter as the function of the ratio of β of a pMOS to β of an nMOS;  
         [0045]      FIG. 18  illustrates an example structure of an AND/OR circuit;  
         [0046]      FIG. 19A  shows a first operation of the circuit illustrated in  FIG. 18 ;  
         [0047]      FIG. 19B  shows a truth table of the operation;  
         [0048]      FIG. 20  shows a second operation of the circuit illustrated in  FIG. 18 ;  
         [0049]      FIG. 20B  shows a truth table of the operation;  
         [0050]      FIG. 21  shows another example structure of an AND/OR circuit;  
         [0051]      FIG. 22A  shows the characteristics of the variable threshold value inverter of  FIG. 21 ;  
         [0052]      FIG. 22B  shows a truth table of the inverter;  
         [0053]      FIG. 23A  corresponds to  FIG. 22A , showing the operation when the threshold value is varied;  
         [0054]      FIG. 23B  corresponds to  FIG. 22B , showing truth table;  
         [0055]      FIG. 24  illustrates an example structure of an AND/OR/XNOR circuit;  
         [0056]      FIG. 25  shows the operating curve of Vin_n of the circuit illustrated in  FIG. 24 ;  
         [0057]      FIG. 26A  shows a first operation of the circuit illustrated in  FIG. 24 ;  
         [0058]      FIG. 26B  shows a truth table of the operation;  
         [0059]      FIG. 27A  shows a second operation of the circuit illustrated in  FIG. 24 ;  
         [0060]      FIG. 27B  shows a truth table of the operation;  
         [0061]      FIG. 28A  shows a third operation of the circuit illustrated in  FIG. 24 ;  
         [0062]      FIG. 28B  shows a truth table of the operation;  
         [0063]      FIG. 29A  shows a fourth operation of the circuit illustrated in  FIG. 24 ;  
         [0064]      FIG. 29B  shows a truth table of the operation;  
         [0065]      FIG. 30  illustrates an example structure of an AND/OR/XOR/XNOR circuit;  
         [0066]      FIG. 31  shows the operating points of Vin_p of the circuit illustrated in  FIG. 30 ;  
         [0067]      FIG. 32A  shows a first operation of the circuit illustrated in  FIG. 30 ;  
         [0068]      FIG. 32B  shows a truth table of the operation;  
         [0069]      FIG. 33A  shows a second operation of the circuit illustrated in  FIG. 30 ;  
         [0070]      FIG. 33B  shows a truth table of the operation;  
         [0071]      FIG. 34A  shows a third operation of the circuit illustrated in  FIG. 30 ;  
         [0072]      FIG. 34B  shows a truth table of the operation;  
         [0073]      FIG. 35A  shows a fourth operation of the circuit illustrated in  FIG. 30 ;  
         [0074]      FIG. 35B  shows a truth table of the operation;  
         [0075]      FIG. 36  illustrates an example structure of a reconfigurable logic circuit with a spin MOSFET;  
         [0076]      FIG. 37  illustrates an example structure of a NAND/NOR circuit;  
         [0077]      FIG. 38  shows the operating points of the circuit illustrated in  FIG. 37 , and the characteristics of the inverter;  
         [0078]      FIG. 39  shows a truth table of the circuit illustrated in  FIG. 37 ;  
         [0079]      FIG. 40  is a circuit diagram of a NAND/NOR/XNOR circuit;  
         [0080]      FIG. 41  shows the operating points of Vin_n of the circuit illustrated in  FIG. 40 ;  
         [0081]      FIG. 42A  shows a first operation of the circuit illustrated in  FIG. 40 ;  
         [0082]      FIG. 42B  shows a truth table of the operation;  
         [0083]      FIG. 43A  shows a second operation of the circuit illustrated in  FIG. 40 ;  
         [0084]      FIG. 43B  shows a truth table of the operation;  
         [0085]      FIG. 44  is a circuit diagram of a NAND/NOR/XNOR/XOR circuit;  
         [0086]      FIG. 45  shows the operating points of Vin_p of the circuit illustrated in  FIG. 44 ;  
         [0087]      FIG. 46A  shows a first operation of the circuit illustrated in  FIG. 44 ;  
         [0088]      FIG. 46B  shows a truth table of the operation;  
         [0089]      FIG. 47A  shows a second operation of the circuit illustrated in  FIG. 44 ;  
         [0090]      FIG. 47B  shows a truth table of the operation;  
         [0091]      FIG. 48  illustrates an example structure of a NAND/NOR circuit (E/E configuration);  
         [0092]      FIG. 49  illustrates the operation of the circuit illustrated in  FIG. 48 ;  
         [0093]      FIG. 50  shows truth tables of the NOR circuit and the NAND circuit shown in  FIG. 48 ;  
         [0094]      FIG. 51A  illustrates an example structure of an NAND/NOR/XNOR circuit;  
         [0095]      FIG. 51B  shows the operating points of Vin_n of the circuit illustrated in  FIG. 51A ;  
         [0096]      FIG. 52A  shows a first operation of the circuit illustrated in  FIG. 51A ;  
         [0097]      FIG. 52B  shows a truth table of the operation shown in  FIG. 52A ;  
         [0098]      FIG. 53A  shows a second operation of the circuit illustrated in  FIG. 51A ;  
         [0099]      FIG. 53B  shows a truth table of the operation shown in  FIG. 53A ;  
         [0100]      FIG. 54A  shows a third operation of the circuit illustrated in  FIG. 51A ;  
         [0101]      FIG. 54B  shows a truth table of the operation shown in  FIG. 54A ;  
         [0102]      FIG. 55  illustrates the structure of a circuit that can reconfigure all the symmetric Boolean functions;  
         [0103]      FIG. 56  illustrates an example structure of a logic circuit with which symmetric Boolean functions can be realized;  
         [0104]      FIG. 57A  shows a circuit in which small-sized logic blocks having LUTs and memory devices that can achieve desired functions are arranged in a matrix fashion, and the blocks are connected with lines that can be changed by a switch (a pass transistor, for example);  
         [0105]      FIG. 57B  shows a circuit that includes a flip-flop (FF) for operating in synchronization with a LUT; and  
         [0106]      FIG. 57C  shows an example of a LUT circuit with which symmetric Boolean functions can be realized. 
     
    
     DESCRIPTION OF THE PREFERRED EMBODIMENTS  
       [0107]     Referring to  FIGS. 1A and 1B , the fundamental structure of a circuit in accordance with the present invention is described. As shown in  FIGS. 1A and 1B , the circuit in accordance with the present invention includes a terminal V m  (hereinafter, “V m ” will be used as the name of the terminal, but will also be used as the potential of the terminal), a circuit group P that charges the terminal V m  with parasitic capacitance and the next stage with input capacitance, a circuit group Q for discharging, and an A-D converter that amplifies the analog voltage V m  to a digital logic level. The voltage V m  is determined by the values of input signals A and B, regardless of the circuit of the next stage.  
         [0108]     As shown in  FIG. 1A , a spin transistor is contained in at least one of the circuit groups P and Q, and the current control capacity can be controlled in accordance with the magnetization state of the spin transistor. Therefore, even if the input signals A and B have the same values, the voltage V m  varies depending on the magnetization state of the spin transistor. The variation of V m  caused by a change in the magnetization sate of the spin transistor is amplified to the digital logic level by the A-D converter having a predetermined logic threshold value, thereby forming a reconfigurable logic circuit. Alternatively, with an A-D converter that can change the logic threshold value using the spin transistor, a reconfigurable logic circuit can be formed.  
         [0109]     The circuit shown in  FIG. 1B  has a 2-input ν-MOS structure with equally weighted inputs. In a symmetric function, the input signals A and B do not need to be distinguished from each other. Accordingly, with the 2-input ν-MOS structure having equally weighted inputs, inputs can be efficiently performed to the circuit groups. If there is a need to distinguish the input signals A and B from each other, the weights on the input capacity should be made different from each other between the input signals A and B.  
         [0110]     The circuit in accordance with the present invention contains ferromagnetic bodies made of a ferromagnetic metal or the like. This circuit is a non-volatile, reconfigurable circuit, and more particularly, is a logic circuit that employs a spin transistor that can control its transfer characteristics in accordance with the spin direction of the conduction carriers or the magnetization states of the ferromagnetic bodies. Using the spin transistor, a symmetric Boolean function can be realized with a small number of components.  
         [0111]     In the following, the spin transistor is described in greater detail. The spin transistor has at least one ferromagnetic body (free layer) with a magnetization direction that can be independently controlled with a magnetic field or the like, and at least one ferromagnetic body (pin layer) with a fixed magnetization direction. In this spin transistor, the relative magnetization state between the free layer and the pin layer can be switched between parallel magnetization and antiparallel magnetization by changing the magnetization direction of the free layer.  
         [0112]     In the spin transistor, output characteristics in accordance with the magnetization state inside can be realized by virtue of the conduction phenomena, such as spin-dependent scattering, a spin-dependent tunneling effect, and a spin filter effect, which depend on the spin direction of the carriers and the magnetization directions of the ferromagnetic bodies. Accordingly, the transfer characteristics of the spin transistor can be controlled in accordance with the relative magnetization direction of the pin layer with respect to the free layer contained in the spin transistor, even when the same biases are applied.  
         [0113]     In the following, an example case where the spin transistor is a MOSFET spin transistor (hereinafter referred to as “spin MOSFET”) is described. Although spin-dependent conduction phenomena are included, the transistor operation is based on the same principles as those of the operation of a conventional MOSFET. Particularly, the output characteristics can be represented by gradual channel approximation.  
         [0114]      FIG. 2A  illustrates an example structure of a spin MOSFET. As shown in  FIG. 2A , the spin MOSFET (A) is formed on a semiconductor (substrate)  1 , and has the same structure as a conventional MOSFET, including the aspect that a gate electrode  7  is formed on a gate insulating film  11 . The spin MOSFET (A) differs from a conventional MOSFET in that a source electrode  3  and a drain electrode  5  are made of a ferromagnetic material. Hereinafter, the source electrode made of a ferromagnetic material will be referred to simply as the ferromagnetic source  3 , and the drain electrode made of a ferromagnetic material will be referred to simply as the ferromagnetic drain  5 . In the drawings, “FM” indicates “ferromagnetic metal”, but the source and drain may be made of some other electric conductive ferromagnetic material.  
         [0115]     The ferromagnetic source  3  serves as a spin injector that injects spin-polarized carriers to a channel formed below the gate in the semiconductor  1 . The ferromagnetic drain  5  serves as a spin analyzer that detects an electric signal representing the direction of the spins injected to the channel. In a case where a ferromagnetic metal (FM) is employed as the ferromagnetic material, the ferromagnetic source  3  and the ferromagnetic drain  5  are formed with the Schottky junctions with the semiconductor (substrate)  1 . A gate voltage is applied to the gate electrode  7 , so that spin-polarized carriers can be injected from the ferromagnetic source  3  to the channel via a Schottky barrier.  
         [0116]     The injected spin-polarized carriers reach the ferromagnetic drain  5  via the channel (for ease of explanation, the Rashba effect caused by the gate field of the spin-polarized carriers injected to the channel is ignored). In a case where parallel magnetization is observed between the source and the drain, the spin-polarized carriers injected to the ferromagnetic drain  5  become a drain current, without adverse influence of spin-dependent scattering. In a case where antiparallel magnetization is observed, on the other hand, the ferromagnetic drain  5  is subjected to the resistance due to spin-dependent scattering. Accordingly, in the spin MOSFET, the current drive force varies depending on the relative magnetization direction between the source and the drain.  
         [0117]      FIGS. 3A and 3B  show idealized static characteristics of a spin MOSFET. With a gate voltage equal to or lower than a threshold value (V gs &lt;V th ), the spin MOSFET is in an OFF state, as in the case of a conventional MOS transistor. This does not change with the magnetization state of the spin MOSFET. When a gate voltage equal to or higher than the threshold value (V gs =V gs1 &lt;V th ) is applied, the spin MOSFET is put into an ON state. However, even when the same gate voltage is applied, the drain current I d  varies depending on the magnetization state of the ferromagnetic bodies included in the spin MOSFET. In the case of parallel magnetization, a high drain current I d↑↑  flows. In the case of antiparallel magnetization, a low drain current I d↑↓  flows. If the drain current of the spin MOSFET can be represented using the same gain coefficient as that of a conventional MOSFET, the gain coefficient is high in the case of parallel magnetization, and the gain coefficient is low in the case of antiparallel magnetization. In the following, relative parameters β representing the gain coefficients of the spin MOSFETs and the MOSFETs are introduced. With the gain coefficients of the spin MOSFETs and the MOSFETs included in the circuit being β G1 , β G2  . . . β GN  (for the spin MOSFET, the gain coefficient in the case of parallel magnetization is set separately from the gain coefficient in the case of antiparallel magnetization), the gain coefficient of the spin MOSFETs and the MOSFETs can be expressed as β G1 =β 1 β G1 , β G2 =β 2 β G1 , β G3 =β 3 β G1  . . . β GN =β N β G1 , using the gain coefficient β G1 . With the coefficients β 1 (=1), β 2 , . . . β N , the magnitude correlation among the gain coefficients of the transistors can be expressed. Although the magnitude correlation among the gain coefficients β 1 , β 2 , . . . β N  is expressed with given numerals, the numeric values β are merely examples of representations of the magnitude correlation, and those numeric values do not limit the scope of the present invention. Also, the magnitude correlation among the gain coefficients β 1 , β 2 , . . . β N  indicates an example of the magnitude correlation among output currents when the same bias is applied to the MOSFET and the spin MOSFET, including a case where the output characteristics of the spin MOSFET cannot be expressed with the output characteristics of the conventional MOSFET.  
         [0118]     Next, a νMOS structure is described in conjunction with  FIG. 2B  and  FIG. 4 . As shown in  FIG. 2B , a MOSFET (B) with a νMOS structure includes a source  13  and a drain  15  that are formed on a semiconductor  11 , a floating gate  21  formed above the semiconductor  11  via a gate insulating film  20 , and two divided gate electrodes  17   a  and  17   b.  As described above, inputs A and B are input to the gates  17   a  and  17   b  of the νMOS structure via the input capacitances of the gate electrode and the floating gate. The inputs can be weighted by varying the magnitudes of the gate electrode and the floating gate. Here, a case where all the input capacitances are equal to one another is described as an example.  
         [0119]     In the 2-input νMOS structure shown in  FIG. 2B , the potential V fg  of the floating gate  21  is represented by the input mean value, which is V fg =(A+B)/2, obtained by coupling of capacitances in a case where the gate capacitance can be ignored. Likewise, in a case of multiple inputs (n inputs (n&gt;2)), it is safe to assume that the mean value of the n inputs is input to the floating gate.  FIG. 4  shows the static characteristics in a case where the inputs A and B are digital values. However, the inputs may be analog values. As shown in  FIG. 4 , in the case of A=B=“0”, the drain current I d  hardly flows. In the case of A=B=“1”, the drain current I d  flows. When either A or B is “1”, the drain current that is equivalent to that obtained by applying a gate voltage half the above described gate voltage is generated. In the symmetric function, the input signals A and B do not need to be distinguished from each other. Accordingly, using the equally-weighted 2-input νMOS structure, input can be efficiently performed to the circuit groups.  
         [0120]     An AND/OR reconfigurable logic circuit can be realized using the inputs of the νMOS structure and an inverter structure having an E/E configuration, an E/D configuration, or a CMOS configuration formed with spin MOSFETS and conventional MOSFETS as the circuit structure of the circuit group P and the circuit group Q.  FIGS. 5A, 5B , and  5 C illustrate AND/OR reconfigurable logic circuits using the inverter structures of the E/E configuration, the E/D configuration, and the CMOS configuration. Hereinafter, each spin MOSFET will be indicated by a transistor symbol with an arrow. In the drawings, spin MOSFETs are used for active loads (Q 2 ) of the inverters of the E/E configuration, the E/D configuration, and the CMOS configuration. However, spin MOSFETs may be used for drivers (Q 1 ). Alternatively, both the active loads (Q 2 ) and the drivers (Q 1 ) may be formed with spin MOSFETs. The input νMOS structure is used for the drivers (Q 1 ) in the E/E configuration and the E/D configuration. In the CMOS configuration, the νMOS structure is realized with a floating gate shared between Q 2  and Q 1 . The inverter in the output stage is used to divide the output of V m  into the logic levels of “1” and “0”. This inverter serves as an A-D converter. The active load Q 2  in each of  FIGS. 5A through 5C  forms the circuit group P, while the driver Q 1  forms the circuit group Q. Further, an extra circuit for controlling the potential of V m  in each of the circuits of  FIGS. 5A through 5C  is added to the circuit group P and the circuit group Q, thereby achieving a complicated, reconfigurable logic circuit.  
         [0121]     As shown in  FIG. 6 , it is also possible to achieve the operation equivalent to that of the νMOS structure by employing CMOS inverters for inputs, instead of the capacitance coupling. In such a case, however, a logic function that is obtained by inverting the logic function of  FIGS. 5A through 5C  is output.  
         [0122]     Next, a reconfigurable logic circuit in accordance with a first embodiment of the present invention is described in conjunction with the accompanying drawings. In the logic circuit in accordance with this embodiment, the driver or the active load of an E/D inverter circuit formed with an enhancement MOSFET and a depletion MOSFET is replaced with a spin MOSFET. To replace the driver, an enhancement spin MOSFET should be employed. To replace the active load, a depletion spin MOSFET should be employed. The input νMOS structure is used for the driver. As for the inverter of the output stage, a CMOS inverter is most preferred in terms of performance, but it is possible to employ an inverter of another type, such as an E/D inverter.  
         [0123]     The load curve in the E/E configuration varies according to the voltage generated in the driver. With the E/D configuration, on the other hand, the load curve with the active load is saturated. Accordingly, a wider logic margin can be allowed.  
         [0124]     1) AND/OR Circuit  
         [0125]     Referring now to  FIGS. 7 through 9 , an AND/OR circuit with a n-channel spin MOSFET of a depletion type is described. In  FIG. 7 , the n-channel spin MOSFET of a depletion type is denoted by Tr 1 , and the parameter β n1  can be 1 or 10 in the case of antiparallel magnetization or parallel magnetization. Since the source and the gate of Tr 1  are short-circuited, the load curve is saturated with respect to V m  as indicated by the solid line in  FIG. 8 . A νMOS structure is used for the input of a transistor Tr 2 , and its operation can be as indicated by the broken line in  FIG. 8 .  FIGS. 9A and 9B  are the truth tables of this circuit. Also, the details of the operation are shown in Table 1.  
                                                                                               TABLE 1                                       V m                      A   0   0   1   V out             β n1     B   0   1   1   (in order of Vm)   function                    1       V O (“1”)   V P (“0”)   V Q (“0”)   “0”   “1”   “1”   OR       10       V O (“1”)   V R (“1”)   V S (“0”)   “0”   “0”   “1”   AND                  
 
         [0126]     In a case where the circuit functions as an OR circuit, the spin MOSFET is put into the antiparalell magnetization configuration, and the parameter β n1  is set at 1, with which the current driving capacity is small. Here, in the case of A=B=“0”, the operating point V m  is V 0  according to  FIG. 8 , and the output V out  is inverted and amplified to “0”. In the case of A or B=“1” (hereinafter, (A, B)=(“1”, “0”) or (A, B)=(“0”, “1”) will be expressed simply as A or B=“1”), the operating point V m  is V P , and accordingly, the output V out  is “1”. In the case of A=B=“1”, the operating point V m  is V Q , and accordingly, the output V out  is “1”.  
         [0127]     In a case where the circuit functions as an AND circuit, the spin MOSFET is put into the paralell magnetization configuration, and the parameter β n1  is set at 10, with which the current driving capacity is large. Here, in the case of A=B=“0”, the operating point V m  is V 0 , and accordingly, the output V out  is “0”. In the case of A or B=“1”, the operating point V m  is V R , and accordingly, the output V out  is “0”. In the case of A=B=“1”, the operating point V m  is V S , and accordingly, the output V out  is “1”.  
         [0128]     2) AND/OR/XNOR Circuit  
         [0129]      FIG. 10  illustrates a circuit in which an XNOR function is added to the circuit shown in  FIG. 7 . The XNOR function is added as a Q group that is a circuit in which the input/output correlation is the same as that in an AND circuit, in the case of A or B=“0” and A=B=“1”, and V out  is “1” (V m  is “0”) in the case of A=B=“0”. In  FIG. 10 , the transistors Tr 3  through Tr 5  are the added part. The transistors Tr 3  and Tr 4  that forms an inverter serve as a level shifter. As shown in  FIG. 11 , the transistor Tr 5  is energized (is put into an ON state) only when A and B are “0”. The transistor Tr 5  is a spin MOSFET, but the variation of β n5  according to the magnetization state is designed to be greater than the variation of β n1  of the transistor  1 . For example, β n5  is 0.5 or 50 in the case of antiparallel magnetization or parallel magnetization. In the case of parallel magnetization, β n5  is 50, with which a sufficiently high current (I d     —     high ) flows. In the case of antiparallel magnetization, β n5  is 0.5, with which the current value (I d     —     low ) is very small.  FIGS. 12A through 14B  show the operating point V m  with respect to each parameter β. The sum of currents flowing through the transistors Tr 2  and Tr 5  is indicated by solid lines, and the current I d     —     low  can be ignored. The circuit functional correlation between β n1  and β n5  is shown in Table 2.  
                                                                                                       TABLE 2                                       V m                          A   0   0   1   V out             β n1     β n5     B   0   1   1   (in order of Vm)   function                    1   0.5       V O (“1”)   V P (“0”)   V Q (“0”)   “0”   “1”   “1”   OR       10   0.5       V O (“1”)   V R (“1”)   V S (“0”)   “0”   “0”   “1”   AND       1   50       V T (“0”)   V R (“1”)   V S (“0”)   “1”   “0”   “1”   XNOR       10   50       V U (“0”)   V R (“0”)   V V (“0”)   “1”   “1”   “1”   all“1”                    
         [0130]     Referring first to  FIGS. 12A through 12C , the AND/OR function is described. The transistor Tr 5  is put into an antiparalell magnetization configuration, and the current driving capacity is made very small (β n5 =0.5). By doing so, the flowing current I d     —     low  can be ignored, and the corresponding portion is regarded as open. As a result, the circuit has the same structure as that of the circuit shown in  FIG. 7 , and the AND( FIG. 12C )/OR( FIG. 12B ) function can be maintained.  
         [0131]     Next, the XNOR function is described in conjunction with  FIGS. 13A and 13B . The transistor Tr 5  is put into a paralell magnetization configuration, and the current driving capacity is made high (β n5 =50). The transistor Tr 2  is also put into a paralell magnetization configuration (β n1 =10) as in the case of AND. In the case of A=B=“1” or A or B=“1”, the transistor Tr 5  is regarded as open, and accordingly, functions as an AND circuit. In the case of A=B=“0”, V m  is discharged by the current I d     —     high  of the transistor Tr 5 , to obtain V m =V T &lt;V inv  and V out =“1”. Further, when the transistor Tr 1  is put into an antiparalell magnetization configuration (β n1 =1) and the transistor Tr 5  is put into a paralell magnetization configuration (β n5 =50), V out  becomes “1” for all the inputs (see  FIGS. 14A and 14B ). This circuit is characterized in that the operating point V m  is always close to 0V or V dd , and the logic margin is wide.  
         [0132]     3) AND/OR/XNOR/NAND/NOR/XOR Functions  
         [0133]     In a circuit shown in  FIG. 15 , another stage of an inverter circuit is added to the output. The details of the operation of this circuit are shown in Table 3. Basically, this circuit is the same as the circuit illustrated in  FIG. 10 , but all the symmetric Boolean functions can be realized with V out  and its inverted output.  
                                                                                                                           TABLE 3                                       V out     {overscore (V out )}                        A   0   0   1   A   0   0   1           β n1     β n5     B   0   1   1   B   0   1   1   function                    1   0.5       “0”   “1”   “1”       “1”   “0”   “0”   OR/NOR       10   0.5       “0”   “0”   “1”       “1”   “1”   “0”   AND/NAND       1   50       “1”   “0”   “1”       “0”   “1”   “0”   XNOR/XOR       10   50       “1”   “1”   “1”       “0”   “0”   “0”   all“1”/all“0”                  
 
         [0134]     Next, a reconfigurable logic circuit in accordance with a second embodiment of the present invention is described in conjunction with the accompanying drawings. A logic circuit in accordance with this embodiment can be formed by using a spin MOSFET for either the n-channel MOSFET or the p-channel MOSFET in a CMOS inverter, or using spin MOSFETs for both the n-channel MOSFET and the p-channel MOSFET. The νMOS structure used for the input is formed with a floating gate shared by the n-channel device and the p-channel device. The inverter of the output stage is a conventional inverter of the CMOS configuration.  
         [0135]     In accordance with this embodiment, the operating curve is saturated as in the E/D configuration, and accordingly, the mean logic margin can be made wider. Also, it is effective for low power consumption.  
         [0136]     1) Threshold Value Variable Inverter  
         [0137]      FIG. 16A  is a circuit diagram of an inverter having a variable logic threshold value. In this circuit, the n-channel MOSFET and the p-channel MOSFET of a conventional CMOS inverter are replaced with a p-channel spin MOSFET. Here, the current driving capacity of the p-channel spin MOSFET in the case of parallel magnetization and antiparallel magnetization is made p inv =1 or 10, and the current driving capacity of the n-channel spin MOSFET is a value between 1 and 10. The logic threshold value of the inverter circuit shown in  FIG. 16A  varies according to the combination of parameters β.  FIG. 16B  shows the characteristics of both spin MOSFETs in a case where the parameter β ninv  is fixed while the parameter β pinv  is set to 1 or 10. Although the input is constant, the output V out  is V L  of the low level when the parameter β pinv  is 1, and the output V out  is V H  of the high level when the parameter β pinv  is 10. In this manner, the output V out  varies according to the current driving capacity of the p-channel spin MOSFET. More quantitatively, this can be explained as follows.  
         [0138]     The inverter circuit shown in  FIG. 16A  can be considered as the same as a conventional CMOS inverter. In such a case, the p-channel spin MOSFET and the n-channel spin MOSFET operate in the saturation region. With the drain current I d  flowing through the n-channel spin MOSFET and the p-channel spin MOSFET, the following equation can be obtained:  
                 V   inv     =         V   dd     -          V   thp          +       V   thn     ⁢       β   inv             1   +       β   inv             ⁢     
     ⁢   where   ⁢     
     ⁢       β   inv     =       β   ninv       β   pinv                 [     Equation   ⁢           ⁢   1     ]             
 
         [0139]     Here, the logic threshold value V inv  is plotted as the function of the driving force ratio β inv =β ninv /β pinv  in  FIG. 17 , with V dd  being 3.3V and V thn  being |V thp |=0.5V. As shown in  FIG. 17 , the threshold value according to the ratio β inv =0.1, 1, 10 can be obtained.  
         [0140]     2) AND/OR  
         [0141]      FIG. 18  illustrates an AND/OR circuit that employs the threshold value variable inverter shown in  FIG. 16A . As shown in  FIG. 18 , the AND/OR circuit is formed with inverters of two stages. The inverter at the input side is a threshold value variable inverter, and the inverter at the output side is a conventional inverter (with a threshold value V inv2 =V dd /2). The operating characteristics of the circuit shown in  FIG. 18  are shown in  FIGS. 19A and 19B . In  FIG. 19A , the solid line indicates the characteristics of the transistor Tr 1 , and the broken line indicates the characteristics of the transistor Tr 2 . The details of the operation of this circuit are shown in Table 4.  
                                                                                                       TABLE 4                                       V m                          A   0   0   1   V out             β n1     β n2     B   0   1   1   (in order of Vm)   function                    1   10       V O (“1”)   V P (“0”)   V Q (“0”)   “0”   “1”   “1 ”   OR       10   1       V O (“1”)   V R (“1”)   V Q (“0”)   “0”   “0”   “1”   AND                    
         [0142]     2-1) OR  
         [0143]     Referring now to  FIGS. 19A and 19B , an OR circuit is described. In a case where the circuit illustrated in  FIG. 18  functions as an OR circuit, the transistor Tr 1  is put into an antiparalell magnetization configuration (β p1 =1), and the transistor Tr 2  is put into a paralell magnetization configuration (β n2 =10). Here, in the case of A=B=“0”, the operating point V m  is V 0  according to  FIG. 19A , and the output V out  is inverted and amplified to “0”. In the case of A or B=“1”, the operating point V m  is V P , and the output V out  is “1”. In the case of A=B=“1”, the operating point V m  is V Q , and the output V out  is “1”.  
         [0144]     2-2) AND  
         [0145]     Referring now to  FIGS. 20A and 20B , an AND circuit is described. The transistor Tr 1  is put into a paralell magnetization configuration (β p1 =10), and the transistor Tr 2  is put into an antiparalell magnetization configuration (β n2 =1). Here, in the case of A=B=“0”, the operating point V m  is V 0 , and the output V out  is inverted and amplified to “0”. In the case of A or B=“1”, the operating point V m  is V R , and the output V out  is “0”. In the case of A=B=“1”, the operating point V m  is V Q , and the output V out  is “1”.  
         [0146]     As can be seen from  FIGS. 21 through 23 B, the threshold value V inv1  of the threshold value variable inverter (formed with the transistors Tr 1  and Tr 2 ) at the input side may be regarded as the reference value. In the following, the operation in such a case is described.  
         [0147]     2-3) OR  
         [0148]     When the transistor Tr 1  is put into an antiparalell magnetization configuration (β p1 =1) and the transistor Tr 2  is put into a paralell magnetization configuration (β n2 =10) in a circuit illustrated in  FIG. 21 , the logic threshold value V inv1  becomes V inv1     —     low &lt;V dd /2, as shown in  FIG. 22A . Also as shown in  FIGS. 22A and 22B , in the case of A=B=“0”, V fg  becomes “0”. Accordingly, the operating point V m  is V 0 =“1”, and the output V out  is “0”. In the case of A or B=“1”, V fg  is V dd /2&gt;V inv1     —     low , Accordingly, the operating point V m  is V P =“0”, and the output V out  is “1”. In the case of A=B=“1”, V fg  is V dd . Accordingly, the operating point V m  is V Q =“0”, and the output V out  is “1”.  
         [0149]     2-4) AND  
         [0150]     When the transistor Tr 1  is put into a paralell magnetization configuration (β p1 =10) and the transistor Tr 2  is put into an antiparalell magnetization configuration (β n2 =1) in the circuit illustrated in  FIG. 21 , the logic threshold value V inv1  becomes V inv1     —     high &gt;V dd /2, as shown in  FIG. 23A . In the case of A=B=“0”, V fg  becomes “0”. Accordingly, the operating point V m  is V 0 =“1”, and the output V out  is “0”. In the case of A or B=“1”, V fg  is V dd /2&lt;V inv1     —     low . Accordingly, the operating point V m  is V R =“1”, and the output V out  is “0”. In the case of A=B=“1”, V fg  is V dd . Accordingly, the operating point V m  is V Q =“0”, and the output V out  is “1”.  
         [0151]     3) AND/OR/XNOR  
         [0152]      FIG. 24  illustrates an AND/OR/XNOR circuit. The principles of the operation are the same as in the case of the circuit shown in  FIG. 10 . In the XNOR circuit, the input/output correlation is the same as that in the AND circuit in the case where A=B=“1” or A or B=“1”, but is different from that in the AND circuit only in the case where A=B=“0”, with V out  being “1” (V m =“0”). This function can be realized by adding a circuit formed with the transistors Tr 3 , Tr 4 , and Tr 5  (an n-channel spin MOSFET) to the circuit group Q. The inverter (a level shifter) formed with the transistors Tr 3  and Tr 4  has a threshold value V inv3  lower than V dd /2. Accordingly, only in the case where A=B=“0”, V in     —     n  becomes “1”, and the transistor Tr 5  is turned on. The variation in the current driving capacity β n5  of the transistor Tr 5  between parallel magnetization and antiparallel magnetization is wider than that in the case of the transistors Tr 1  and Tr 2 , and β n5  is 0.5 (antiparallel magnetization) or 50 (parallel magnetization). In the case of parallel magnetization (β n5 =50), a sufficiently high current (I d     —     high ) flows, but in the case of antiparallel magnetization (β n5 =0.5), the value of the current (I d     —     low ) is very small (see the upper and lower graphs in  FIG. 25 ).  
         [0153]     The details of the operation are shown in Table 5.  
                                                                                                               TABLE 5                                       V m                              A   0   0   1   V out  (in            β p1     β n2     β n5     B   0   1   1   order of Vm)   function                    1   10   0.5       V O (“1”)   V P (“0”)   V Q (“0”)   “0”   “1”   “1”   OR       10   1   0.5       V O (“1”)   V R (“1”)   V Q (“0”)   “0”   “0”   “1”   AND       1   10   50       V T (“0”)   V P (“0”)   V Q (“0”)   “1”   “1”   “1”   all“1”       10   1   50       V S (“0”)   V R (“1”)   V Q (“0”)   “1”   “0”   “1”   XNOR                  
 
         [0154]     3-1) AND/OR (See  FIGS. 26A and 26B ,  27 A and  27 B)  
         [0155]     As the transistor Tr 5  is put into an antiparalell magnetization configuration (β n5 =0.5), the current I d     —     low  can be ignored, and the transistor Tr 5  can be regarded as open. Accordingly, the circuit becomes equivalent to the AND/OR circuit shown in  FIG. 18 .  
         [0156]     3-2) XNOR (See  FIGS. 29A and 29B )  
         [0157]     The transistor Tr 5  is put into a paralell magnetization configuration (β n5 =50). In the inverter part, the transistor Tr 1  is put into a paralell magnetization configuration (β p1 =10), and the transistor Tr 2  is put into an antiparalell magnetization configuration (β n2 =1), as in the AND circuit. In the case where A=B=“1” or A or B=“1”, the transistor Tr 5  is equivalent to an open circuit, and operates in the same manner as the AND circuit. In the case where A=B=“0”, V m  is discharged by the current I d     —     high  of the transistor Tr 5 , so as to be V m =V S &lt;V inv2 . Accordingly, V out  becomes “1”. Where the transistor Tr 1  is put into an antiparalell magnetization configuration (β p1 =1), the transistor Tr 2  is put into a paralell magnetization configuration (β n2 =10), and the transistor Tr 5  is put into a paralell magnetization configuration (β n5 =50), the output V out  becomes “1” for all the input patterns (see  FIGS. 28A and 28B ).  
         [0158]     Although all symmetric Boolean functions can be realized by adding an inverter to the output of the circuit shown in  FIG. 24 , a technique of achieving all the symmetric Boolean functions by adding a new circuit to the circuit group P is described below.  
         [0159]     4) AND/OR/XNOR/XOR  
         [0160]      FIG. 30  illustrates an AND/OR/XNOR/XOR circuit. In the XOR circuit, the input/output correlation is the same as that in the OR circuit in the case where A=B=“1” or A or B=“1”, but is different from that in the OR circuit only in the case where A=B=“1”, with V out  being “0”. Accordingly, this function can be realized by adding a circuit with which V out  becomes “0” in the case where A=B=“1”. The XOR function can be achieved by employing the transistors Tr 6 , Tr 7 , and Tr 8  (a p-channel spin MOSFET) in a complementary manner together with the transistors Tr 3 , Tr 4 , and Tr 5  (an n-channel spin MOSFET). The inverter formed with the transistors Tr 6  and Tr 7  has a threshold value V inv4  higher than V dd /2. Accordingly, only in the case where A=B=“1”, V in     —     n  becomes “0”, and the transistor Tr 8  is turned on (see  FIG. 31 ).  
         [0161]     The variation in the current driving capacity β p8  of the transistor Tr 8  between parallel magnetization and antiparallel magnetization is wider than that in the case of the transistors Tr 1  and Tr 2 , and β p8  is 0.5 (antiparallel magnetization) or 50 (parallel magnetization). In the case of parallel magnetization (β 8p =50), a sufficiently high current (I d     —     high ) flows, but in the case of antiparallel magnetization (β p8 =0.5), the value of the current (I d     —     low ) is very small.  FIGS. 32A and 32B  and  FIGS. 33A and 33B  show the operating point V m  in the case of the transistor Tr 8  is in the paralell magnetization configuration (β p8 =50) and the transistor Tr 5  is in the antiparalell magnetization configuration (β n5 =0.5). The sum of currents flowing through the transistors Tr 1  and Tr 8  is indicated by solid lines, and the sum of currents flowing through the transistors Tr 2  and Tr 5  is indicated by broken lines. Here, the current I d     —     low  is ignored.  
         [0162]     The operation of this circuit is shown in Table 6.  
                                                                                                                       TABLE 6                                       V m                                  A   0   0   1   V out             β n1     β n2     β n5     β p8     B   0   1   1   (in order of Vm)   function                    1   10   0.5   0.5       “1”   “0”   “0”   “0”   “1”   “1”   OR       10   1   0.5   0.5       “1”   “1”   “0”   “0”   “0”   “1”   AND       1   10   50   0.5       “0”   “0”   “0”   “1”   “1”   “1”   all“1”       10   1   50   0.5       “0”   “1”   “0”   “1”   “0”   “1”   XNOR       1   10   0.5   50       V O (“1”)   V P (“0”)   V T (“1”)   “0”   “1”   “0”   XOR       10   1   0.5   50       V O (“1”)   V R (“1”)   V T (“1”)   “0”   “0”   “0”   all“0”                  
 
         [0163]     4-1) AND/OR/XNOR  
         [0164]     When the transistor Tr 8  is put into an antiparalell magnetization configuration (β p8 =0.5) in the circuit shown in  FIG. 30 , the current flowing through the transistor Tr 8  can be ignored, and the transistor Tr 8  can be regarded as open. Accordingly, this circuit can be made equivalent to the circuit shown in  FIG. 24 , and the AND/OR/XNOR functions can be achieved by changing the magnetization states of the transistors Tr 1 , Tr 2 , and Tr 5  (or the current driving capacities β p1 , β n2 , and β n5 ).  
         [0165]     4-2) XOR (See  FIGS. 32A and 32B )  
         [0166]     The transistor Tr 8  is put into a paralell magnetization configuration (β p8 =50). In the other parts, the transistor Tr 1  is put into an antiparalell magnetization configuration (β p1 =1), the transistor Tr 2  is put into a paralell magnetization configuration (β n2 =10), and the transistor Tr 5  is put into an antiparalell magnetization configuration (β n5 =0.5), as in the OR circuit. In the case where A=B=“0” or A or B=“1”, the transistor Tr 8  is open, and operates in the same manner as the OR circuit. In the case where A=B=“1”, V m  is charged with the current I d     —     high  of the transistor Tr 8 , so as to be V m =V T &lt;V inv     —     2 . Accordingly, V out  becomes “0”. Where the transistor Tr 1  is put into a paralell magnetization configuration (β p1 =10), the transistor Tr 2  is put into an antiparalell magnetization configuration (β n2 =1), the transistor Tr 5  is put into an antiparalell magnetization configuration (β n5 =0.5), and the transistor Tr 8  is put into a paralell magnetization configuration (β p8 =50), the output V out  becomes “0” for all the input patterns (see  FIGS. 33A and 33B ).  
         [0167]     5) AND/OR/XNOR/XOR/NAND/NOR  
         [0168]     As in the case shown in  FIG. 15 , an inverter may be added to the output of the circuit shown in  FIG. 24 . However, it is possible to achieve the circuit by employing the circuit shown in  FIG. 30 . The transistor Tr 5  in  FIG. 30  functions only in the case where A=B=“0”, and the operating point V m  is “0”. The transistor Tr 8  functions only in the case where A=B=“1”, and the operating point V m  is “1”. Taking this fact into consideration, a NAND/NOR can be realized with the circuit shown in  FIG. 30 .  
         [0169]      FIGS. 33A and 33B  and  FIGS. 34A and 34B  show the operating points in the case where the transistors Tr 5  and Tr 8  are in a paralell magnetization configuration (β n5 =β p8 =50) in the circuit shown in  FIG. 30 . The operations of the circuits are shown in Table 7.  
                                                                                                                       TABLE 7                                       V m                                  A   0   0   1   V out             β n1     β n2     β n5     β p8     B   0   1   1   (in order of Vm)   function                    1   10   0.5   0.5       “1”   “0”   “0”   “0”   “1”   “1”   OR       10   1   0.5   0.5       “1”   “1”   “0”   “0”   “0”   “1”   AND       1   10   50   0.5       “0”   “0”   “0”   “1”   “1”   “1”   all“1”       10   1   50   0.5       “0”   “1”   “0”   “1”   “0”   “1”   XNOR       1   10   0.5   50       “1”   “0”   “1”   “0”   “1”   “0”   XOR       10   1   0.5   50       “1”   “1”   “1”   “0”   “0”   “0”   all“0”       1   10   50   50       V T (“0”)   V P (“0”)   V U (“1”)   “1”   “1”   “0”   NAND       10   1   50   50       V S (“0”)   V R (“1”)   V V (“1”)   “1”   “0”   “0”   NOR                    
         [0170]     5-1) AND/OR  
         [0171]     When the transistor Tr 5  is put into an antiparalell magnetization configuration (β n5 =0.5) and the transistor Tr 8  is put into an antiparalell magnetization configuration (β p8 =0.5), the transistors Tr 5  and Tr 8  are both open. Accordingly, this circuit is equivalent to the circuit shown in  FIG. 28 .  
         [0172]     5-2) XNOR  
         [0173]     When the transistor Tr 5  is put into a paralell magnetization configuration (β n5 =50) and the transistor Tr 8  is put into an antiparalell magnetization configuration (β p8 =0.5), the transistor Tr 8  is open. Accordingly, this circuit is equivalent to the circuit shown in  FIG. 24 .  
         [0174]     5-3) XOR  
         [0175]     When the transistor Tr 5  is put into an antiparalell magnetization configuration (β n5 =0.5) and the transistor Tr 8  is put into a paralell magnetization configuration (β p8 =50), the circuit becomes an XOR equivalent to the circuit shown in  FIGS. 32A and 32B .  
         [0176]     5-4) NAND (See  FIGS. 34A and 34B )  
         [0177]     The transistor Tr 1  is put into an antiparalell magnetization configuration (β p1 =1), the transistor Tr 2  is put into a paralell magnetization configuration (β n2 =10), the transistor Tr 5  is put into a paralell magnetization configuration (β n5 =50), and the transistor Tr 8  is put into a paralell magnetization configuration (β p8 =50). In the case where A=B=“0”, discharging is performed by the transistor Tr 5 , and the operating point V m  becomes V T &lt;V inv2 . Accordingly, the output V out  becomes “1”. In the case where A or B is “1”, the operating point V m  becomes V P &lt;V inv2 , and accordingly, the output V out  becomes “1”. In the case where A=B=“1”, V m  is charged by the transistor Tr 8 , so as to be V m =V U &gt;V inv2 . Accordingly, V out  becomes “0”.  
         [0178]     5-5) NOR (See  FIGS. 35A and 35B )  
         [0179]     The transistor Tr 1  is put into a paralell magnetization configuration (β p1 =10), the transistor Tr 2  is put into an antiparalell magnetization configuration (β n2 =1), the transistor Tr 5  is put into a paralell magnetization configuration (β n5 =50), and the transistor Tr 8  is put into a paralell magnetization configuration (β p8 =50). In the case where A=B=“0”, charging is performed by the transistor Tr 5 , and the operating point V m  becomes V S &lt;V inv2 . Accordingly, the output V out  becomes “1”. In the case where A or B is “1”, the operating point V m  becomes V R &gt;V inv2 , and accordingly, the output V out  becomes “0”. In the case where A=B=“1”, V m  is charged by the transistor Tr 8 , so as to be V m =V V &gt;V inv2 . Accordingly, V out  becomes “0”.  
         [0180]     In the circuit shown in  FIG. 30 , the number of MOSFETs is 10, and the number of capacitors is 2. As this circuit can be realized with a CMOS configuration, the circuit layout can be made very compact.  
         [0181]      FIG. 36  shows a circuit in which CMOS inverters using spin MOSFETs are connected in two stages. Each of the first-stage inverter and the second-stage inverter has an input of a νMOS structure. In this circuit, the same weighting is set on inputs A and B. The inputs A and B are input to the second-stage inverter, and the output V m1  of the first stage is also input to the second-stage inverter. The capacitance weighting is the same between the inputs A and B in the second-stage inverter, but the capacitance weighting differs between the input A (or B) and the output V m1 . For example, with the input capacitance with V m1  being C m1 , the relationship of 3C m1 =C A  (=C B ) should be established. In this logic circuit, the magnetization states of Q 1 , Q 2 , and Q 4  are changed to rewrite the logic functions. With the output V m1 , the logic functions of NOR and NAND can be realized. With the output V m2 , the logic functions of XNOR, XOR, AND, OR, all “1”, and all “0” can be realized. Since the logic amplitude may not reach the “0” level or “1” level with the outputs V m1  and V m2 , depending on the logic function, it is preferable that a CMOS inverter or the like is added to each output to amplify the signal. In such a case, however, the logic function is inverted. Also, it is possible to employ a spin MOSFET for Q 2 .  
         [0182]     Next, a logic circuit of a second CMOS configuration is described for reference, in conjunction with the accompanying drawings. In this logic circuit, a threshold value variable inverter is employed as the output-stage inverter, so as to form a rewritable logic circuit. A logic threshold value V inv  is a binary value (V inv     —     high  or V inv     —     low ), and is supplied through an inverter that includes a conventional nMOS and a p-channel spin MOSFET. This inverter functions as an A-D converter that amplifies an analog voltage (“½” as described below) to a digital logic level (“0” or “1”), but also controls the threshold value. The output-stage A-D converter can be realized by employed the logic threshold value variable inverter, with the spin MOSFETs of the E/E, E/D, and CMOS inverters (shown in  FIG. 6 ) having the νMOS structure for the inputs being replaced with conventional MOSFETs. In the following, other circuits are described for reference.  
         [0183]     1) NAND/NOR  
         [0184]      FIG. 37  illustrates an example structure of a NAND/NOR circuit. This circuit differs from the circuit illustrated in  FIG. 48 , in that the value of Vm is not varied by spin MOSFETs but the threshold value is varied when the threshold value is amplified to the logic level by the inverter. As shown in  FIG. 38 , the load curve (the characteristics of the νMOS structure) of the logic circuit shown in  FIG. 37  is represented by a single line, and the operating points are indicated only by V O , V P , and V Q . Here, the functions are changed by varying the operating point with the logic threshold value V inv  that is higher (V inv     —     high ) or lower (V inv     —     low ) than the operating point V P  when A or B is “1”. The region between the values V inv     —     high  and V inv     —     low  is “½”.  FIG. 39  shows the truth table in this case, and Table 8 shows the details of the operation of the above circuit.  
                                                                                               TABLE 8                                       V m                      A   0   0   1   V out  (in           V inv     B   0   1   1   order of Vm)   function                    V inv _low       V O (“0”)   V P (“½”)   V Q (“1”)   “1”   “0”   “0”   NOR       V inv _high       V O (“0”)   V P (“½”)   V Q (“1”)   “1”   “1”   “0”   NAND                    
         [0185]     In the case where A=B=“0”, the operating point V m  is V O &lt;V inv     —     low , V inv     —     high , and the output V out  becomes “1” with the inverter. In the case where A=B=“1”, the operating point V m  is V Q &lt;V inv     —     low , V inv     —     high , and the output V out  becomes “0” with the inverter. Here, the outputs do not depend on the logic threshold value V inv  of the inverter. In the case where A or B is “1”, the relationship V inv     —     low &lt;V P &lt;V inv     —     high  is established. In this case, if the threshold value V inv  is equal to V inv     —     low , the output V out  is “0”, and accordingly, the circuit functions as a NOR circuit. If the threshold value V inv  is equal to V inv     —     high , the output V out  is “1”, and accordingly, the circuit functions as a NAND circuit.  
         [0186]     2) NAND/NOR/XOR  
         [0187]      FIG. 40  illustrates a NAND/NOR+XNOR circuit.  FIG. 41  shows the operating points of the circuit. The principles of the operation of this circuit are the same as those shown in  FIGS. 50 through 54 . In NOR, the circuit that has the output V out =“1” (V m =“0”, accordingly) in the case where A=B=“1” is formed with the transistors Tr 3 , Tr 4 , and Tr 5  (an n-channel spin MOSFET). The transistor Tr 5  is either in a high driving force state (β n5 =10) or in a low driving force state (β n5 =1). The details of the operation are shown in Table 9.  
                                                                                                       TABLE 9                                       V m                          A   0   0   1   V out             V inv     β n5     B   0   1   1   (in order of Vm)   function                    V inv _low   1       V O (“0”)   V P (“½”)   V Q (“1”)   “1”   “0”   “0”   NOR       V inv _high   1       V O (“0”)   V P (“½”)   V Q (“1”)   “1”   “1”   “0”   NAND       V inv _low   10       V O (“0”)   V P (“½”)   V R (“0”)   “1”   “0”   “1”   XNOR       V inv _high   10       V O (“0”)   V P (“½”)   V R (“0”)   “1”   “1”   “1”   all“1”                    
         [0188]     2-1) NAND/NOR (See  FIGS. 42A and 42B )  
         [0189]     In the circuit shown in  FIG. 40 , the transistor Tr 5  is put into the state in which β n5  is “1”, so that the drain current I id     —     low  can be ignored. Accordingly, the transistor Tr 5  can be regarded as open, and the circuit becomes equivalent to the NAND/NOR circuit shown in  FIG. 37 .  
         [0190]     2-2) XNOR (See  FIGS. 43A and 43B )  
         [0191]     In  FIG. 45 , the transistor Tr 5  is put into the state in which β n5  is 10, and the threshold value of the inverter is set at V inv     —     low  as in the NOR circuit. In the case where A=B=“0” or A or B=“1”, the transistor Tr 5  is regarded as open, and operates in the same manner as the NOR circuit. In the case where A=B=“1”, V m  is charged with the current I d     —     high  of the transistor Tr 5 , so as to be V m =V R &lt;V inv     —     low , and the output V out  becomes “1”.  
         [0192]     Further, when the transistor Tr 5  is put into the state in which β n5  is 10 and the threshold value is set at V inv     —     high , the output V out  becomes “1” for all inputs.  
         [0193]     3) NAND/NOR/XNOR/XOR  
         [0194]      FIG. 44  illustrates a NAND/NOR/XNOR/XOR circuit. In the XOR circuit, the input/output correlation is the same as that in the NAND circuit in the case where A=B=“1” or A or B=“1”, but is different from that in the AND circuit only in the case where A=B=“0”, with V out  being “0”. Accordingly, this function can be realized by adding a circuit with which V out  becomes “0” (with V m  being “1”) in the case where A=B=“0”. The XOR function can be achieved by employing the p-channel transistors Tr 6 , Tr 7 , and Tr 8  (a p-channel spin MOSFET) in a complementary manner together with the n-channel transistors Tr 3 , Tr 4 , and Tr 5  (an n-channel spin MOSFET). The transistor Tr 8  is either in a high driving force state (β p8 =10) or a low driving force state (β p8 =1). The source follower of the transistors Tr 6  and Tr 7  is a positive level shifter, and the transistor Tr 8  is turned on only in the case where A=B=“0”.  
         [0195]      FIG. 45  shows the operating characteristics of the transistors Tr 6  and Tr 7 . According to the operating characteristics, V in     —     p  is determined. The operating point V D  in the case where A=B=“1” and the operating point V E  in the case where A or B is “1” are both higher than the threshold value of the transistor Tr 8 . Accordingly, no current flows, and the circuit can be regarded as open. Only with the operating point V F  in the case where A=B=“0”, the transistor Tr 8  is turned on. (If p-channel spin MOSFETs with threshold values higher than V dd /2 can be integrated, the transistors Tr 6  and Tr 7  are unnecessary, and the V fg  node should be connected directly to the gate of the transistor Tr 8 .) In the case where β p8  is 10, a sufficiently high current I d     —     high  flows, but in the case where β p8  is 1, the value of the current (I d     —     low ) is very small.  FIGS. 46A and 46B  show the operating points V m  in the case where β p8  is 10 and in the case where β n5  is 1. The sum of the currents flowing through the transistors Tr 1  and Tr 8  is indicated by solid lines, and the current I d     —     low  is ignored in  FIGS. 46A and 46B .  
         [0196]     The details of the operation are shown in Table 10.  
                                                                                                               TABLE 10                                       V m                              A   0   0   1   V out             V inv     β n5     β p8     B   0   1   1   (in order of Vm)   function                    V inv _low   1   1       “0”   “½”   “1”   “1”   “0”   “0”   NOR       V inv _high   1   1       “0”   “½”   “1”   “1”   “1”   “0”   NAND       V inv _low   10   1       “0”   “½”   “0”   “1”   “0”   “1”   XNOR       V inv _high   10   1       “0”   “½”   “0”   “1”   “1”   “1”   all“1”       V inv _low   1   10       V O (“1”)   V P (“½”)   V Q (“1”)   “0”   “0”   “0”   all“0”       V inv _high   1   10       V O (“1”)   V P (“½”)   V Q (“1”)   “0”   “1”   “0”   XOR                  
 
         [0197]     3-1) NAND/NOR/XNOR  
         [0198]     The transistor Tr 8  is put into a non-driving force state (β p8 =1), so that the current flowing through the transistor Tr 8  can be ignored. Accordingly, this part can be regarded as open, and the circuit becomes equivalent to the circuit shown in  FIG. 40 . By simply changing β n5  and V inv , the NAND/NOR/XOR functions can be maintained.  
         [0199]     3-2) XOR  
         [0200]     The transistor Tr 8  is put into the state in which β p8  is 10, and the threshold value of the inverter is set at V inv     —     high  as in the NAND circuit. The transistor Tr 5  is put into the state in which β n5  is 1, so as to be open. In the case where A=B=“1” or A or B=“1”, the transistor Tr 8  is open, and operates in the same manner as the NAND circuit. In the case where A=B=“0”, V m  is charged by the p-channel spin MOSFET, so as to be V m =V O &lt;V inv     —     high , and the output V out  becomes “0”. Further, when the transistor Tr 8  is put into the state in which β p8  is 10 and the threshold value is set at V inv     —     low , the output V out  becomes “0” for all inputs.  
         [0201]     4) NAND/NOR/XNOR/XOR/OR/AND  
         [0202]     In the circuit shown in  FIG. 44 , the transistor Tr 5  functions only in the case where A=B=“1”, and V m  is “0”. The transistor Tr 8  functions only in the case where A=B=“0”, and V m  is “1”.  
         [0203]     Taking this fact into consideration, an OR/AND can be realized with the circuit shown in  FIG. 44 . In the circuit, the number of MOSFETs is 10, and the number of capacitors is 2.  FIG. 40A  shows the load curve in the case where β n5 =β p8 =10 in  FIG. 44 . Although the spin MOSFETs of two different types having different rates of change in driving force (the rate of change between Tr 1  and Tr 2  is 10, and the rate of change between Tr 5  and Tr 8  is 100, for example) need to be integrated in the circuit shown in  FIG. 30 , the circuit shown in  FIG. 44  requires only one type of spin MOSFET.  
         [0204]     The details of the operation are shown in Table 11.  
                                                                                                               TABLE 11                                       V m                              A   0   0   1   V out             V inv     β n5     β p8     B   0   1   1   (in order of Vm)   function                    V inv _low   1   1       “0”   “½”   “1”   “1”   “0”   “0”   NOR       V inv _high   1   1       “0”   “½”   “1”   “1”   “1”   “0”   NAND       V inv _low   10   1       “0”   “½”   “0”   “1”   “0”   “1”   XNOR       V inv _high   10   1       “0”   “½”   “0”   “1”   “1”   “1”   all“1”       V inv _low   1   10       “1”   “½”   “1”   “0”   “0”   “0”   all“0”       V inv _high   1   10       “1”   “½”   “1”   “0”   “1”   “0”   XOR       V inv _low   10   10       V O (“1”)   V P (“½”)   V R (“0”)   “0”   “0”   “1”   AND       V inv _high   10   10       V O (“1”)   V P (“½”)   V R (“0”)   “0”   “1”   “1”   OR                  
 
         [0205]     4-1) NAND/NOR (See  FIGS. 46A and 46B )  
         [0206]     With β n5  being 1 and β p8  being 1, the transistors Tr 5  and Tr 8  are both open. Accordingly, this circuit is equivalent to the circuit shown in  FIG. 37 , and functions as a NOR ciruict with V inv     —     low , and as a NAND circuit with V inv     —     high .  
         [0207]     4-2) XNOR  
         [0208]     With β n5  being 10 and β p8  being 1, the transistor Tr 8  is open with V inv     —     low . Accordingly, this circuit is equivalent to the circuit shown in  FIG. 43 , and functions as a XNOR circuit.  
         [0209]     4-3) XOR  
         [0210]     With β n5  being 1 and β p8  being 10, this circuit is equivalent to the circuit shown in  FIG. 9B , and functions as a XNOR circuit.  
         [0211]     4-4) AND/OR  
         [0212]     The value β n5  is set at 10, and the value β p8  is set at 10 in the circuit shown in  FIG. 44  (see  FIGS. 47A and 47B ). In the case where A=B=“0”, charging is performed by the transistor Tr 8 , and the operating point V=V O &gt;V inv     —     low , V inv     —     high . Accordingly, the output V out  becomes “0”. In the case where A=B=“1”, discharging is performed by the transistor Tr 5 , and the operating point V m  becomes V Q &lt;V inv?low , V inv     —     high . Accordingly, the output V out  becomes “1”. In the case where A or B is “1”, the transistors Tr 5  and Tr 8  are both open, and accordingly, the circuit becomes equivalent to the circuit shown in  FIG. 37 . Since the relationship V inv     —     low &lt;V P &lt;V inv     —     high  is established, the circuit functions as an AND circuit, with V inv  being V inv?low . The circuit functions as an OR circuit, with V inv  being V inv     —     high .  
         [0213]     The above circuit may be of either an n-channel type or a p-channel type, as long as the transistors Tr 1  and Tr 2  are of the same conductivity type in each circuit diagram.  
         [0214]     In the following, a logic circuit in accordance with the above examples of reconfigurable circuits using spin MOSFETs is described in conjunction with the accompanying drawings. This logic circuit employs circuit groups including enhancement MOSFETs and n-channel spin MOSFETs.  
         [0215]     1) NAND/NOR Circuit  
         [0216]      FIG. 48  illustrates an example structure of a rewritable NAND/NOR circuit. As shown in  FIG. 48 , a rewritable NAND/NOR circuit includes a logic gate stage and an inverter stage. The logic gate stage has a series-connection structure in which a νMOS (Tr 1 ) and a spin MOSFET (Tr 2 ) are connected in series. The νMOS (Tr 1 ) has two inputs A and B, and the voltage V fg  to be applied to the floating gate according to the input value is determined by the equation: (A+B)/2, for example. The current gain of the νMOS (Tr 1 ) is represented by β n1 . The inputs are represented by A and B, and the output is represented by V out , which is either “0” (Low level, 0V) or “1” (High level, the source voltage V dd ). The above νMOS (Tr 1 ) functions as a D-A converter that converts a digital input of “0” or “1” to a voltage of 0, V dd /2, or V dd .  
         [0217]     Tr 2  is a spin MOSFET (distinguished from a conventional MOSFET by the addition of an arrow), and a constant bias V b  is applied to Tr 2 . The driving force can be either β n2 =1 or β n2 =10, depending on the magnetization state stored in the spin MOSFET (Tr 2 ).  
         [0218]     The static characteristics of the spin MOSFET (Tr 2 ) are shown by the solid line in  FIG. 6 . The νMOS (Tr 1 ) and the spin MOSFET (Tr 2 ) function as a source follower circuit. The νMOS (Tr 1 ) charges the V m  node, which is the connecting point between the νMOS (Tr 1 ) and the spin MOSFET (Tr 2 ), with the driving force according to V fg . The spin MOSFET (Tr 2 ) discharges the V m  node with the driving force according to the magnetization state. The νMOS (Tr 1 ) and the spin MOSFET (Tr 2 ) constitute the logic gate.  FIG. 49  shows the load curve according to the νMOS (Tr 1 ) (indicated by the broken line) and the operating points (V O  through V S ) of this logic gate.  
         [0219]     The analog voltage V m  supplied at the operating points (V O  through V S ) is inverted and amplified to the digital logic level “0” or “1” by an inverter with the characteristics shown in the lower half of  FIG. 49 , with V inv  being the threshold value. The analog voltage V m  is then output to an output terminal V out .  
         [0220]     Table 12 shows the relationship among β n2 , the operating points, and the circuit functions.  
                                                                                               TABLE 12                                       V m                      A   0   0   1   V out             β n2     B   0   1   1   (in order of Vm)   function                     1       V O (“0”)   V S (“1”)   V Q (“1”)   “1”   “0”   “0”   NOR       10       V O (“0”)   V R (“0”)   V P (“1”)   “1”   “1”   “0”   NAND                  
 
         [0221]     The driving force of the spin MOSFET (Tr 2 ) in a paralell magnetization configuration is β n2 =10. In the case where A=B=“0”, the drain current I d  is 0. The analog voltage V m  is V O &lt;V inv , and the output V out  is “1”, with the inverting amplification of the A-D converter being taken into consideration. In the case where A=B=“1”, the drain current I d  is expressed as I d =β n1 (V dd −V m −V th ) 2 /2. Here, V m  is V P &gt;V inv , and V out  is “0”. The above outputs do not depend on the driving force β n2  of the spin MOSFET (Tr 2 ) (not depending on whether the magnetization state is parallel or antiparallel). In the case where A or B is “1”, the drain current I d  is expressed as I d =βn 1  (V dd /2−V m −V th ) 2 . Here, one of the inputs is “1”, and V m  is discharged by Tr 2 . As a result, V m  becomes V R &lt;V inv , and V out  is “1”. Thus, the circuit functions as a NAND circuit.  
         [0222]     The driving force of the spin MOSFET (Tr 2 ) in an antiparalell magnetization configuration is β n2 =1. In the case where A=B=“0”, the analog voltage V m  is V O &lt;V inv , and the output V out  is “1”, with the inverting amplification of the A-D converter being taken into consideration. In the case where A=B=“1”, V m  is V Q &gt;V inv , and V out  is “0”. The above outputs do not depend on the driving force β n2  of the spin MOSFET (Tr 2 ) (not depending on whether the magnetization state is parallel or antiparallel). In the case where A or B is “1”, V m  is charged by Tr 1 . As a result, V m  becomes V S &gt;V inv , and V out  is “0”. Thus, the circuit functions as a NOR circuit.  FIG. 50  shows the truth table of the circuit shown in  FIG. 48 .  
         [0223]     As shown in Table 12, based on whether the driving force β n2 , which can vary according to the magnetization state in the spin MOSFET, is 1 or 10, a NOR logic or a NAND logic can be selected as the output V out  in response to the inputs A and B. Since the magnetization state of the spin MOSFET is stored in a non-volatile manner, a NOR logic or a NAND logic can be selected in a single circuit. If a circuit having such a function is formed with a conventional CMOS digital circuit, ten MOSFETs are necessary. The circuit of this example is advantageous in that the same function can be realized with only four MOSFETs.  
         [0224]     2) NAND/NOR+XNOR  
         [0225]     Referring now to  FIG. 51A , a rewritable NAND/NOR+XNOR circuit is described. In an XNOR circuit, the input/output correlation is the same as that in an NOR circuit, in the case of A=B=“0” or A or B=“1”. The input/output correlation is different from that in an NOR circuit only in the case where A=B=“1”, with V out  being “1”. Therefore, in the case where A=B=“1”, V out  should be set to “1” (V m  being “0”). Here, a circuit that is formed with two conventional nMOSFETs (Tr 3  and Tr 4 ) and one n-channel spin MOSFET (Tr 5 ) is added. The n-channel spin MOSFET (Tr 5 ) can be switched between a high driving force state (β n5 =10) and a low driving force state (β n5 =1) in accordance with the magnetization state.  
         [0226]     The source followers of Tr 3  and Tr 4  form a negative level shifter, and Tr 5  is turned on only in the case where A=B=“1”. In  FIG. 51B  illustrating the operation, the upper graph shows the operating characteristics of Tr 3  and Tr 4  in  FIG. 8 . According to the operating characteristics, V in     —     n  is determined. The static characteristics of Tr 4  are indicated by the solid line, and the load curve of Tr 3  is indicated by the broken lines. The operating point VC in the case where A=B=“0” and the operating point VD in the case where A or B is “1” are smaller than the threshold value of Tr 5 . Therefore, no current flows in Tr 5 , which can be regarded as open. Only the gate voltage of Tr 5  at the operating point VE in the case where A=B=“1” is greater than the threshold. Accordingly, Tr 5  is turned on. If n-channel spin MOSFETs with threshold values greater than V dd /2 can be integrated, Tr 3  and Tr 4  are not necessary, and the V fg  node should be connected directly to the gate of Tr 5 . In the case where β n5  is 10, a sufficiently high current I d     —     high  flows, but in the case where β n5  is 1, the value of the current (I d     —     low ) is very small, as can be seen from the lower graph in  FIG. 8B .  
         [0227]      FIGS. 52A through 54B  show the operating points V m  with the respective values of β. The sum of the currents flowing through Tr 2  and Tr 5  is indicated by the solid lines, and the current I d     —     low  is ignored. Table 13 collectively shows the relationship between β n2 , β n5 , and the functions of the circuit.  
                                                                                                       TABLE 13                                       V m                          A   0   0   1   V out             β n2     β n5     B   0   1   1   (in order of Vm)   function                    1   1       V O (“0”)   V S (“1”)   V Q (“1”)   “1”   “0”   “0”   NOR       10   1       V O (“0”)   V R (“0”)   V P (“1”)   “1”   “1”   “0”   NAND       1   10       V O (“0”)   V S (“1”)   V U (“0”)   “1”   “0”   “1”   XNOR       10   10       V O (“0”)   V R (“0”)   V V (“0”)   “1”   “1”   “1”   all“1”                    
         [0228]      FIGS. 52A and 52B  illustrate the NAND/NOR functions. Tr 5  is put into a non-driving force state (β n5 =1), so that the current flowing through Tr 5  can be ignored. Accordingly, the part of Tr 5  ( FIG. 51A ) can be regarded as open. Thus, the NAND/NOR functions can be maintained.  
         [0229]      FIGS. 53A and 53B  illustrate the XNOR function. Tr 5  is put into a high driving force state (β n5 =10), and Tr 2  is put into the state in which β n2 =1. In the case where A=B=“0” or A or B=“1”, Tr 5  is regarded as open, and operates in the same manner as the NOR circuit. In the case where A=B=“1”, V m  is discharged with the current V inv     —     high  of Tr 5 , so as to be V m =V U &lt;V inv , and the output V out  becomes “1”. Further, when Tr 5  is put into the state in which β n5  is 10 and Tr 2  is put into the state in which β n2  is 10, the output V out  becomes “1” for all inputs (all “1”), as shown in  FIGS. 11A and 11B .  
         [0230]     3) NAND/NOR/XNOR+AND/OR/XOR Functions  
         [0231]     Another stage of inverter is added to the output terminal V out  shown in  FIG. 51A , so that V out  is inverted. As shown in  FIG. 55 , NAND/NOR/XNOR becomes AND/OR/XOR. With the two outputs of V out  and the inverted V out , a circuit that can achieve all the symmetric Boolean functions of NAND/NOR/XNOR+AND/OR/XOR, all “0”, and “1” can be formed. In the entire circuit, nine MOSFETs and two capacitances are required. If necessary, a circuit (a pass transistor) for selecting either V out  or the inverted V out  is added to the output terminal, thereby restricting the number of outputs to 1. Table 14 collectively shows the functions of the circuit illustrated in  FIG. 55 .  
                                                                                                                           TABLE 14                                       V out     {overscore (V out                          A   0   0   1   A   0   0   1           β n2     β n5     B   0   1   1   B   0   1   1   function                    1   1       “1”   “0”   “0”       “0”   “1”   “1”   NOR/OR       10   1       “1”   “1”   “0”       “0”   “0”   “1”   NAND/AND       1   10       “1”   “0”   “1”       “0”   “1”   “0”   XNOR/XOR       10   10       “1”   “1”   “1”       “0”   “0”   “0”   all“1”/all“0”                  
 
         [0232]     As described so far, any of the logic circuits in accordance with the embodiments of the present invention includes a spin transistor or a spin MOSFET that can change the current driving force in a non-volatile manner, and a νMOS structure. In such a structure, symmetric Boolean functions that are reconfigurable in a non-volatile manner can be realized with a small number of devices. With this circuit, the chip area can be reduced, and high-speed, low-consumption electric operations can be expected. Accordingly, this circuit can be applied to the integrated circuits for mobile devices that are produced in a short time.  
         [0233]     Although the logic circuits in accordance with the specific examples and embodiments of the present invention have been described so far, the present invention is not limited to them. It should be obvious to those skilled in the art that various changes and modifications can be made to the above examples and embodiments, and various combinations of them can also be made.  
       INDUSTRIAL APPLICABILITY  
       [0234]     Using a logic circuit of the present invention, symmetric Boolean functions that are reconfigurable in a non-volatile manner can be realized with a smaller number of devices. Since a circuit of the present invention can maintain each logic function in a non-volatile manner, there is no need to employ a non-volatile memory for storing logic functions. Accordingly, the chip size can be reduced. Also, using a circuit with a smaller number of devices, high-speed, low-consumption electric operations can be expected. Thus, the circuits of the present invention can be applied to the integrated circuits for mobile devices that are produced in a short time.