This invention relates a resistance change memory device and programming method thereof.
There has been proposed a resistance change memory device, the resistance value of which is reversibly exchanged by applying voltage, current or heat, and one of states with the different resistance values is stored as data. It is noticed that this kind of memory device succeeds to the conventional flash memory. This resistance change memory is suitable for miniaturizing the cell size, and for constituting a cross-point cell array. In addition, it is easy to stack cell arrays.
There have already been proposed by us some three dimensional (3-D) cell array structures of this kind of memory devices. For example, refer to JP 2005-522045A (PCT/JP2003/000155), and JP 2006-514393A (PCT/JP2003/003257).
To make the best use of these properties, besides, to achieve high density and large capacity, it is effective to use such a multi-level data storage scheme that three or more resistance values are assigned to data. However, the resistance value of the variable resistance element in the resistance change memory will be set or reset in accordance with applied voltage or Joule's heat in such a way that, for example, charge movement occurs when the charge is activated to be over a certain potential barrier in the recording layer. Therefore, the data resistance value is statistically indefinite in principle, and specifically it is not easy in a multi level data storage scheme to set one or more medium resistance values between the highest resistance value and the lowest resistance value.
In accordance with one aspect of the invention, there is provided a method of programming a resistance change memory device including:
applying program voltage pulses to a memory cell for programming a target resistance value;
setting thermal relaxation times between the respective program voltage pulses; and
controlling the shape of each the program voltage pulse in accordance with the present cell's resistance value determined by the preceding program voltage pulse application.
In accordance with another aspect of the invention, there is provided a resistance change memory device including:
a memory cell array having resistance change memory cells arranged;
sense amplifier configured to compare cell's current with reference cell's current;
plural pulse generation circuits configured to generate program voltage pulses with different pulse widths, one of which is selected and applied to a selected memory cell for programming a target resistance value;
a reference resistor prepared to be coupled to the sense amplifier at each program-verify time for verifying the program state of the selected memory cell, a reference resistance values being settable in the reference resistor in accordance with a current resistance value of the selected memory cell; and
a resistance value programming logic circuit configured to switch multiple reference resistance values in the reference resistor in accordance with a verify-result with the sense amplifier, the verify-result being supplied for selecting one of the pulse generation circuits to be adapted for the following program voltage pulse application.
According to a first aspect of the present invention, for setting a stable data level, for example, a medium resistance value in a multi-level data storage scheme, it is used such a pulse control that a voltage pulse width at a program time is controlled in accordance with the resistance value obtained at the preceding program time, and thermal relaxation times are set between the respective voltage pulses for dispersing the Joule's heat generated in the memory cell to periphery.
According to a second aspect of the present invention, for making the resistance state changes constant at the respective program voltage pulse application times on the assumption that the resistance state change is mainly based on physical processes based on the Joule's heat and the cell's voltage, the pulse width is decided in such a way that the Joule's heat generated through the respective voltage pulse application times is made to be substantially constant, or the product of voltage by pulse width thereof is also made to be substantially constant.
Therefore, the following technical elements will be used in the embodiments described below.
(1) In a resistance change memory device with a recording layer, the resistance state of which is changed due to voltage, current or heat, for storing multi-level data in a memory cell by setting three of more resistance value levels, the resistance value state transition for setting a target resistance value in a memory cell is performed by applying multiple voltage pulses, and the pulse shape will be determined in accordance with the result of the preceding voltage pulse application.
(2) With respect to the program voltage pulses applied to set a target resistance value in a memory cell, thermal relaxation times are set between adjacent program voltage pulses for relaxing or dispersing the heat generated in the memory cell to periphery.
(3) To judge multiple resistance values to be set in a memory cell, multiple resistance value sections are defined by multiple boundary resistance values, which are set as reference resistance values between the multiple resistance values. Comparing a cell resistance value with the boundary resistance values, it is judged which resistance value section the cell's resistance value belongs to in accordance with which of the cell's resistance value and the boundary resistance value is higher or lower.
(4) The boundary resistance values (i.e., the reference resistance values) are set by selecting the number of parallel-connected cells with a high resistance value.
(5) In a resistance change memory device, which has a recording layer, the resistance value of which is changed by applying voltage, current or heat, to store multi-level data in a memory cell, while multiple program voltage pulses are sequentially applied to the memory cell so as to change the resistance value from the initial and lowest resistance value state to a target value selected in multiple and higher resistance values, each voltage pulse shape is determined in accordance with the result of the preceding program voltage pulse in such a way that the Joule's heat generated in the cell is controlled to be substantially constant during the programming period.
(6) In a resistance change memory device, which has a recording layer, the resistance value of which is changed by applying voltage, current or heat, to store multi-level data in a memory cell, while multiple program voltage pulses are sequentially applied to the memory cell so as to change the resistance value from the initial and highest resistance value state to a target value selected in multiple and lower resistance values, each voltage pulse shape is determined in accordance with the result of the preceding program voltage pulse in such a way that the voltage integration value is controlled to be substantially constant during the programming period.
It should be noted that the present invention is adaptable to not only a multi-level data storage scheme but also a binary data storage scheme. For example, suppose such a case that one or more medium resistance values to be set between the lowest resistance value and the highest resistance value are not usable as data because these are not sufficiently stable. In this case, using only two data states, the lowest resistance value and the highest resistance value, binary data storage may be performed with the same sequence as the embodiment of the multi-level storage scheme, so as to obtain the target resistance value gradually and precisely.
Illustrative embodiments of this invention will be explained with reference to the accompanying drawings below.
The variable resistance element VR has, for example, a structure containing electrode/transition metal oxide/electrode, so that the metal oxide (i.e., recording layer) is made to be changed in resistance in accordance with applied voltage, current and heat, thereby storing a resistance value state as data in a nonvolatile manner.
The stacked structure of the memory cell MC is, for example, shown in
In this embodiment, memory cell MC stores multi-level data such as four-level data. To program such the multilevel data, a certain program pulse control is necessary in consideration of resistance change properties of the memory cell MC. Prior to the explanation of the program pulse control, the resistance change properties of the memory cell will be explained.
With reference to
If strictly describing, memory cell's voltage and resistance value used here are those of variable resistance element VR and access element Di. However in the following explanation, memory cell's voltage and resistance value will be used on the condition that voltage and resistance value of access element Di is neglected. Assuming that memory cell's voltage and resistance value are expressed by “v” and “R”, respectively, there are relationships shown in the following Expression (1) with a proportional parameter β.
R=βr
v=Vβ/(1+β) Expression (1)
Power “P” generated in the memory cell will be expressed by the following Expression (2), in which ε is a function of β, i.e., ε=β/(1+β)2.
As shown in
In a range of β<1, ε itself becomes small. However, comparing ε with voltage “v” in this case, as β is decreased, power contributions become larger than the voltage contributions like that in the range of β>1 because there is a relationship of v/P ∝1+β, i.e., v/P is decreased with β decreasing, in this range.
As described above, the heat generated in the memory cell (i.e., recording layer) becomes different in accordance with resistance value thereof, and the influence on the memory cell's resistance value based on the heat is changed in accordance with the resistance value itself. Therefore, to obtain a target resistance value, an appropriate voltage generation method is needed.
Explaining in detail,
In the operation shown in
By contrast, in the operation shown in
Not only in case it starts from the high resistance value state but also in case it starts from the low resistance value state, the resistance value will be settled down to be substantially constant. The finally settled down resistance value or initial resistance value changing rate depends on the cell's environment, so that the resistance value will be variable with a certain indefinite component Δ R. Therefore, it becomes difficult to program three or more target resistance values constituting multi-level data based on the relationship between the resistance value and voltage application time.
In consideration of the above-described program properties of the resistance change memory device, a program method in accordance with this embodiment is performed as follows: output voltage “V” of the program voltage generation circuit is set to be constant, and multiple voltage pulse applications are performed under the pulse width control, thereby setting a stable target voltage(s).
Since the cell's resistance value increasing is a result of overcoming a potential barrier due to the Joule's heat, pulse width τ is determined to make the Joule's heat generated in each pulse width constant. As explained above, since P=(V2/r)ε, τP is constant, and Σε is also constant, so that τ is substantially proportional to β based on the above-described relationship between ε and β.
Therefore, if the resistance value becomes ten times, it becomes necessary to use ten times pulse width for generating a constant heat. In consideration of this point, it is practical to divide a resistance value range between the uppermost resistance value and the initial resistance value into multiple resistance value sections, and set the pulse widths for every section. For example, as shown in
R0>R≧R1→τ1
R1>R≧R2→τ2
R2>R≧R3→τ3
R3>R→τ4 Expression (3)
The pulse width τ is set to make the Joule's heat at a typical resistance value in the corresponding section constant, i.e., to satisfy the relationship of τ4<τ3<τ2<τ1. Explaining in detail, in
Target resistance values used in multi-level data are selected from the resistance sections shown in
In case data levels L1 and L2, i.e., medium resistance values, are not stable, using only two data states, L3 (the lowest resistance value) and L0 (the highest resistance value), binary data storage will be performed with the same control as the embodiment of the multi-level storage scheme.
In this case also, the constant voltage source “V” of the program voltage generation circuit is set at a high and constant value, and cell's resistance value is set with the voltage pulse width control and the number of pulses. Further, there is kept a thermal relaxation time between each adjacent pulses, which serves for resetting the thermal environment of the cell after each pulse application.
Since the cell's resistance value decreasing is a result of overcoming a potential barrier due to the cell's voltage, pulse width τ is determined to make the product of the cell's voltage “v” by the pulse width τ constant. As explained above, since v=Vβ/(β+1), τv is constant, then τβ becomes about β+1, so that τ is substantially constant without regard to the change of β when β>>1.
In case the resistance value becomes extremely small, and then β becomes extremely small, it is in need of setting τ to be large in the above-described condition. At this time, the influence of the Joule's heat becomes large. Therefore, it is desirable to set the lower limit of the resistance value and the upper limit of the voltage pulse width, whereby the low resistance value side is to be not used in a multi-level data programming mode with a high initial resistance value.
It is practical to divide a target voltage range into multiple sections, and set the pulse widths for every section. For example, as shown in
R≧R0→τ4
R0>R≧R1→τ3
R1>R≧R2→τ2
R2>R≧R3→τ1 Expression (4)
Pulse width τ is set to satisfy τv=constant, so that the effect of voltage “v” applied to a typical memory cell in the corresponding resistance value section becomes constant. That is, it is set to satisfy the relationship of τ4<τ3<τ2<τ1. Explaining in detail, in
Target resistance values used in multi-level data are selected from the resistance sections shown in
In case multi-level data is set by use of resistance value increasing, the initial resistance value is set as low as possible, and the resistance value is decreased from it. In case multi-level data is set by use of resistance value decreasing, the initial resistance value is set as high as possible, and the resistance value is increased from it. That is, a cell's erase state is set as the lowest resistance value state in the resistance value increasing mode while it is set as the highest resistance value state in the resistance value decreasing mode.
Next, a program-verify (i.e., cell resistance verifying) operation will be explained. The cell resistance verify is for verifying whether the cell's resistance value is set in a certain resistance value section or not as a result of every program voltage application. There is prepared here a differential sense amplifier, which detects a cell current difference between a selected memory cell and a reference cell. The selected memory cell and the reference cell are coupled to a selected word line WL and a reference word line RWL, respectively, which are driven by read voltage Vread.
In the scheme shown in
In the scheme shown in
It should be noted here that when the cell resistance value is lower than the reference resistance value in the resistance value decrease mode, it is judged “GO” while when the cell resistance value is higher than the reference resistance value in the resistance value increase mode, it is judged “GO”.
The reference resistance switching operation will be explained in detail below. As shown in
Similarly, τ2 pulse generation circuit 53c is selected in response to R1 GO, R2 NOGO in the decrease mode or in response to R2 GO, R1 NOGO in the increase mode. τ1 pulse generation circuit 53d is selected in response to R2 GO, R3 NOGO in the decrease mode or in response to R1 GO, R0 NOGO in the increase mode.
The circuit blocks for judging the above-described GO and NOGO, i.e., GO/NOGO judging circuit 52 and reference resistance switching circuit 51, are arranged to constitute a resistance value program logic circuit 50.
As shown in
If the judgment result is No, compare “i” with “m+1” (step S14). If Yes (i.e., matching is judged), this mode ends while if No (i.e., matching is not judged), a pulse generation circuit is selected in accordance with Ri−1 GO and Ri NOGO (step S15).
As shown in
If the judgment result is No, compare “i” with “m” (step S24. If Yes (i.e., matching is judged), this mode ends while if No (i.e., matching is not judged), a pulse generation circuit is selected in accordance with Ri+1 GO and Ri NOGO (step S25). After the pulse generating, go to the judgment loop again.
In the above-described embodiment, a pulse width, i.e., a pulse-keeping time, is used as a pulse control factor. By contrast, it is effective to use a pulse height or a pulse shape, i.e., a composition of the pulse height and pulse width as the pulse control factor. This is easily possible by changing the pulse generation circuit and voltage source circuit. In this case, based on the resistance value as a result of the pulse application, the successive pulse state will be determined as similar to the above-described embodiment.
In this case, to make the Joule's heat generated in a cell constant, it is effective to apply such a pulse shape at each cycle as to make a time-integration value of cell's power constant, or make a time-integration value of cell's voltage constant.
This invention is not limited to the above-described embodiment. It will be understood by those skilled in the art that various changes in form and detail may be made without departing from the spirit, scope, and teaching of the invention.
There is provided a resistance change memory device, in which data is stably programmable.
Number | Date | Country | Kind |
---|---|---|---|
2007-186996 | Jul 2007 | JP | national |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/JP2008/061935 | 6/25/2008 | WO | 00 | 1/12/2010 |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO2009/011221 | 1/22/2009 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
6141241 | Ovshinsky et al. | Oct 2000 | A |
6888745 | Ehiro et al. | May 2005 | B2 |
7394680 | Toda et al. | Jul 2008 | B2 |
7400522 | Toda et al. | Jul 2008 | B2 |
7423901 | Sutardja | Sep 2008 | B2 |
7623370 | Toda et al. | Nov 2009 | B2 |
20060126380 | Osada et al. | Jun 2006 | A1 |
20070077699 | Gordon et al. | Apr 2007 | A1 |
20070285963 | Toda et al. | Dec 2007 | A1 |
20070285968 | Toda et al. | Dec 2007 | A1 |
20070285969 | Toda et al. | Dec 2007 | A1 |
20070285971 | Toda et al. | Dec 2007 | A1 |
20080002455 | Toda et al. | Jan 2008 | A1 |
20080002457 | Toda et al. | Jan 2008 | A1 |
20090122598 | Toda et al. | May 2009 | A1 |
Number | Date | Country |
---|---|---|
2002-203392 | Jul 2002 | JP |
2002 541613 | Dec 2002 | JP |
2004-342291 | Dec 2004 | JP |
2006-510153 | Mar 2006 | JP |
2006 155700 | Jun 2006 | JP |
03 085675 | Oct 2003 | WO |
2004 084229 | Sep 2004 | WO |
Number | Date | Country | |
---|---|---|---|
20100188885 A1 | Jul 2010 | US |