The present invention relates to a programmable volatile/non-volatile memory cell and to a method of writing to the non-volatile portion of such a memory cell.
The nodes 106 and 108 store complementary voltage states Q and Q, permitting one bit of data to be memorized by the cell. Node 106 is coupled to a bit line BL via a P-channel MOS (PMOS) transistor 110, while node 108 is coupled to a complementary bit line BLB via a PMOS transistor 112. The gates of transistors 110 and 112 are coupled to a word line WL, and are activated by a low signal allowing data to be written to or read from the cell 100.
The circuit 100 has the advantage of being relatively quick to access during read and write operations. However, a disadvantage is that, as with all volatile memory cells, the stored data is lost if the supply voltage VDD is removed.
Flash memory is an example of a programmable non-volatile memory. A disadvantage with flash memory is that it is relatively slow to access when compared to the SRAM cell of
In many applications there is a need for a programmable memory cell capable of storing non-volatile data, and having increased access speeds and low energy consumption.
It is an aim of embodiments of the present invention to at least partially address one or more needs in the prior art.
According to one aspect of the present invention, there is provided a memory device comprising at least one memory cell comprising: a first transistor coupled between a first storage node and a first supply voltage; a second transistor coupled between a second storage node and said first supply voltage, a control terminal of said first transistor being coupled to said second storage node, and a control terminal of said second transistor being coupled to said first storage node; a first resistance switching element coupled in series with said first transistor; and a second resistance switching element coupled in series with said second transistor; and control circuitry adapted to apply, during a programming phase of the first resistance switching element, a second supply voltage to said second storage node to active said first transistor, and then to apply said second supply voltage to said first storage node to generate a first write current through said first transistor and said first resistance switching element.
According to one embodiment, the control circuitry is further adapted to isolate said second storage node from said second supply voltage, and then to apply, during a programming phase of the second resistance switching element, said second supply voltage to said second storage node to generate a second write current through said second transistor and said second resistance switching element.
According to another embodiment, the at least one memory cell further comprises: a third transistor coupled between said first storage node and a first access line; and a fourth transistor coupled between said second storage node and a second access line; wherein said control circuitry is arranged to control said third transistor via a first control line to apply said second supply voltage to said first storage node, and to control said fourth transistor via a second control line to supply said second supply voltage to said second storage node.
According to another embodiment, the first resistance switching element is coupled in series with said third transistor between said first storage node and said first access line, and the second resistance switching element is coupled in series with said fourth transistor between said second storage node and said second access line.
According to another embodiment, the first resistance switching element is coupled between said first storage node and said third transistor, and the second resistance switching element is coupled between said second storage node and said fourth transistor.
According to another embodiment, the first resistance switching element is coupled between said third transistor and said first access line, and the second resistance switching element is coupled between said fourth transistor and said second access line.
According to another embodiment, the third and fourth transistors are adapted to have a lower threshold voltage than said first and second transistors.
According to another embodiment, the at least one memory cell further comprises a fifth transistor coupled between said first and second storage nodes.
According to another embodiment, the first and second resistance switching elements are respectively coupled between said first and second transistors and said first supply voltage.
According to another embodiment, the first and second resistance switching elements are respectively coupled between said first and second storage nodes and said first and second transistors.
According to another embodiment, the memory device further comprises programming circuitry adapted to program the resistances of said first and second resistance switching elements based on input data.
According to another embodiment, the first transistor is the only transistor of a first inverter of said at least one memory cell, and the second transistor is the only transistor of a second inverter of said at least one memory cell.
According to another embodiment, the first and second resistance switching elements are each one of: thermally assisted switching elements; oxide resistive elements; conductive bridging elements; phase change elements; programmable metallization elements; spin transfer torque elements; and field-induced magnetic switching (FIMS) elements.
According to a further aspect of the present invention, there is provided a random access memory comprising an array of the above memory devices.
According to a further aspect of the present invention, there is provided a data latch comprising the above memory device.
According to a further aspect of the present invention, there is provided a method of programming resistance switching elements of at least one memory cell comprising at least one memory cell comprising a first transistor coupled between a first storage node and a first supply voltage, a second transistor coupled between a second storage node and said first supply voltage, a control terminal of said first transistor being coupled to said second storage node, and a control terminal of said second transistor being coupled to said first storage node, a first resistance switching element coupled in series with said first transistor, a second resistance switching element coupled in series with said second transistor, the method comprising, during a programming phase of the first resistance switching element, the consecutive steps of: applying a second supply voltage to said second storage node to active said first transistor; and applying said second supply voltage to said first storage node to generate a first write current through said first transistor and said first resistance switching element.
According to one embodiment, the method further comprises, during a programming phase of the second resistance switching element after said step of applying said second supply voltage to said first storage node, the consecutive steps of: isolating said second storage node from said second supply voltage; and applying again said second supply voltage to said second storage node to generate a second write current through said second transistor and said second resistance switching element.
According to another embodiment, the at least one memory cell further comprises a third transistor coupled between said first storage node and a first access line and a fourth transistor coupled between said second storage node and a second access line, wherein said step of applying said second supply voltage to said first storage node comprises activating said third transistor, and said step of applying said second supply voltage to said second storage node comprises activating said fourth transistor.
According to another embodiment, the at least one memory cell further comprises a fifth transistor coupled between said first and second storage nodes, the method further comprising activating said fifth transistor between the programming phases of the first and second resistance switching elements.
The foregoing and other purposes, features, aspects and advantages of the invention will become apparent from the following detailed description of embodiments, given by way of illustration and not limitation with reference to the accompanying drawings, in which:
Throughout the figures, like features have been labelled with like reference numerals.
Only those features useful for an understanding of the invention have been illustrated in the figures and will be described in detail in the following. Other aspects, such as the particular applications of the memory cell, have not been described in detail, the memory cell being suitable for use in a wide range of applications.
The non-volatile data however is stored by the physical state of a pair of resistance switching elements, as will now be described.
The memory cell 200 is similar to the SRAM cell 100 of
Furthermore, the memory cell 200 additionally comprises resistance switching elements 202 and 204, which are coupled between the respective sources of transistors 102 and 104 and the ground voltage. Alternatively, element 202 could be coupled between the storage node 106 and the drain of transistor 102, while element 204 could be coupled between the storage node 108 and the drain of transistor 104. This embodiment is described in more detail below with reference to
The resistance switching elements 202 and 204 are any resistive elements switchable between two resistance values. Such elements maintain the programmed resistive state even after a supply voltage is removed. The resistance switching elements 202, 204 are programmed to have opposite values, and the relative resistance values of the elements indicate one binary data value.
For example, the resistance switching elements 202, 204 are based on magnetic tunneling junctions (MTJs), such as field-induced magnetic switching (FIMS) elements, thermally assisted switching (TAS) elements or STT (spin transfer torque) elements. TAS-MRAM are for example discussed in more detail in the publication titled “Thermally Assisted MRAM”, Prejbeanu et al., and FIMS-MRAM (magnetic random access memory) are for example discussed in more detail in the publication titled “Magnetoresistive random access memory using magnetic tunnel junctions”, S. Tehrani, Proceedings of IEEE, 91(5):3707-714, May 2003
Alternatively, the resistance switching elements 202, 204 could be other types of resistance switching memory devices, including those used in programmable metallization cells, such as phase change RAM (PCRAM).
Whatever the type of resistance switching element, information is stored by setting one of the elements 202, 204 at a relatively high resistance (Rmax), and the other at a relatively low resistance (Rmin). Each of the resistance switching elements 202, 204 for example has just two resistive states corresponding to the high and low resistances Rmax and Rmin, although the exact values of Rmin and Rmax may vary depending on conditions such as temperature, process variations etc. The non-volatile data value represented by the resistive elements 202, 204 depends on which of the resistive elements is at the resistance Rmax and Rmin, in other words on the relative resistances. The resistance elements 202, 204 are for example selected such that Rmax is always significantly greater than Rmin, for example at least 20 percent greater. In general, the ratio between the resistance Rmax and the resistance Rmin is for example between 1.2 and 10000, depending on the type of elements used. In one example, Rmin is in the region of 2.5 k ohms, and Rmax is in the region of 5 k ohms, although many other values are possible.
In the SRAM cell 100 of
The threshold voltages of the PMOS transistors 110, 112 are lower than those of NMOS transistors 102, 104, such that the leakage current when in the off state for a given drain-source voltage VDS is greater in transistors 110 and 112 than in transistor 102 or 104. In other words, since the same amount of current flows through the transistors 102 and 110 or 104 and 112 which are coupled in series, the voltage drop across transistors 110 and 112 is lower than across transistors 102 and 104 thereby keeping the corresponding node 106 or 108 at a voltage high enough to be seen as a high logic level. The particular threshold voltages will depend on the technology used. But as an example, the threshold voltages of PMOS transistors 110, 112 are chosen to be in the range 0.3 to 0.5 V, while the threshold voltages of NMOS transistors 102, 104 are in the range 0.4 to 0.6 V. In any case, the ratio IOffp/IOffn is selected for example to be greater than 25, and preferably greater than 100.
In operation, for reading and writing data to the volatile portion of the memory cell 200, in other words to the storage nodes 106 and 108, the process is the same as for the memory cell 100, and is not affected by the programmed resistance values of the resistance switching elements 202 and 204. Briefly, writing a bit of data to nodes 106, 108 involves applying, while transistors 110 and 112 are turned on by a low voltage to both write lines WL1, WL2, a high or low voltage to bit line BL depending on the data to be stored, and the opposite voltage to bit line BLB. Reading the data from nodes 106 and 108 involves pre-charging the bit lines BL and BLB, and then turning on transistors 110 and 112 and determining which bit line voltage drops first, with the aid of a sense amplifier (not illustrated), which amplifies the voltage difference between the bit lines. During such read and write operations the signal AZ controlling transistor AZ is for example never asserted. Preferably, so as not to slow the read and write operations to the volatile storage nodes and to prevent a bit-flip during a read operation, the value of Rmax is chosen not to be greater than around 5 k ohms, although this value will depend on the particular technology used, and in particular on the resistance of the transistors.
Independently of this normal SRAM operation, the resistance switching elements may be programmed to store non-volatile data, and the memory cell may be controlled to transfer this data, from physical storage determined by the resistive states of elements 202, 204, to electronic storage determined by the voltage states of the storage nodes 106, 108. Once transferred, this data may be read from the SRAM cell in a standard fashion.
In order to program the resistive states of the elements 202 and 204, a current is passed through each element. In the case of TAS-MRAM, such a current is used to heat the elements, aiding the programming of the resistive states by a magnetic field generated independently. For other types of resistance switching elements, such as spin transfer torque (STT) elements, the level or polarity of this current may be used to directly program the resistive elements.
The supply of this current in the memory cell 200 could be provided by illustrated PMOS transistors 206 and 208 coupled between the respective elements 202, 204 and the supply voltage VDD. Transistors 206, 208 are controlled by a control signal PROG, which activates these transistors shortly before each element 202, 204 is to be programmed. However, disadvantages of this solution are that it is relatively power consuming and adds an additional two transistors in each memory cell.
An alternative approach will now be described with reference to
Prior to supplying the current IFIELD to program each of the resistance switching elements 202, 204, the resistance switching elements are heated by passing a current through them. For this, write control circuitry 308 is provided, which independently controls the PMOS transistors 110, 112, and optionally also the NMOS transistor 201. In particular, circuitry 308 is coupled to the write lines WL1 and WL2, and optionally to the gate terminal of transistor 201 via a line 310. The operation of the field generation circuitry 302 and write control circuitry 308 will now be described in more detail with reference to the timing diagrams of
Initially, the signals WL1 and WL2 are high, such that the storage nodes 106, 108 are isolated from the bit lines BL and BLB. Then, while the supply voltage VDD is applied to the bit lines BL and BLB, a falling edge 402 of signal WL2 activates PMOS transistor 112, thereby coupling storage node 108 to the supply voltage VDD. This voltage thereby activates the NMOS transistor 102, and brings down the voltage at node 106 if it is not already low. A falling edge 404 of signal WL1 then activates transistor 110, such that a current IA flows from the bit line BL through transistors 110 and 102 and element 202 to ground. This current IA heats element 202. The current IFIELD is applied for a write period PW, as shown by rising edge 406, to program element 202. Period Pw for example has a duration of about 20 ns. The polarity of the current IFIELD determines the logic value of the non-volatile data that will be stored by the resistance switching elements 202, 204. In the example of
The current IA triggered by edge 404 continues for a time tht, until a rising edge 408 of signal WL2, which isolates again the storage node 108 from bit line BLB, and leads to a drop in the voltage
In preparation for programming element 204, a falling edge 412 of signal WL2 then activates PMOS transistor 112, and a current IB starts to flow through transistor 104 and element 204. Then, the current IFIELD is applied for a write period PW, as shown by falling edge 414 of this signal, to program element 204. Thus element 204 is programmed with the opposite resistive state to element 202. The current IB triggered by falling edge 412 continues for a time tht, until a rising edge 416 of signal WL1, which deactivates transistor 110, thereby stopping the current IA through element 202, and then a rising edge 418 of signal WL2 deactivates transistor 112. After a cool down period, a rising edge of the signal IFIELD then ends the write period PW of element 204.
Thus the time for programming each element 202, 204 is for example in the region of 35 ns, and thus given that the programming of each element is performed consecutively in two cycles, the programming for example takes in the region of 70 ns. However, the heating and cooling-off times will vary based on factors such as the materials used, their volumes, etc., and also the heat currents that are applied, and thus the above values are given only as approximate examples.
The signal AZ is optionally asserted to aid the initialisation of the current IB. Thus, the signal AZ is asserted for a short pulse 422 starting shortly before the falling edge 412 of signal WL2 and for example ending before the falling edge 414 of signal IFIELD. This has the effect of saturating the transistor 104, thereby aiding the initialisation of the current IB.
In the case that elements 202, 204 are PCRAM elements, the selection of their resistive states is performed by controlling the heating rates of the elements. For example, the circuit 308 is adapted to control the voltage level applied to the bit lines BL and BLB such that the heating current is appropriate for programming the required resistive state of the element. In such a case, the circuitry 302 and conductive track 306 are omitted.
Examples of the signals on the bit lines BL, BLB, word lines WL1, WL2, the signal AZ, and the resulting voltages Q and
In general, the non-volatile element reading phase comprises applying by the control circuitry 602 a supply voltage to each of the storage nodes 106, 108, via the bit lines BL and BLB. This generates a current through each of the resistance switching elements 202, 204, such that the voltages at nodes 106, 108 will depend on the relative resistances of the elements 202, 204.
Initially, the circuitry 602 applies a high voltage to each of the bit lines BL, BLB, for example at the supply voltage VDD. The bit lines BL and BLB are likely to be close to or at the supply voltage VDD during a standby or read phase prior to the transfer phase, but during such phases they are generally only periodically charged to the supply voltage, and for this reason the voltages of BL and BLB prior to and after the transfer phase have been indicated by dashed lines in
Then, the word line voltages WL1 and WL2 are brought low at falling edges 702 and 704 respectively, to activate the transistors 110 and 112. Thus transistor 104 will initially be non-conducting, and transistor 102 conducting. However, due to the resistance Rmax of element 202, the current flowing through transistor 102 will be limited. This current causes the voltage Q to start to rise.
Optionally, the signal AZ is then asserted, as shown by a rising edge 706, which has the effect of bridging nodes 106 and 108 via the NMOS transistor 201, thereby bringing the voltages Q and
After the signal AZ is brought low by a falling edge 708, the voltages Q and
Then, the word line signals WL1 and WL2 go high at edges 710 and 712 respectively, isolating the storage elements 106, 108 from bit lines BL and BLB, and the states of Q and
In both
The circuit 800 operates in a similar fashion to the circuit 200, except that transistors 810, 812 are activated by a high voltage level on the word lines WL1, WL2, and a low supply voltage, for example at 0 V, will be applied by circuitry 602 of
Operation of the memory cell 820 is very similar to that of the memory cell 200 of
As illustrated in
In the case that the sources of transistors 102, 104 are connected to ground, operation of the memory cell 840 is similar to that of memory cell 200, except that, when the non-volatile data is transferred to the storage nodes 106, 108, a programmed resistance of element 202 of Rmax will result in a low voltage at node 106, and a programmed resistance of element 202 of Rmin will result in a high voltage at node 106. Similarly, resistances of Rmax and Rmin will result in low and high voltages respectively at node 108 during the non-volatile to volatile data transfer. Advantageously, it has been found that such a positioning of the elements 202, 204 leads to particularly good performance of the memory cell. In particular, it enables relatively small transistors to be used in order to drive the programming current, for example for heating the elements 202, 204.
In the case that the sources of transistors 102, 104 are coupled to the bit lines BL2, BLB2 respectively, this permits current to be passed through the elements 202, 204 in either direction during a programming phase of the elements 202, 204. In particular, there is no longer any connection to the supply voltages VDD or ground in the memory cell, and instead voltages applied to bit lines BL1, BL2 determine the current flowing through element 202, while voltages applied to bit lines BLB1, BLB2 determine the current flowing through element 204. Elements 202, 204 are for example STT (spin transfer torque) devices, which are programmed by the polarity of the current that is passed through them.
In operation, the bit lines BL2 and BLB2 are for example coupled to ground during the reading phase of volatile data stored at nodes 106, 108, and likewise during the transfer phase of the data programmed by the resistance switching elements to the storage nodes 106, 108. During a programming phase of the elements 202, 204, the control block 308 of
For example, the elements 202, 204 are each programmed to have resistance Rmax if a current is applied from the storage node 106/108 towards the bit line BL1/BLB1 respectively, and resistance Rmin if a current is applied in the opposite direction. Thus, to program element 202 at resistance Rmax and element 204 at resistance Rmin, the supply voltage VDD is for example applied to bit lines BL2 and BLB1, and a ground voltage is for example applied to bit lines BL1 and BLB2. Alternatively, to program element 202 at resistance Rmin and element 204 at resistance Rmax, the supply voltage VDD is for example applied to bit lines BL1 and BLB2, and a ground voltage is for example applied to bit lines BLB1 and BL2.
Operation of the memory cell 860 is the same as that of memory cell 840 in both the case that the sources of transistors 102, 104 are connected to ground and the case that they are connected to the bit lines BL2, BLB2, and will not be described again in detail.
Of course, it will be apparent to those skilled in the art that any of the memory cells 820, 840 and 860 the NMOS transistors 102, 104 could be replaced by PMOS transistors, in a similar fashion to the embodiment of
Each of the cells 200, 800 is also coupled to the corresponding word lines WL1, WL2 common to each row of cells, and a conductive track 306 forms a loop passing by each cell and conducting the current IFIELD for writing to the resistance switching elements of each of the memory cells. Each of the lines WL1, WL2 and 306 is controlled by control circuitry 904, which for example comprises the circuitry 302 and 602 for each row, and receives input non-volatile data DNVin, and provides the current IFIELD of the corresponding polarity. While not shown in
The writing of the non-volatile data is for example performed row by row, in two phases. During a first phase, only the resistance switching elements 202, 204 of cells for which a first logic value, such as logic “0”, is to be programmed are heated. Such selective heating is for example performed by only applying, during the method of FIG. 4A/4B, the supply voltage to the bit lines of cells that are to be heated. Then, when the corresponding current is applied to the conductive track 306, the resistive states of only the elements that have been heated will be programmed. During the second phase, the resistance switching elements 202, 204 of the other cells, for which the second logic value, for example a logic “1”, is to be programmed are heated. Then, when the corresponding write current is applied to the conductive track 306, again only the resistive states of the elements that have been heated will be programmed.
As indicated by dashed lines in
Of course, the memory cells 200, 800 of
The storage node 106 of memory cell 1002 receives data D via a PMOS transistor 1004, while this data is also provided to storage node 108 via an inverter 1006 and PMOS transistor 1008 coupled in series. PMOS transistors 1004, 1008 are controlled by a clock signal CLK1. Alternatively, PMOS transistors 1004, 1008 could be replaced by NMOS transistors. Storage node 108 is further coupled to a further SRAM cell or latch 1010, similar to cell 100 of
In operation, data D clocked into the memory cell 1002 on a falling edge of clock CLK1 is then stored by the memory cell 1010 on the next rising edge of clock signal CLK2, ready for output from node 108 of cell 1010. An advantage of the flip-flop 1000 is that the elements 202, 204 of memory cell 1002 allow non-volatile data to be stored, which may be output by bringing low the control signals A1 and A2 and optionally asserting the AZ signal. Furthermore, the output state of the memory cell 1002 is stored by cell 1010, even during reading or writing of the volatile or non-volatile data of cell 1002.
An advantage of the embodiments of the memory cell described herein is that they are capable of storing not only one bit of volatile data, but additionally one bit of non-volatile data. Furthermore, the programmed non-volatile data can be quickly loaded to the volatile portion of the memory cell in a simple fashion, by application of a voltage to the access lines of the memory cell. This advantageously means that a state programmed in a non-volatile fashion may be quickly loaded (in less than 1 ns), for example upon activation of the memory on power-up or after a sleep period. In the case of an FPGA, this allows a circuit design to be quickly initialised, without the need of loading external data into the device to program memory latches and switches.
An advantage of the control circuitry 308 of
According to embodiments described herein, the inverters forming the memory cell are each implemented by a single transistor coupled to the same supply voltage. Thus the memory cell is connected to only one power rail: ground in
Furthermore, in the case that the volatile data in the memory is to be discarded during the standby state and only the non-volatile data is to be maintained, the power to the bit lines can be removed altogether, such that even the leakage current becomes negligible. The power consumption of the memory is thus extremely low during such a standby state.
Furthermore, advantageously the cell is capable of fast (in around 1 ns) write and read operations for the volatile storage portions, which may occur in a normal fashion irrespective of the programmed states of the non-volatile resistive elements. Furthermore, the write time for the non-volatile portion is also relatively fast (in around 35 ns for each memory element).
A further advantage of the memory cells described herein is that the circuit is compact, comprising only four or five transistors and two programmable resistors for the storage of one bit of non-volatile data and one bit of volatile data. Furthermore, the non-volatile data may be read without the need of additional transistors in each memory cell. Furthermore, in advanced silicon technologies, for example 65 nm or lower, the transistors of the memory circuit may be relatively small while still providing sufficient current to heat the element 202, 204.
Furthermore, the resistance switching elements 202, 204 of
Having thus described at least one illustrative embodiment of the invention, various alterations, modifications and improvements will readily occur to those skilled in the art.
For example, while transistors 201 and 1012 are NMOS transistors, it will be apparent to those skilled in the art that this transistor could be implemented as a PMOS transistor. Furthermore, the transistor 201 is optional in all of the embodiments described herein.
Furthermore, it will be apparent to those skilled in the art that the control blocks 308 and 602 shown in
Furthermore, it will be apparent to those skilled in the art that, while the invention has been described in relation to a memory array and flip-flop, the memory cell described herein could be used in other types of memory devices, such as FPGAs etc.
It will be apparent to those skilled in the art that the ground voltage described herein may be at 0 V, or more generally at any supply voltage VSS, that could be different from 0 V.
Furthermore, while the various embodiments have been described in relation to MOS transistors, it will be apparent to those skilled in the art that the invention could be equally applied to other transistor technologies, such as bipolar transistors.
Furthermore, the features described in relation to the various embodiments could be combined in alternative embodiments in any combination.
Number | Date | Country | Kind |
---|---|---|---|
1150403 | Jan 2011 | FR | national |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/EP2012/050798 | 1/19/2012 | WO | 00 | 11/22/2013 |