WO2017033534A1 - メモリ、情報処理システムおよびメモリの制御方法 - Google Patents

メモリ、情報処理システムおよびメモリの制御方法 Download PDF

Info

Publication number
WO2017033534A1
WO2017033534A1 PCT/JP2016/067623 JP2016067623W WO2017033534A1 WO 2017033534 A1 WO2017033534 A1 WO 2017033534A1 JP 2016067623 W JP2016067623 W JP 2016067623W WO 2017033534 A1 WO2017033534 A1 WO 2017033534A1
Authority
WO
WIPO (PCT)
Prior art keywords
voltage
memory
memory cell
threshold voltage
cell
Prior art date
Application number
PCT/JP2016/067623
Other languages
English (en)
French (fr)
Inventor
晴彦 寺田
Original Assignee
ソニー株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ソニー株式会社 filed Critical ソニー株式会社
Priority to US15/749,624 priority Critical patent/US11081178B2/en
Publication of WO2017033534A1 publication Critical patent/WO2017033534A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0069Writing or programming circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0004Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements comprising amorphous/crystalline phase transition cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/003Cell access
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/004Reading or sensing circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0059Security or protection circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0061Timing circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/14Power supply arrangements, e.g. power down, chip selection or deselection, layout of wirings or power grids, or multiple supply levels
    • G11C5/147Voltage reference generators, voltage or current regulators; Internally lowered supply levels; Compensation for voltage drops
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/004Reading or sensing circuits or methods
    • G11C2013/0054Read is performed on a reference element, e.g. cell, and the reference sensed value is used to compare the sensed value of the selected cell
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2213/00Indexing scheme relating to G11C13/00 for features not covered by this group
    • G11C2213/10Resistive cells; Technology aspects
    • G11C2213/15Current-voltage curve
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2213/00Indexing scheme relating to G11C13/00 for features not covered by this group
    • G11C2213/70Resistive array aspects
    • G11C2213/76Array using an access device for each cell which being not a transistor and not a diode
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2213/00Indexing scheme relating to G11C13/00 for features not covered by this group
    • G11C2213/70Resistive array aspects
    • G11C2213/79Array wherein the access device being a transistor
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • G11C7/227Timing of memory operations based on dummy memory elements or replica circuits

Definitions

  • This technology relates to a memory, an information processing system, and a memory control method.
  • the present invention relates to a memory including a memory cell having a control element that changes from a non-conductive state to a conductive state according to an applied voltage, an information processing system, and a memory control method.
  • a memory cell in which a resistance change element whose resistance value reversibly changes and a control element for controlling the resistance change element at the time of data writing and reading are connected in series is two-dimensionally arranged.
  • Memory is being used.
  • the resistance change element is an element that can change a resistance value by an applied voltage or the like, and stores a state in which the resistance is high and a state in which the resistance is low, for example, corresponding to values “0” and “1”, respectively. It is an element.
  • a memory a memory constituted by ReRAM (Resistive RAM), PCRAM (Phase-Change RAM), MRAM (Magnetoresistive RAM) and the like is known.
  • the control element is an element that controls a voltage applied to the variable resistance element.
  • a three-terminal control element having a control electrode, such as a MOS transistor, or a two-terminal control element simplified by omitting the control electrode is used.
  • a two-terminal control element is an element that changes between a non-conduction state and a conduction state with a threshold as a boundary in accordance with an applied voltage. Data is read from the memory cell using the two-terminal control element by the following procedure. First, a voltage is applied to the memory cell to turn on the control element, that is, turn it on. Next, it is determined whether the resistance value of the variable resistance element is high or low.
  • the resistance change element described above has a problem that the electrical characteristics change while the structure is simple and accessible at high speed.
  • PCRAM which is a phase change memory
  • the threshold value which is a resistance value for determining whether the resistance of the variable resistance element is high or low
  • the read voltage which is a voltage applied to the variable resistance element, is changed according to the elapsed time from the data writing, and it is determined whether the resistance of the variable resistance element is high or low.
  • a two-terminal control element is an element that changes from a non-conductive state to a conductive state when a voltage exceeding a threshold is applied, and returns to a non-conductive state when voltage application is stopped. That is, like a resistance change element, it is an element whose resistance value changes according to an applied voltage.
  • the threshold voltage of the two-terminal control element changes according to the elapsed time from the previous ON operation. For example, when the threshold voltage changes to a higher threshold voltage than the previous ON operation, even if the same voltage as the previous voltage is applied to the memory cell, the applied voltage is relatively lower than the changed threshold voltage, and the control element is sufficiently It becomes impossible to conduct.
  • the present technology was created in view of such a situation, and aims to improve the reliability of stored data without increasing power consumption when the threshold value of a control element in a memory cell changes. To do.
  • the present technology has been made to solve the above-described problems.
  • the first aspect of the present technology changes from a non-conduction state to a conduction state according to an applied voltage, with the threshold voltage as a boundary, and the conduction state.
  • a memory cell that changes to a high resistance state and a low resistance state according to a voltage applied in a state, and a reference element that changes from a non-conduction state to a conduction state according to the applied voltage at a reference threshold voltage as a boundary
  • a memory comprising: a reference cell; and an access control unit that estimates a reference threshold voltage measured in the reference cell as a threshold voltage of the memory cell and applies a voltage to the memory cell when accessing the memory cell; This is a memory control method.
  • the threshold voltage of the memory cell is estimated based on the reference threshold voltage, and the voltage is applied to the memory cell.
  • the memory cell includes a control element that changes from the non-conductive state to the conductive state in response to an applied voltage, and the high voltage in response to the applied voltage. You may provide the resistance change element which changes to a resistance state and the said low resistance state. This brings about the effect that the threshold voltage of the control element of the memory cell is estimated by the reference threshold voltage.
  • the access control unit may measure the reference threshold voltage by changing the reference element from the non-conductive state to the conductive state when reading. This brings about the effect
  • the data cell is accessed in units of pages divided by a page size, the reference cell is arranged for each page, and the access control unit is configured for the page for each page.
  • the reference threshold voltage may be estimated as the threshold voltage of the memory cell, and the voltage may be applied to the memory cell. Thereby, the reference threshold voltage is measured for each page, and the threshold voltage of the memory cell is estimated.
  • a plurality of the reference cells may be arranged for each page, and the access control unit may estimate a threshold voltage of the memory cell based on a reference threshold voltage in the plurality of reference cells. .
  • the threshold voltage of the memory cell is estimated from the plurality of measured reference threshold voltages.
  • the access control unit may measure the reference threshold voltage by changing the reference element from the non-conductive state to the conductive state when reading on the page. . This brings about the effect
  • the access control unit sets the memory cell in the low resistance state in the page to the conductive state when the memory cell in the high resistance state exists after writing in the page.
  • the reference threshold voltage may be estimated as the threshold voltage of the memory cell in the page by changing the elapsed time after the change to be approximately equal to or shorter than that of the memory cell in the high resistance state. This brings about the effect
  • the first aspect further includes a plurality of row signal lines and a plurality of column signal lines arranged in an XY matrix, wherein the memory cell includes the plurality of row signal lines and the plurality of column signal lines.
  • a plurality of row signal lines at the intersection and connected to one of the plurality of row signal lines at the intersection and one of the plurality of column signal lines at the intersection, and the reference cell is the plurality of memory cells.
  • the access control unit estimates a reference threshold voltage of the reference cell arranged for each of the plurality of memory cells as a threshold voltage of the memory cell, and applies a voltage to the memory cell. Good.
  • the threshold voltage of the memory cells wired by the plurality of row signal lines and the plurality of column signal lines is estimated by the reference threshold voltage, and the voltage is applied to the memory cells.
  • the access control unit may perform the access by selecting one of the plurality of row signal lines and one of the plurality of column signal lines. As a result, the threshold voltage of the memory cell connected to the selected row signal line and the selected column signal line is estimated based on the reference threshold voltage.
  • the access control unit includes a selected row signal line that is one of the plurality of row signal lines and a selected column signal line that is one of the plurality of column signal lines.
  • a half-selected row memory cell that is the memory cell connected between the selected row signal line and the column signal line excluding the selected column signal line when writing the memory cell connected between
  • a threshold voltage of a half-selected column memory cell that is the memory cell connected between the selected column signal line and the row signal line excluding the selected row signal line is estimated by the reference threshold voltage.
  • a voltage may be applied to the half-selected row memory cell and the half-selected column memory cell.
  • the threshold voltage of the half-selected row memory cell and the half-selected column memory cell is estimated based on the reference threshold voltage.
  • an error detection / correction unit that performs error detection and error correction of read data related to the access
  • the access control unit is configured to detect errors in the read data in the error detection / correction unit.
  • the reference threshold voltage may be estimated as the threshold voltage of the memory cell and a voltage may be applied to the memory cell. Thereby, when an error is detected, the threshold voltage of the memory cell is estimated by the reference threshold voltage.
  • the second aspect of the present technology changes from a non-conductive state to a conductive state with a threshold voltage as a boundary in accordance with an applied voltage, and has a high resistance state and a low resistance in accordance with the voltage applied in the conductive state.
  • a memory cell that changes to a resistance state a reference cell that includes a reference element that changes from a non-conduction state to a conduction state according to an applied voltage at a reference threshold voltage as a boundary, and a reference threshold voltage measured in the reference cell.
  • An information processing system comprising: a memory including an access control unit that estimates a threshold voltage of the memory cell and applies a voltage to the memory cell when accessing the memory cell; and a host computer that accesses the memory is there. Thereby, the threshold voltage of the memory cell is estimated based on the reference threshold voltage, and the voltage is applied to the memory cell.
  • the threshold value of the control element in the memory cell changes, an excellent effect of improving the reliability of the stored data without increasing the power consumption can be obtained.
  • the effects described here are not necessarily limited, and may be any of the effects described in the present disclosure.
  • composition of an information processing system in an embodiment of this art. It is a figure showing an example of composition of access control part 200 in a 1st embodiment of this art. It is a figure showing an example of composition of memory array 300 in a 1st embodiment of this art. It is a figure showing an example of composition of memory array unit 310 in a 1st embodiment of this art. It is a figure showing an example of composition of reference array unit 390 in a 1st embodiment of this art. It is a figure showing an example of composition of a memory cell and a reference cell in a 1st embodiment of this art. It is a figure showing an example of the characteristic of variable resistance element 302 in a 1st embodiment of this art.
  • control element 301 It is a figure showing an example of the characteristic of control element 301 in a 1st embodiment of this art. It is a figure which shows the applied voltage of the row signal line and column signal line in embodiment of this technique. It is a figure which shows the applied voltage of the memory cell in 1st Embodiment of this technique. It is a figure showing an operation code in a 1st embodiment of this art. It is a figure showing the output voltage of applied voltage generation part 250 in a 1st embodiment of this art. It is a figure showing an example of a processing procedure of read-out processing in a 1st embodiment of this art. It is a figure showing an example of a processing procedure of memory array unit reading processing (Step S910) in a 1st embodiment of this art.
  • Step S920 It is a figure showing an example of a processing procedure of memory cell reading processing (Step S920) in a 1st embodiment of this art. It is a figure showing an example of a processing procedure of write-in processing in a 1st embodiment of this art. It is a figure showing an example of a processing procedure of memory array unit writing processing (Step S940) in a 1st embodiment of this art. It is a figure showing the relation between the applied voltage and current of a memory cell in a 1st embodiment of this art. It is a figure showing an example of a processing procedure of memory array unit reading processing (Step S910) in a 2nd embodiment of this art. It is a figure showing an example of composition of memory array 300 in a 3rd embodiment of this art.
  • Step S840 non-selection line reset voltage setting processing
  • Step S850 processing procedure of code setting processing at the time of reset
  • FIG. 1 is a diagram illustrating a configuration example of an information processing system according to an embodiment of the present technology.
  • the information processing system in FIG. 1 includes a host computer 10, a memory controller 20, and a memory 30.
  • the host computer 10 performs various processes in the information processing system.
  • the host computer 10 accesses the memory 30 by issuing a command such as writing or reading via the memory controller 20.
  • the signal line 19 is a signal line that electrically connects the host computer 10 and the memory controller 20.
  • the memory controller 20 controls the memory 30.
  • the memory controller 20 interprets write and read commands issued from the host computer 10 and requests the memory 30 for write and read requests based on the commands.
  • the memory 30 stores data. Based on the request requested from the memory controller 20, this data is accessed. At this time, data is transferred between the memory 30 and the memory controller 20.
  • the memory 30 is assumed to be a memory constituted by a ReRAM that is a nonvolatile memory. This ReRAM is a resistance change type memory, and is a memory having a resistance change element that performs storage by reversibly changing a resistance value.
  • the signal line 29 is a signal line that electrically connects the memory controller 20 and the memory 30.
  • the host computer 10 When the host computer 10 performs writing, the host computer 10 issues a write command, accompanying write data, a write destination address, and the number of write data to the memory controller 20.
  • the memory controller 20 interprets the issued write command, and requests a write request from the memory 30 based on the write data, the write destination address, and the number of write data associated therewith.
  • the memory 30 performs writing based on this request.
  • the host computer 10 issues a read command, a read destination address accompanying it, and the number of read data to the memory controller 20.
  • the memory controller 20 interprets this command, and requests a read request from the memory 30 based on the read destination address and the number of read data associated therewith.
  • the memory 30 performs reading based on this request, and outputs the read data to the memory controller 20.
  • the memory controller 20 outputs the output data to the host computer 10 as read data.
  • the memory controller 20 includes a host computer interface 21, a memory access control unit 22, an error detection / correction unit 23, and a memory interface 24.
  • the host computer interface 21 is an interface for exchanging with the host computer 10.
  • the memory access control unit 22 controls access to the memory 30.
  • the memory access control unit 22 controls the entire memory controller 20, interprets a command issued by the host computer 10, and generates a request based on the command.
  • the error detection / correction unit 23 performs encoding for the write data and decoding for the read data.
  • encoding is a process of adding parity to write data to make an error detection and correction code (ECC: Error detection and code Correction).
  • ECC Error detection and code Correction
  • a parity generated using a BCH (Bose-Chaudhuri-Hocquenghem) code can be used.
  • Decoding is a process of extracting original data from the ECC. At the time of this decoding, data error detection and error correction are performed.
  • the memory interface 24 is an interface for exchanging with the memory 30.
  • the bus 28 is a bus that interconnects the units of the memory controller 20.
  • the signal line 29 is a signal line that electrically connects the memory controller 20 and the memory 30.
  • the memory 30 includes a memory controller interface 100, an access control unit 200, and a memory array 300.
  • the memory controller interface 100 is an interface that exchanges data with the memory controller 20.
  • the access control unit 200 controls the entire memory 30.
  • the access control unit 200 interprets the request requested by the memory controller 20 and writes / reads data to / from the memory array 300. Details of the configuration of the access control unit 200 will be described later.
  • the memory array 300 is controlled by the access control unit 200 and stores data.
  • the memory array 300 is accessed by a page address in units of pages. It is assumed that the size of write data and read data in the request generated by the memory controller 20 is one page. Details of the configuration of the memory array 300 will be described later.
  • FIG. 2 is a diagram illustrating a configuration example of the access control unit 200 according to the first embodiment of the present technology.
  • the access control unit 200 includes a write data holding unit 210, a read data holding unit 220, an operation code holding unit 230, a memory access processing unit 240, and an applied voltage generation unit 250.
  • the write data holding unit 210 holds write data for the memory array 300.
  • the write data holding unit 210 holds one page of write data accompanying the write request requested by the memory controller 20.
  • the read data holding unit 220 holds read data from the memory array 300.
  • the read data holding unit 220 holds one page of read data based on the read request requested by the memory controller 20. Thereafter, the read data is output to the memory controller 20 by the memory access processing unit 240.
  • the read data holding unit 220 further holds read data by reading data performed prior to data writing in the write request processing.
  • the operation code holding unit 230 holds an operation code.
  • the operation code represents an instruction for the memory array 300.
  • the operation code holding unit 230 holds an operation code for each memory array unit and reference array unit included in the memory array 300 described later.
  • the operation code holding unit 230 outputs the held operation code to a corresponding memory array unit or the like. Details of the operation code will be described later.
  • the applied voltage generation unit 250 generates a voltage to be applied to the memory array 300.
  • the applied voltage generation unit 250 generates an applied voltage based on the control code output from the memory access processing unit 240. Details of the processing in the applied voltage generation unit 250 will be described later.
  • the memory access processing unit 240 performs access processing for the memory array 300.
  • the memory access processing unit 240 controls the entire access control unit 200.
  • the memory access processing unit 240 interprets the input request and outputs an operation code, an enable signal, and an address to the memory array 300.
  • the enable signal is a signal instructing application of the voltage generated by the applied voltage generation unit 250 to a memory cell of the memory array 300 described later.
  • the memory access processing unit 240 exchanges data with the memory array 300 bidirectionally. Further, the memory access processing unit 240 controls the voltage applied to the memory cells of the memory array 300 by outputting a control code and controlling the applied voltage generating unit 250. Details of the processing in the memory access processing unit 240 will be described later.
  • FIG. 3 is a diagram illustrating a configuration example of the memory array 300 according to the first embodiment of the present technology.
  • the memory array 300 includes memory array units # 1 (310) to # 8 (380) and a reference array unit 390.
  • Memory array units # 1 (310) to # 8 (380) are configured by arranging memory cells storing 1-bit data in an array.
  • the memory cell includes a control element and a resistance change element, which will be described later.
  • the memory array units # 1 (310) to # 8 (380) apply voltages to the memory cells based on the operation code, enable signal, and address output from the memory access processing unit 240.
  • These memory array units # 1 (310) to # 8 (380) are simultaneously accessed by inputting the same address. That is, the number of these memory array units corresponds to the number of bits per page. In the example of the figure, 8 bits correspond to one page.
  • the reference array unit 390 is configured by arranging reference cells in an array.
  • the reference cell includes a reference element for estimating the threshold voltage of the control element of the memory cell. Details of the configuration of the reference cell will be described later.
  • FIG. 4 is a diagram illustrating a configuration example of the memory array unit 310 according to the first embodiment of the present technology.
  • the memory array unit 310 includes an array driving unit 311, row signal lines 312, column signal lines 313, and memory cells 314 to 317.
  • the memory array unit 310 shown in the figure includes four memory cells and two row signal lines 312 and column signal lines 313, respectively.
  • the memory array units # 2 (320) to # 8 (380) have the same configuration as the memory array unit 310 in FIG.
  • the row signal line 312 and the column signal line 313 transmit voltages applied to the memory cells 314 to 317, respectively. These are arranged in an XY matrix.
  • the memory cells 314 to 317 include a resistance change element and a control element, and store 1-bit data.
  • the resistance change element is an element that changes between a high resistance state and a low resistance state in accordance with an applied voltage. Data is stored by switching between the high resistance state and the low resistance state.
  • the control element is an element that changes from a non-conductive state to a conductive state with a threshold voltage as a boundary according to an applied voltage. The voltage applied to the variable resistance element is controlled by this control element.
  • the memory cells 314 to 317 are arranged at the intersections of the row signal lines 312 and the column signal lines 313 arranged in the XY matrix. Furthermore, one end of each of the memory cells 314 to 317 is connected to the row signal line 312 and the other end is connected to the column signal line 313. Specifically, one end of the memory cell 314 is connected to the row signal line labeled “RL0” in the row signal line 312, and the other of the column signal lines labeled “CL0” in the column signal line 313. Are connected at one end. Details of the configuration of the memory cells 314 to 317 will be described later.
  • the array driving unit 311 drives the memory cells 314 to 317.
  • the array driving unit 311 selects one signal line from each of the row signal line 312 and the column signal line 313 based on the address output by the access control unit 200.
  • the selected row signal line 312 and the selected column signal line 313 are referred to as a selected row signal line and a selected column signal line, respectively.
  • the array driving unit 311 outputs the applied voltage generated by the applied voltage generating unit 250 to the selected row signal line and the selected column signal line.
  • a voltage is applied to the memory cells 314 and the like connected to the selected row signal line and the selected column signal line, and writing and reading are performed.
  • the array drive unit 311 performs writing and reading by changing the polarity of the voltage applied to the memory cells 314 to 317 based on the operation code output from the access control unit 200.
  • the array drive unit 311 exchanges data related to writing and reading with the access control unit 200 in both directions.
  • the array driver 311 further applies a voltage to the row signal lines 312 other than the selected row signal lines and the column signal lines 313 other than the selected column signal lines.
  • the row signal lines 312 other than the selected row signal line are referred to as non-selected row signal lines
  • the column signal lines 313 other than the selected column signal line are referred to as non-selected column signal lines. Details of the voltages applied to these selected row signal lines will be described later.
  • FIG. 5 is a diagram illustrating a configuration example of the reference array unit 390 according to the first embodiment of the present technology.
  • the reference array unit 390 includes an array driving unit 391, a row signal line 392, a column signal line 393, and reference cells 394 to 397.
  • the reference cells 394 to 397 are provided with a reference element.
  • the reference element is an element that changes from a non-conductive state to a conductive state with a reference threshold voltage as a boundary according to an applied voltage.
  • the reference threshold voltage is estimated as the threshold voltage of the control element included in the memory cells 314 to 317 described with reference to FIG. 4, and the voltage is applied to the memory cell 314 and the like at the time of access. Therefore, the reference cells 394 to 397 have a one-to-one correspondence with the memory cells 314 to 317, and the reference threshold voltages in the corresponding reference cells 394 to 397 are measured prior to accessing the memory cell 314 and the like.
  • the array driver 391 applies the voltage generated by the applied voltage generator 250 to the reference cells 394 to 397 to perform reading, and outputs the read data to the access controller 200.
  • the reference threshold voltage is measured by examining the change in the read data while increasing the voltage applied to the reference cell 394 or the like.
  • the rest of the configuration of the array drive unit 391 is the same as the configuration of the array drive unit 311 and will not be described.
  • the configuration of the row signal line 392 and the column signal line 393 and the arrangement of the reference cells 394 to 397 are the same as the arrangement of the row signal line 312 and the column signal line 313 and the arrangement of the memory cells 314 to 317 described in FIG. Description is omitted.
  • FIG. 6 is a diagram illustrating a configuration example of the memory cell and the reference cell according to the first embodiment of the present technology.
  • a represents a configuration example of a memory cell, and represents an example of a memory cell including a control element 301 and a resistance change element 302 connected in series.
  • the resistance change element 302 has two states, a high resistance state and a low resistance state, as described above, and stores data by switching between these two states.
  • the high resistance state is referred to as HRS (High Resistance State)
  • the low resistance state is referred to as LRS (Low Resistance State).
  • An example of the variable resistance element 302 is an element in which an ion supply layer and an insulating layer are stacked. When the ions supplied from the ion supply layer are diffused into the insulating layer, the resistance change element 302 becomes LRS. On the contrary, when the ions diffused in the insulating layer return to the ion supply layer, the resistance change element 302 becomes HRS.
  • This ion diffusion or the like changes depending on the polarity of the write voltage applied to the resistance change element 302. That is, when a write voltage is applied in the direction in which ions diffuse, the resistance change element 302 can be changed from HRS to LRS. On the other hand, when a reverse polarity write voltage is applied, the resistance change element 302 returns from LRS to HRS. Thus, data is written by reversibly changing the variable resistance element 302 to HRS and LRS. Note that data can be read by applying a read voltage whose absolute value is lower than the write voltage to the resistance change element 302 and determining HRS or LRS based on the flowing current value.
  • the control element 301 has two states, a non-conduction state and a conduction state as described above, and controls the voltage applied to the resistance change element 302.
  • the control element 301 has a non-linear relationship between the applied voltage and the flowing current, and changes from a non-conducting state to a conducting state by applying a voltage equal to or higher than the threshold voltage.
  • the application of voltage to the control element 301 in the conductive state is stopped, the original non-conductive state is restored. That is, by changing the voltage to be applied, the control element 301 reversibly changes between a non-conduction state and a conduction state.
  • control element 301 is a bidirectional element, and can be reversibly changed between a non-conduction state and a conduction state even when a reverse polarity voltage is applied.
  • An example of the control element 301 having such a property is a bidirectional diode.
  • B and c in the figure represent the configuration of the reference cell.
  • B in the figure represents an example of a reference cell configured by a reference element 303 and a resistance change element 302 connected in series.
  • the reference element 303 an element having the same configuration as that of the control element 301 can be used.
  • a reference cell c in FIG. 4 represents an example of a reference cell configured by the reference element 303.
  • FIG. 7 is a diagram illustrating an example of characteristics of the variable resistance element 302 according to the first embodiment of the present technology.
  • This figure is a graph showing the distribution of resistance values of the variable resistance element 302.
  • a graph 501 represents a distribution in the case of LRS
  • a graph 502 represents a distribution in the case of HRS.
  • the dotted line described in the figure represents a threshold value for separating LRS and HRS.
  • HRS and LRS When the resistance of the resistance change element 302 is higher and lower than the resistance value corresponding to this threshold, it can be determined as HRS and LRS, respectively.
  • the resistance change element 302 stores 1-bit data by associating these LRS and HRS with logical values.
  • LRS and HRS can correspond to values “1” and “0”, respectively.
  • LRS and HRS can be made to correspond to values “0” and “1”, respectively.
  • LRS and HRS correspond to values “1” and “0”, respectively.
  • the process of transition from HRS to LRS is referred to as “set”, and the process of transition from LRS to HRS is referred to as “reset”.
  • the polarity of the voltage applied to the resistance change element 302 is different between setting and resetting.
  • this voltage is referred to as a program voltage.
  • the array driving unit 311 described with reference to FIG. 4 calculates the resistance value of the resistance change element 302 from the current flowing in the memory cell when reading, and compares this resistance value with the resistance value corresponding to the above threshold value. To read data. It is also possible to read from the resistance change element 302 by applying a voltage having the same polarity as that of the reset.
  • the memory cell is configured by connecting the control element 301 and the resistance change element 302 in series, the voltage applied to the memory cell is controlled by the control element 301 and the resistance change element 302.
  • the voltage is divided based on the resistance ratio.
  • it is necessary to apply the program voltage to the resistance change element 302 by making the control element 301 conductive. Therefore, it is necessary to apply a write voltage obtained by adding the threshold voltage of the control element 301 and the program voltage to the memory cell.
  • the resistance change element 302 As described above, a voltage lower than the program voltage is applied to the memory cell at the time of reading.
  • the resistance change element 302 is an HRS
  • a higher voltage is divided with respect to the resistance change element 302 than in the case of the LRS.
  • the resistance change element 302 needs to apply a higher voltage than the memory cell of the LRS.
  • the memory cell in which the resistance change element 302 is an HRS and the memory cell in which the resistance change element 302 is an LRS are referred to as an HRS memory cell and an LRS memory cell, respectively.
  • a voltage in which the control element 301 in the LRS memory cell becomes conductive and the control element 301 in the HRS memory cell stays in a non-conductive state can be used. That is, an applied voltage exceeding the threshold voltage can be applied to the control element 301 of the LRS memory cell, and a read voltage can be applied to the control element 301 of the HRS memory cell that is less than the threshold voltage. Thereby, in the memory cell of HRS, the voltage applied to the resistance change element 302 can be reduced by making the control element 301 non-conductive at the time of reading.
  • a read voltage having the same polarity as that of the set is applied to the resistance change element 302, so that the memory state of the resistance change element 302 is gradually changed by reading, and an error occurs in reading the stored data.
  • the phenomenon that occurs is known. This is, for example, a phenomenon in which the resistance value of the variable resistance element 302 of the HRS gradually decreases to a resistance value close to the threshold value for separating HRS and LRS, and the stored data cannot be read. This phenomenon is called disturb.
  • the voltage applied to the resistance change element 302 of the HRS is reduced as described above, the change in the memory state of the resistance change element 302 is reduced, and the occurrence of read disturb can be prevented.
  • only the control element 301 in the memory cell of the LRS is brought into a conducting state at the time of reading.
  • FIG. 8 is a diagram illustrating an example of the characteristics of the control element 301 according to the first embodiment of the present technology.
  • the figure is a graph showing the relationship between the applied voltage of the control element 301 and the flowing current.
  • the control element 301 is a bidirectional element, and the characteristics when a reverse polarity voltage is applied are equivalent to a graph in which only the sign of the characteristic curve in FIG. In the figure, the description of the third quadrant is omitted.
  • the control element 301 reversibly changes between a non-conduction state and a conduction state.
  • the threshold voltage is a voltage at which the control element 301 is turned on.
  • the threshold voltage can be a voltage at which the current flowing through the control element 301 reaches Ith, which is the predetermined current shown in FIG.
  • This threshold voltage changes according to the elapsed time since the last time it was turned on.
  • a graph 503 in the figure represents the characteristics when this elapsed time is 1 ⁇ s.
  • graphs 504 to 506 represent characteristics when the elapsed time is 1 ms, 1 s, and 10 years, respectively.
  • the characteristic curve moves in the direction of the high voltage in the figure according to the elapsed time, and the threshold voltage also changes to a high value. For this reason, in order to turn on the control element 301, it is necessary to apply a higher voltage as the elapsed time becomes longer.
  • the control element 301 can be turned on regardless of the elapsed time. However, when a high voltage is applied, it is assumed that the control element 301 in the HRS memory cell is turned on, and the power consumption increases. It is possible to record the elapsed time for each memory cell and apply the voltage by estimating the threshold voltage based on this, but the hardware and software burden for recording the elapsed time is excessive. Become.
  • the reference threshold voltage which is the threshold voltage of the reference element 303 of the reference cell, is measured, the reference threshold voltage is estimated as the threshold voltage of the control element 301, and the voltage is applied to the memory cell when accessing the memory cell. Adopt the method.
  • the reference threshold voltage can be measured as follows. As described with reference to FIG. 5, the change in the current flowing through the reference cell is examined while gradually increasing the voltage applied to the reference cell, and the applied voltage of the reference cell when this current reaches Ith is measured as the reference threshold voltage. To do.
  • the array driving unit 391 described in FIG. 5 outputs values “0” and “1” as read data to the access control unit 200 when the current flowing through the reference cell 394 or the like is less than Ith or more than Ith, respectively.
  • the memory access processing unit 240 described with reference to FIG. 4 controls the applied voltage generation unit 250 to output a gradually higher voltage when the read data is a value “0”. This control is performed by outputting a control code to the applied voltage generation unit 250.
  • the output voltage of the applied voltage generation unit 250 when the read data becomes the value “1” is set as a reference threshold voltage, and a control code corresponding to this output voltage is held.
  • a voltage based on the control code is estimated as a threshold voltage of the memory cell 314 and the like, and a voltage to be applied to the memory cell 314 and the like is determined.
  • a voltage obtained by adding a predetermined voltage as a margin to the measured reference threshold voltage can be applied to the memory cell 314 or the like. Thereby, even when the variation in the characteristics of the control element 301 and the reference element 303 is large, the control element 301 can be sufficiently conducted.
  • the reference element 303 and the control element 301 of the LRS memory cell are turned on substantially simultaneously when reading data.
  • reading pre-reading
  • the reference element 303 and the control element 301 of the LRS memory cell are turned on substantially simultaneously.
  • control element 301 of the memory cell whose resistance change element 302 has changed from HRS to LRS is turned on substantially simultaneously with the reference element 303 in the pre-read because the control element 301 is turned on at the time of the write. It will be.
  • the HRS memory cell is assumed to have a different elapsed time from the reference element 303.
  • the control element 301 since the control element 301 is kept non-conductive when data is read as described above, the elapsed time of the control element 301 is substantially the same as or longer than the elapsed time of the reference element 303. Become. For this reason, even when a read voltage based on the threshold voltage estimated by the reference element 303 is applied, the control element 301 of the memory cell of the HRS does not become conductive, and the reliability of the stored data is reduced. There is no.
  • the reference threshold voltage can be estimated as the threshold voltage of the control element 301 in the page.
  • the reference cell having the configuration of b in FIG. 6 it is necessary to use the resistance change element 302 as an LRS. This is because the reference element 303 and the control element 301 of the LRS memory cell are turned on substantially simultaneously when data is read.
  • the access control unit 200 writes (sets) the reference cell 314 or the like as an initial operation, and changes the resistance of all the reference cells.
  • the element 302 needs to be LRS.
  • FIG. 9 is a diagram illustrating applied voltages of the row signal line and the column signal line in the embodiment of the present technology. This figure shows the relationship between the voltage applied to the row signal line 312 and the column signal line 313 in the memory array unit 310 described in FIG. 4 and the voltage applied to the memory cell 314 and the like.
  • the array driver 311 selects the row signal line 312 and the column signal line 313 based on the input address and applies a voltage. In the figure, it is assumed that the memory cell 315 is accessed. In this case, the row signal line 312 with “RL0” and the column signal line 313 with “CL1” are selected by the array driving unit 311 as the selected row signal line and the selected column signal line, respectively.
  • a selected row voltage Vr and a selected column voltage Vc are applied to the selected row signal line and the selected column signal line, respectively.
  • the row signal line 312 with “RL1” and the column signal line 313 with “CL0” correspond to a non-selected row signal line and a non-selected column signal line, respectively.
  • the array driver 311 applies a non-selected row voltage Vur and a non-selected column voltage Vuc to the non-selected row signal line and the non-selected column signal line, respectively.
  • a memory cell (memory cell 315) connected to a selected row signal line and a selected column signal line is referred to as a selected memory cell, and a memory cell (memory cell) connected to an unselected row signal line and an unselected column signal line. 316) is referred to as an unselected memory cell.
  • a memory cell (memory cell 314) connected to the selected row signal line and the non-selected column signal line is referred to as a half-selected row memory cell, and a memory cell (memory) connected to the selected column signal line and the non-selected row signal line.
  • Cell 317) is referred to as a half-selected column memory cell.
  • FIG. 10 is a diagram illustrating a voltage applied to the memory cell according to the first embodiment of the present technology.
  • “a” represents the relationship between applied voltages of a selected memory cell, a half-selected row memory cell, and a half-selected column memory cell when writing is performed.
  • a high level write voltage (Vpgm_H) and a low level write voltage (Vpgm_L) are applied to the selected column voltage Vc and the selected row voltage Vr, respectively.
  • Vpgm write voltage corresponding to the difference voltage
  • a voltage corresponding to the midpoint of Vpgm_H and Vpgm_L is applied to the unselected row voltage Vur and the unselected column voltage Vuc.
  • This voltage is a voltage corresponding to (Vpgm_H + Vpgm_L) / 2.
  • a voltage corresponding to Vpgm / 2 is applied to the half-selected row memory cell and the half-selected column memory cell.
  • control elements 301 of the half-selected row memory cell and the half-selected column memory cell do not turn on when a voltage corresponding to Vpgm / 2 is applied. Since the same voltage is applied to the unselected row voltage Vur and the unselected column voltage Vuc, the applied voltage of the unselected memory cell is 0 V (not shown).
  • the array driver 311 applies the non-selected row voltage Vur and the non-selected column voltage Vuc to the non-selected row signal line and the non-selected column signal line, respectively, so that the half-selected row memory It is possible to prevent the control element 301 such as a cell from changing to a conductive state.
  • Vsns_H high level read voltage
  • Vsns_L low level read voltage
  • FIG. 11 is a diagram illustrating an operation code in the first embodiment of the present technology. The figure shows the relationship between the operation code and enable signal and the voltage applied to the memory cell.
  • the operation code represents an instruction to the memory array unit 310 for writing (set and reset) and reading, and can be represented by a 2-bit value, for example.
  • Vpgm_H and Vpgm_L are applied as the selected column voltage Vc and the selected row voltage Vr, respectively.
  • (Vpgm_H + Vpgm_L) / 2 is applied as the unselected column voltage Vuc and the unselected row voltage Vur.
  • a write voltage of Vpgm is applied to the selected memory cell with reference to the selected row signal line, and the resistance change element 302 of the memory cell changes from HRS to LRS.
  • the LRS is maintained in the memory cell in which the variable resistance element 302 is LRS.
  • a voltage of Vpgm / 2 is applied to the half-selected row memory cell and the half-selected column memory cell.
  • the applied voltage of the non-selected memory cell is 0V.
  • the memory array unit 310 When the operation code is the value “2b10” and the enable signal is the value “1”, the memory array unit 310 resets. In this case, Vpgm_L and Vpgm_H are applied as the selected column voltage Vc and the selected row voltage Vr, respectively. As a result, a write voltage of ⁇ Vpgm is applied to the selected memory cell with reference to the selected row signal line, and the resistance change element 302 of the memory cell changes from LRS to HRS. In the memory cell in which the resistance change element 302 is HRS, this HRS is maintained.
  • the memory array unit 310 When the operation code is the value “2b11” and the enable signal is the value “1”, the memory array unit 310 performs reading. In this case, Vsns_H and Vsns_L are applied as the selected column voltage Vc and the selected row voltage Vr, respectively. As a result, a read voltage of Vsns is applied to the selected memory cell with the selected row signal line as a reference. In this case, HRS and LRS of the resistance change element 302 of the memory cell are not changed and are maintained.
  • the memory array unit 310 When the operation code is the value “2b00” or the enable signal is the value “0”, the memory array unit 310 is in a so-called no-operation state. In this case, (Vsns_H + Vsns_L) / 2 is applied as the selected column voltage Vc, the selected row voltage Vr, the unselected column voltage Vuc, and the unselected row voltage Vur.
  • operation codes are generated by the memory access processing unit 240 and held in the operation code holding unit 230. Since the operation code is a 2-bit value and the number of memory array units and reference array units is 9, the size of the operation code holding unit 230 is 18 bits.
  • the operation code for writing can be generated by the following procedure. First, the memory access processing unit 240 holds write data in the write data holding unit 210. Next, the memory access processing unit 240 holds pre-read data, which is data read by performing pre-read, in the read data holding unit 220. Next, the memory access processing unit 240 generates a corresponding operation code based on the value of each bit of the pre-read data and the write data, and holds the operation code in the operation code holding unit 230.
  • the operation code can be generated based on the following equation.
  • R [n] represents the nth bit value in the pre-read data.
  • N represents a natural number.
  • W [n] represents the nth bit value in the write data.
  • Vref_H and Vref_L are applied instead of Vsns_H and Vsns_L in FIG.
  • Vref_H and Vref_L are applied instead of Vsns_H and Vsns_L in FIG.
  • the voltage such as Vpgm_H described above is generated by the applied voltage generation unit 250 described with reference to FIG.
  • FIG. 12 is a diagram illustrating an output voltage of the applied voltage generation unit 250 according to the first embodiment of the present technology.
  • the figure shows the relationship between the output voltage of the applied voltage generator 250 and the control code output from the memory access processor 240.
  • a graph 507 in the figure is a graph showing the relationship between the control code and Vref_H.
  • a graph 508 is a graph representing the relationship between the control code and Vref_L.
  • a graph 511 is a graph representing the relationship between the control code and Vsns_H.
  • a graph 512 is a graph representing the relationship between the control code and Vsns_L.
  • the control code is represented by a natural number including 0.
  • Vref_H and Vsns_H are the lowest voltages, and Vref_L and Vsns_L are the highest voltages.
  • Vref_H and Vsns_H increase, and Vref_L and Vsns_L decrease. That is, the voltage applied to the reference cell and the memory cell increases as the control code increases.
  • Vsns_H is higher than Vref_H by a voltage corresponding to the margin
  • Vsns_L is lower than Vref_L by a voltage corresponding to the margin.
  • control code When the control code is “0”, the minimum read voltage is applied to the memory cell, and when the control code is the maximum value, the maximum read voltage is applied to the memory cell.
  • a predetermined threshold value can be set in this control code to change the maximum value of the voltage applied to the memory cell or the like.
  • An alternate long and short dash line 513 represents an example of this threshold value.
  • FIG. 13 is a diagram illustrating an example of a processing procedure of read processing according to the first embodiment of the present technology.
  • the process shown in FIG. 11 is executed when a read request is input via the memory controller interface 100.
  • the memory access processing unit 240 interprets the read request, sets a read destination address, and outputs the read address to the memory array 300 (step S902).
  • the memory access processing unit 240 performs a memory array unit read process (step S910). As a result, reading from the memory array units # 1 (310) to # 8 (380) is performed.
  • the memory access processing unit 240 outputs read data to the memory controller 20 (step S909), and ends the read process.
  • FIG. 14 is a diagram illustrating an example of a processing procedure of the memory array unit reading process (step S910) according to the first embodiment of the present technology. This figure shows the memory array unit read process (step S910) described in FIG.
  • the memory access processing unit 240 initializes the control code VG_code to 0 (step S911).
  • the memory access processing unit 240 sets the operation code of the reference array unit 390 (step S913). This can be performed by causing the operation code holding unit 230 to hold the value “2b11” as the operation code of the reference array unit 390.
  • the memory access processing unit 240 sets the enable signal of the reference array unit 390 to a value “1” and applies a read voltage to the reference cell 394 and the like (step S914). Thereby, Vref_H and Vref_L are applied to the reference cell 394 and the like. Next, the memory access processing unit 240 determines whether or not the read data of the reference cell 394 or the like is a value “1” (step S915).
  • step S915 When the read data of the reference cell 394 or the like is not the value “1” (step S915: No), the memory access processing unit 240 changes the applied voltage of the reference cell 394 or the like by incrementing the control code VG_code (step S917). As a result, when the control code VG_code reaches the threshold described in FIG. 12 (step S918: Yes), the memory access processing unit 240 abnormally ends the memory array unit read process without returning to the original read process. . In this case, the memory access processing unit 240 can determine that an abnormality has occurred in the reference cell 394 and the like, and can output to the memory controller 20 that reading has failed. On the other hand, when the control code VG_code has not reached the threshold value (step S918: No), the memory access processing unit 240 executes the process of step S915 again.
  • step S915 when the read data of the reference cell 394 or the like is the value “1” (step S915: Yes), the memory access processing unit 240 stops the application of the read voltage of the reference cell 394 or the like (step S916). This can be done by setting the enable signal of the reference array unit 390 to the value “0”. The reference threshold voltage is measured by these processes, and the control code VG_code is held in the memory access processing unit 240 as a result of the measurement. Next, the memory access processing unit 240 reads data by the memory cell reading process (step S920) and ends the memory array unit reading process.
  • FIG. 15 is a diagram illustrating an example of a processing procedure of the memory cell reading process (step S920) according to the first embodiment of the present technology.
  • This process represents the memory cell read process (step S920) described in FIG.
  • the memory access processing unit 240 sets an operation code for the memory array unit # 1 (310) or the like (step S923). This can be performed by causing the operation code holding unit 230 to hold the value “2b11” as the operation code of the memory array units # 1 (310) to # 8 (380).
  • the memory access processing unit 240 sets the enable signal of the memory array unit # 1 (310) or the like to the value “1” and applies a read voltage to the memory cell (step S924). Thereby, Vsns_H and Vsns_L are applied to the memory cell.
  • the memory access processing unit 240 holds the read data output from the memory array unit # 1 (310) or the like in the read data holding unit 220 (step S925).
  • the memory access processing unit 240 sets the enable signal of the memory array unit # 1 (310) or the like to a value “0”, stops the application of the read voltage of the memory cell (step S926), and performs the memory cell read process. finish.
  • a read voltage in which the reference threshold voltage is estimated as the threshold voltage of the control element 301 of the memory cell is applied to the memory cell 314 and the like, and data is read.
  • FIG. 16 is a diagram illustrating an example of a processing procedure of a writing process according to the first embodiment of the present technology.
  • the process in FIG. 11 is executed when a write request is input via the memory controller interface 100.
  • the memory access processing unit 240 interprets the write request and holds the write data in the write data holding unit 210 (step S931).
  • the memory access processing unit 240 sets a write destination address and outputs it to the memory array 300 (step S932).
  • the memory access processing unit 240 performs a memory array unit read process (step S910). This process corresponds to pre-reading, and the memory access processing unit 240 executes the process of step S910 described with reference to FIG.
  • the memory access processing unit 240 performs memory array unit write processing (step S940). Thereby, writing to the memory array units # 1 (310) to # 8 (380) is performed. Thereafter, the memory access processing unit 240 ends the writing process.
  • FIG. 17 is a diagram illustrating an example of a processing procedure of the memory array unit writing process (step S940) according to the first embodiment of the present technology.
  • This process represents the memory array unit write process (step S940) described in FIG.
  • the memory access processing unit 240 initializes the variable loop and the control code VG_code to the value “0” (step S941).
  • the memory access processing unit 240 sets operation codes for the memory array units # 1 (310) to # 8 (380) (step S943). This can be done by setting an operation code of the memory array unit # 1 (310) or the like based on the pre-read data and write data and holding the operation code in the operation code holding unit 230.
  • the memory access processing unit 240 calculates the total (NSetReset) of the operation code for instructing setting and the operation code for instructing resetting from the held operation code (step S948).
  • step S949: Yes the memory access processing unit 240 determines that the writing has succeeded and ends the memory array unit writing process. This is because even when NSetReset is not 0, that is, when the write data and the read data do not completely match, the error detection / correction unit 23 of the memory controller 20 can correct the error.
  • step S949: No the memory access processing unit 240 determines whether or not the variable loop is equal to or smaller than the predetermined threshold (step S951). If the variable loop has reached a predetermined threshold value (step S951: No), the memory access processing unit 240 abnormally ends the memory array unit writing process without returning to the original writing process. In this case, the memory access processing unit 240 can output to the memory controller 20 that writing has failed.
  • step S951 when the variable loop is equal to or smaller than the predetermined threshold (step S951: Yes), the memory access processing unit 240 sets the enable signal of the memory array unit # 1 (310) or the like to the value “1” and stores it in the memory cell. A write voltage is applied (step S944). After the elapse of the predetermined write time, the memory access processing unit 240 sets the enable signal of the memory array unit # 1 (310) or the like to the value “0” and stops the application of the write voltage of the memory cell (step S946). Next, the memory access processing unit 240 performs a memory cell read process (step S920).
  • This process is a process of reading data for verifying whether or not the writing has been performed correctly, and is a process of converting the read data into new pre-read data.
  • the memory access processing unit 240 executes the process of step S920 described in FIG. Next, the memory access processing unit 240 increments and updates the variable loop (step S947), and proceeds to the process of step S948.
  • step S944 When the reset is performed in step S944, the control element 301 of the memory cell of the HRS is turned on, and the reference element 303 of the reference cell is turned on in the memory cell read immediately after this (step S920: verification). Further, also in the write process (FIG. 16) that is the caller of the memory array unit write process (step S940), the reference element 303 is turned on in the memory array unit read (step S910: pre-read). Thus, since the reference element 303 is turned on substantially simultaneously with the turning on of the control element 301 of the HRS memory cell, the elapsed time of the control element 301 of the HRS memory cell is never shorter than the elapsed time of the reference element 303. .
  • the elapsed time of the control element 301 of the HRS memory cell is the time of the reference element 303. In some cases, the time is shorter than the elapsed time. In such a case, when the threshold voltage of the control element 301 of the memory cell is estimated by the reference element 303 and reading is performed, a relatively high read voltage is applied to the HRS memory cell having a short elapsed time. Thus, the control element 301 can be in a conductive state. In the first embodiment of the present technology, it is possible to prevent the control element 301 of the HRS memory cell from being turned on.
  • FIG. 18 is a diagram illustrating a relationship between an applied voltage and a current of the memory cell according to the first embodiment of the present technology. This figure shows the relationship between applied voltage and current for each elapsed time for LRS memory cells and HRS memory cells. In the figure, the upper side represents the case of LRS, and the lower side represents the case of HRS. Also, the dotted line in the figure represents the current value (Ith) for determining each threshold voltage.
  • Graphs 532 and 542 in the figure represent characteristics when the elapsed time is 1 ⁇ s
  • graphs 533 and 543 represent characteristics when the elapsed time is 1 ms
  • graphs 534 and 544 represent characteristics when the elapsed time is 1 s.
  • graphs 535 and 545 in the figure represent the characteristics when the elapsed time is 10 years.
  • the characteristic curve in the figure is separated into a region where the control element 301 is in a non-conductive state and a region where it is in a conductive state, with Ith as a boundary. Furthermore, in the conductive state, the variable resistance element 302 has different characteristics depending on either LRS or HRS. Further, the threshold value of the control element 301 changes depending on the elapsed time. Therefore, in the first embodiment of the present technology, the reference element 303 is arranged, and the elapsed time of the reference element 303 is substantially equal to the elapsed time of the LRS memory cell, and is equal to or less than the elapsed time of the HRS memory cell. To do.
  • reading is performed by estimating the threshold voltage of the memory cell based on the reference threshold voltage of the reference element 303 and applying the voltage to the memory cell.
  • a one-dot chain line 536 represents a threshold voltage when the elapsed time in the LRS memory cell is 1 ⁇ s
  • a two-dot chain line 546 represents a threshold voltage when the elapsed time in the HRS memory cell is 1 ⁇ s.
  • the threshold voltage is different between the LRS memory cell and the HRS memory cell. Therefore, for example, reading can be performed by applying a voltage intermediate between the threshold voltages represented by the one-dot chain line 536 and the two-dot chain line 546 as a read voltage.
  • the control element 301 of the LRS memory cell is turned on, and the control element 301 of the HRS memory cell is kept non-conductive.
  • the control element 301 of the memory cell can be sufficiently conducted.
  • the same data as the written data can be read, and the reliability of the stored data can be improved.
  • the threshold voltage of the control element 301 in the memory cell changes, the threshold voltage of the control element 301 is estimated by the reference threshold voltage of the reference element 303, and the memory cell is used. Apply voltage and read out. Thereby, even when the threshold value of the control element 301 changes, the same data as the written data can be read, and the reliability of the stored data can be improved.
  • the reference cells 394 and the like are arranged in an array like the memory cells, and one reference cell is selected by the selected row signal line and the selected column signal line.
  • a method in which one of the plurality of reference cells 394 or the like is selected based on an address by a selector or the like may be employed. This is because the threshold voltage of the memory cell can be estimated from the reference threshold voltage by selecting the memory cell based on the address and the corresponding reference cell.
  • the process related to the measurement of the reference threshold voltage and the process related to reading from the memory cell are sequentially performed at the time of reading. That is, in the memory array unit reading process (step S910) described with reference to FIG. 14, the processes of steps S912 to S918 and the process of step S920 are sequentially performed. On the other hand, when the reading process continues, these processes can be performed simultaneously in parallel, that is, in the form of pipeline processing. Thereby, the time required for reading over a plurality of addresses can be shortened.
  • the operation code of the memory cell is set based on the pre-read data and the write data at the time of writing.
  • the operation code is set only based on the write data, and writing is performed. May be.
  • the value “2b10” (reset) is set as an operation code for bits whose write data is a value “0”
  • the value “2b01” (set) is set as an operation code for bits whose write data is a value “1”.
  • Is set and writing is performed.
  • the pre-read can be omitted, and the writing process can be simplified.
  • the control element 301 when there is a bit corrected from the value “0” to the value “1”, it is determined that the control element 301 is not turned on due to the influence of RTN in the memory cell corresponding to this bit. it can. That is, it can be determined that the array driving unit 311 determines that the memory cell is an LRS but is HRS and the value “0” is read out. In this case, the elapsed time of the control element 301 and the reference element 303 in the LRS memory cell can be made substantially equal by reading the page again.
  • the control element 301 of the memory cell of the HRS has changed to a conductive state due to the influence of RTN in the memory cell corresponding to this bit. Can be judged.
  • the elapsed time of the control element 301 and the reference element 303 in the HRS memory cell can be made substantially equal by turning on the reference element 303.
  • the reliability of the stored data is improved by turning on the control element 301 and the reference element 303 based on the error detection and error correction results. Can be improved.
  • Second Embodiment> In the first embodiment described above, at the time of reading, the reference threshold voltage is always measured, and the threshold voltage of the control element 301 of the memory cell is estimated. On the other hand, in the second embodiment of the present technology, the reference threshold voltage is measured based on the results of error detection and error correction in the read data. This shortens the time required for reading.
  • the read process according to the second embodiment of the present technology is performed according to the following procedure. First, based on the read request requested by the memory controller 20, the memory access processing unit 240 performs reading. At this time, the memory access processing unit 240 reads the memory cell without measuring the reference threshold voltage. The access control unit 200 outputs a value “0” as a control code to the applied voltage generation unit 250 to generate a minimum read voltage and apply it to the memory cell. Thereafter, when the read data is output to the memory controller 20, the error detection and correction unit 23 performs error detection and error correction on the read data. When the detected error exceeds a predetermined number of bits or when the error cannot be corrected, the memory controller 20 requests a second read request. Based on the second read request, the access control unit 200 measures the reference threshold voltage, and estimates the threshold voltage of the control element 301 of the memory cell based on the reference threshold voltage.
  • the memory access processing unit 240 In order to perform such processing, it is necessary for the memory access processing unit 240 to know whether or not the read request is the second request. This can be performed, for example, by notifying the memory access processing unit 240 that the memory controller 20 is the second read request. This makes it possible to estimate the threshold voltage of the control element 301 of the memory cell by measuring the reference threshold voltage as necessary, such as when many errors are detected from the read data, and shorten the time required for reading. can do.
  • Other configurations of the memory controller 20 and the memory 30 are the same as those of the memory controller 20 and the memory 30 according to the first embodiment of the present technology, and thus the description thereof is omitted.
  • FIG. 19 is a diagram illustrating an example of a processing procedure of the memory array unit reading process (step S910) according to the second embodiment of the present technology.
  • the process of the figure is different from the process described in FIG. 14 in that step S912 is added between steps S911 and S913.
  • the memory access processing unit 240 determines whether the read request is a second read request (step S912). As a result, if it is the second read request (step S912: Yes), the memory access processing unit 240 proceeds to the process of step S913. On the other hand, if it is not the second read request (step S912: No), the memory access processing unit 240 skips the processes of steps S913 to S918 and proceeds to the process of step S920.
  • the reference threshold voltage is measured and the threshold voltage of the control element 301 in the memory cell is estimated as necessary, so that the time required for reading is shortened. Can do.
  • FIG. 20 is a diagram illustrating a configuration example of the memory array 300 according to the third embodiment of the present technology.
  • the memory array 300 includes memory array units # 1 (310) to # 8 (380), and reference array units # 1 (390) and # 2 (490).
  • the memory array 300 shown in the figure is different from the memory array 300 described in FIG. 3 in that it includes two reference array units.
  • the memory access processing unit 240 measures the reference threshold voltage for each of the reference array units # 1 (390) and # 2 (490) and acquires the obtained two reference thresholds
  • the threshold voltage of the control element 301 of the memory cell is estimated from the voltage.
  • the memory access processing unit 240 individually controls the reference array units # 1 (390) and # 2 (490) to acquire two control codes VG_code. Thereafter, the voltage applied to the memory cell is set based on the average value of these control codes VG_code. Since the configuration of the memory 30 other than this is the same as the configuration of the memory 30 in the first embodiment of the present technology, the description thereof is omitted.
  • reading is performed by estimating the threshold voltage of the control element 301 of the memory cell based on the average value of the two reference threshold voltages acquired from the two reference elements 303.
  • the threshold voltage of the control element 301 of the selected memory cell is estimated based on the reference threshold voltage.
  • the threshold voltage of the control element 301 of the half-selected row memory cell and the half-selected column memory cell at the time of writing is estimated, and the half-selected row memory cell and the half-selected column memory are Apply voltage to the cell. This prevents the control element 301 such as a half-selected row memory cell or the like from being changed to a conductive state during writing, and improves the reliability of stored data.
  • FIG. 21 is a diagram illustrating a configuration example of the access control unit 200 according to the fourth embodiment of the present technology.
  • This access control unit 200 is different from the access control unit 200 described in FIG. 2 in that it further includes a non-selected row application voltage generation unit 260 and a non-selection column application voltage generation unit 270.
  • the non-selected row application voltage generation unit 260 generates a voltage to be applied to the non-selected row signal line of the memory array 300.
  • the non-selected row applied voltage generation unit 260 generates a voltage to be applied to the non-selected row signal line based on the control code output from the memory access processing unit 240.
  • the non-selected column applied voltage generation unit 270 generates a voltage to be applied to the non-selected column signal line of the memory array 300.
  • the non-selected column applied voltage generation unit 270 generates a voltage to be applied to the non-selected column signal line based on the control code output from the memory access processing unit 240.
  • the memory access processing unit 240 controls the non-selected row applied voltage generation unit 260 and the non-selected column applied voltage generation unit 270, respectively, at the time of writing to acquire and hold a control code. Further, the access control unit 200 according to the third embodiment of the present technology omits the measurement of the reference threshold voltage at the time of reading, and outputs fixed values Vsns_H and Vsns_L. Therefore, the applied voltage generation unit 250 can omit the function of adjusting the output voltage described in FIG. Details of the processing of the memory access processing unit 240 will be described later.
  • the threshold voltage of the control element 301 of the half-selected row memory cell and the half-selected column memory cell is estimated based on the reference threshold voltage.
  • a voltage lower than the threshold voltage is applied to the half-selected row memory cell and the half-selected column memory cell.
  • the memory access processing unit 240 measures the reference threshold voltage of the reference cell corresponding to each of the half-selected row memory cell and the half-selected column memory cell at the time of writing.
  • the memory access processing unit 240 sets the unselected row voltage Vur and the unselected column voltage Vuc described in FIG. 9 based on the measured reference threshold voltage, and applies them to the memory cell 314 and the like.
  • FIG. 22 is a diagram illustrating a voltage applied to a memory cell according to the fourth embodiment of the present technology. The figure shows the relationship between applied voltages of a selected memory cell, a half-selected row memory cell, and a half-selected column memory cell at the time of setting.
  • a high level non-select voltage (VpgmU_H) and a low level non-select voltage (VpgmU_L) are applied to the non-selected row voltage Vur and the non-selected column voltage Vuc, respectively. Therefore, VpgmU that is a voltage corresponding to the difference between Vpgm_H and VpgmU_H is applied to the half-selected column memory cells.
  • VpgmU ′ that is a voltage corresponding to the difference between VpgmU_L and Vpgm_L is applied to the half-selected row memory cells.
  • ⁇ V which is a voltage corresponding to the difference between VpgmU_H and VpgmU_L, is applied to the unselected memory cells.
  • VpgmU and VpgmU ′ are voltages set based on the reference threshold voltage, respectively. By applying these voltages, it is possible to prevent the control element 301 such as a half-selected row memory cell from changing to a conductive state. Even when the measurement of the reference threshold voltage is omitted and a low voltage corresponding to when the elapsed time is short is applied as VpgmU and VpgmU ′, the change of the control element 301 such as the half-selected row memory cell to the conductive state is prevented. Is possible. However, in that case, the voltage ⁇ V applied to the unselected memory cells becomes a large value, and the power consumption increases.
  • ⁇ V needs to be reduced in order to reduce the power consumption of the memory 30. Therefore, as described above, an increase in power consumption can be prevented by estimating a threshold value of a half-selected row memory cell or the like based on a reference threshold voltage and setting the applied voltage to a necessary minimum value.
  • the estimation of the threshold value of the half-selected row memory cell or the like by the reference threshold voltage can be performed in the case of a set. This is to prevent the control element 301 from changing to the conductive state in the half-selected row memory cell of the HRS.
  • a voltage of (Vsns_H + Vsns_L) / 2 is applied to Vur and Vuc, as in the first embodiment of the present technology.
  • FIG. 23 is a diagram illustrating operation codes in the fourth embodiment of the present technology.
  • the operation code shown in the figure is different from the operation code described in FIG. 11 in that VpgmU_L and VpgmU_H are applied as Vuc and Vur at the time of setting.
  • FIG. 24 is a diagram illustrating output voltages of the non-selected row application voltage generation unit 260 and the non-selection column application voltage generation unit 270 according to the fourth embodiment of the present technology.
  • “a” represents the relationship between the output voltage of the non-selected row applied voltage generation unit 260 and the control code.
  • b represents the relationship between the output voltage of the non-selected column applied voltage generation unit 270 and the control code.
  • a graph 552 a in the figure is a graph showing the relationship between the control code and Vref_H.
  • a graph 551 is a graph showing the relationship between the control code and VpgmU_H.
  • Vref_H and VpgmU_H are the highest voltage, and Vref_H and VpgmU_H decrease in proportion to the control code. That is, as the control code increases, the voltage applied to the half-selected column memory cell increases.
  • VpgmU_H is higher than Vref_H by a voltage corresponding to the margin.
  • Vcal_H is a voltage applied as Vuc and Vr.
  • Vpgm_H When measuring the reference threshold voltage of the reference element 303 corresponding to the half-selected column memory cell, Vpgm_H is applied to the selected column signal line and a predetermined Vcal_H is applied to the non-selected column signal line and the selected row signal line.
  • Vref_H which is a voltage applied to the non-selected row signal line, is lowered to turn on the reference element 303. It can be determined that the reference element 303 is turned on when the current flowing through the selected column signal line exceeds a predetermined threshold.
  • the control code VGur_code_s when the reference element 303 is turned on is held in the memory access processing unit 240.
  • an alternate long and short dash line 553 represents an example of a threshold value set for the control code VGur_code_s.
  • the graph 554 of b in the figure is a graph showing the relationship between the control code and Vref_L.
  • Graph 555 is a graph showing the relationship between the control code and VpgmU_L.
  • Vref_L and VpgmU_L are the lowest voltage, and Vref_L and VpgmU_L rise in proportion to the control code.
  • VpgmU_L is lower than Vref_L by a voltage corresponding to the margin.
  • Vcal_L is a voltage applied as Vur and Vc.
  • Vpgm_L is applied to the selected row signal line and Vcal_L is applied to the unselected row signal line and the selected column signal line.
  • Vref_L which is a voltage applied to the non-selected column signal line, is raised, and the reference element 303 is turned on.
  • This control code VGuc_code_s is held in the memory access processing unit 240.
  • an alternate long and short dash line 556 represents an example of a threshold value set for the control code VGuc_code_s.
  • FIG. 25 is a diagram illustrating an example of a processing procedure of the memory array unit reading process (step S960) according to the fourth embodiment of the present technology.
  • the access control unit 200 according to the fourth embodiment of the present technology executes the process illustrated in FIG. 13 (step S960) instead of step S910 in the read process described with reference to FIG.
  • the memory access processing unit 240 sets operation codes of the memory array unit # 1 (310) and the reference array unit 390 (step S961). This can be performed by causing the operation code holding unit 230 to hold the value “2b11” as the operation code.
  • the memory access processing unit 240 sets the enable signal to “1” and applies a read voltage to the memory cell 314 and the reference cell 394 and the like (step S964).
  • the memory access processing unit 240 holds the read data from the memory cell 314 and the like in the read data holding unit 220 (step S965).
  • the memory access processing unit 240 sets the enable signal to a value “0” and stops applying the read voltage to the memory cell 314 and the reference cell 394 (step S966).
  • the measurement of the reference threshold voltage in the memory array unit read process can be omitted.
  • FIG. 26 is a diagram illustrating an example of a processing procedure of a writing process according to the fourth embodiment of the present technology.
  • the memory access processing unit 240 holds the write data in the write data holding unit 210 (step S971).
  • the memory access processing unit 240 sets a write address (step S972).
  • the memory access processing unit 240 performs a non-selected line set voltage setting process (step S980).
  • the memory access processing unit 240 performs the memory array unit read process described with reference to FIG. 25 (step S960).
  • the memory access processing unit 240 performs a memory array unit write process (step S810) and ends the write process.
  • FIG. 27 is a diagram illustrating an example of a processing procedure of a non-selected line set voltage setting process (step S980) according to the fourth embodiment of the present technology. This figure shows the non-selected line set voltage setting process (step S980) described in FIG.
  • the memory access processing unit 240 initializes the control codes VGur_code_s and VGuc_code_s to a value “0” (step S981).
  • the memory access processing unit 240 sets the value “2b01” as the operation code in the reference array unit (390) (step S983).
  • the memory access processing unit 240 performs code setting processing at the time of setting (step S990), and holds the control codes VGur_code_s and VGuc_code_s.
  • the memory access processing unit 240 determines whether or not the unselected column voltage Vuc is higher than the unselected row voltage Vur based on these control codes (step S984).
  • the control codes VGur_code_s and VGuc_code_s are adjusted so that the non-selected column voltage Vuc and the non-selected row voltage Vur are equal (step). S987).
  • the memory access processing unit 240 skips the process of step S987 and ends the non-selected line set voltage setting process. .
  • FIG. 28 is a diagram illustrating an example of a processing procedure of a code setting process (step S990) at the time of setting according to the fourth embodiment of the present technology. This figure shows the code setting process (step S990) at the time of setting described in FIG.
  • the memory access processing unit 240 performs selection and non-selection voltage setting (step S991). Specifically, the memory access processing unit 240 causes the applied voltage generation unit 250 to generate the selected column voltage Vc (Vpgm_H) and the selected row voltage Vr (Vcal_H), respectively.
  • the memory access processing unit 240 causes the non-selected column application voltage generation unit 270 to generate the non-selection column voltage Vuc (Vcal_H) and causes the non-selection row application voltage generation unit 260 to generate the non-selection row voltage Vur (Vref_H). ) Is generated.
  • the memory access processing unit 240 sets the enable signal of the reference array unit 390 to the value “1” and applies a voltage to the reference cell 394 and the like (step S992).
  • the memory access processing unit 240 determines whether or not the current flowing through the column signal line 313 corresponding to the selected column signal line is equal to or greater than a threshold value (step S993). If the current is greater than or equal to the threshold (step S993: Yes), the memory access processing unit 240 determines that the reference element 303 is turned on, and holds the control code VGur_code_s at this time. Thereafter, the memory access processing unit 240 proceeds to the process of step S996.
  • step S993: No if the current is less than the threshold value (step S993: No), the memory access processing unit 240 increments VGur_code_s to change the applied voltage (step S994). As a result, when VGur_code_s reaches the threshold value (step S995: Yes), the memory access processing unit 240 proceeds to the process of step S996. On the other hand, when VGur_code_s has not reached the threshold value (step S995: No), the memory access processing unit 240 executes the processing from step S993 again.
  • step S996 the memory access processing unit 240 performs selection and non-selection voltage setting (step S996). Specifically, the memory access processing unit 240 causes the applied voltage generation unit 250 to generate the selected column voltage Vc (Vcal_L) and the selected row voltage Vr (Vpgm_L), respectively. At the same time, the memory access processing unit 240 causes the non-selected column application voltage generation unit 270 to generate the non-selection column voltage Vuc (Vref_L) and causes the non-selection row application voltage generation unit 260 to generate the non-selection row voltage Vur (Vcal_L). ) Is generated.
  • the memory access processing unit 240 determines whether or not the current flowing through the row signal line 312 corresponding to the selected row signal line is greater than or equal to a threshold value (step S997). If the current is greater than or equal to the threshold (step S997: Yes), the memory access processing unit 240 determines that the reference element 303 is turned on, and holds the control code VGuc_code_s at this time. Thereafter, the memory access processing unit 240 proceeds to the process of step S801.
  • step S997: No when the current is less than the threshold value (step S997: No), the memory access processing unit 240 increments VGuc_code_s to change the applied voltage (step S998). As a result, when VGuc_code_s reaches the threshold value (step S999: Yes), the memory access processing unit 240 proceeds to the process of step S801. On the other hand, when VGuc_code_s has not reached the threshold value (step S999: No), the memory access processing unit 240 executes the processing from step S997 again.
  • step S801 the memory access processing unit 240 sets the enable signal of the reference array unit 390 to the value “0”, stops the application of the voltage to the reference cell 394 and the like (step S801), and performs the code setting process at the time of setting. finish.
  • FIG. 29 is a diagram illustrating an example of a processing procedure of the memory array unit writing process (step S810) according to the fourth embodiment of the present technology.
  • This process represents the memory array unit write process (step S810) described in FIG.
  • the memory access processing unit 240 initializes the variable loop to a value “0” (step S811).
  • the memory access processing unit 240 sets operation codes for the memory array units # 1 (310) to # 8 (380) (step S813). This is performed by setting an operation code of the memory array unit # 1 (310) or the like based on the pre-read data and the write data and holding the operation code in the operation code holding unit 230.
  • the memory access processing unit 240 calculates NSetReset (step S818).
  • step S819: Yes the memory access processing unit 240 determines that the writing has succeeded, and ends the memory array unit writing process.
  • step S819: No the memory access processing unit 240 determines whether or not the variable loop is equal to or smaller than the predetermined threshold (step S821). If the variable loop has reached a predetermined threshold value (step S821: No), the memory access processing unit 240 abnormally ends the memory array unit writing process without returning to the original writing process.
  • step S821 when the variable loop is equal to or smaller than the predetermined threshold (step S821: Yes), the memory access processing unit 240 sets the enable signal of the memory array unit # 1 (310) or the like to the value “1” and sets the memory cell 314. Etc., a write voltage is applied (step S814). After the elapse of the predetermined write time, the memory access processing unit 240 sets the enable signal of the memory array unit # 1 (310) or the like to the value “0” and stops the application of the write voltage to the memory cell 314 or the like (step S816). ). Next, the memory access processing unit 240 performs a memory cell reading process (step S960), and causes the read data holding unit 220 to hold the read data as new pre-read data. Next, the memory access processing unit 240 increments and updates the variable loop (step S817), and proceeds to the process of step S818.
  • the configuration of the access control unit 200 is the same as the configuration of the access control unit 200 described with reference to FIG.
  • the threshold voltage of the control element 301 of the memory cell may be estimated based on the reference threshold voltage at the time of reading. it can.
  • the memory array unit read process described in FIG. 14 is executed instead of the memory array unit read process described in FIG.
  • the threshold voltage of the control element 301 of the half-selected row memory cell and the half-selected column memory cell at the time of setting is estimated based on the reference threshold voltage, and the half-selected row memory cell A voltage is applied to the half-selected column memory cells.
  • the voltage applied to the resistance change element 302 such as a half-selected row memory cell is reduced, the influence on the storage state of the resistance change element is reduced, and the reliability of stored data can be improved.
  • the threshold voltage of the control element 301 of the half-selected row memory cell and the half-selected column memory cell is estimated based on the reference threshold voltage at the time of setting.
  • the threshold voltage of the control element 301 of the half-selected row memory cell and the half-selected column memory cell is estimated based on the reference threshold voltage at the time of setting and resetting. This prevents the control element 301 of the half-selected row memory cell and half-selected column memory cell from being changed to the conductive state during set and reset.
  • the voltage applied to the resistance change element 302 such as a half-selected row memory cell is reduced, and the reliability of stored data is improved.
  • FIG. 30 is a diagram illustrating operation codes in the fifth embodiment of the present technology.
  • the operation code shown in the figure is different from the operation code described in FIG. 23 in that VpgmU_H and VpgmU_L are applied as Vuc and Vur of the reset operation.
  • VpgmU_H and VpgmU_L are applied to the half-selected row memory cells and the like in both the set and reset.
  • FIG. 31 is a diagram illustrating output voltages of the non-selected row application voltage generation unit 260 and the non-selection column application voltage generation unit 270 according to the fifth embodiment of the present technology.
  • the figure shows the relationship between the output voltage of the non-selected row applied voltage generating unit 260 and the non-selected column applied voltage generating unit 270 at the time of reset and the control code.
  • a represents the output voltage of the non-selected row application voltage generation unit 260
  • b in the figure represents the output voltage of the non-selection column application voltage generation unit 270.
  • the graph 561 of a in the figure is a graph showing the relationship between the control code and VpgmU_L.
  • a graph 562 is a graph showing the relationship between the control code and Vref_L.
  • Vref_L and VpgmU_L rise in proportion to the control code.
  • VpgmU_L is lower than Vref_L by a voltage corresponding to a margin.
  • the reference threshold voltage is measured by raising Vref_L, which is a voltage applied to the unselected row signal lines, turning on the reference element 303, and holding the control code VGur_code_r at that time.
  • Vref_L which is a voltage applied to the unselected row signal lines
  • Vref_r a voltage applied to the unselected row signal lines
  • an alternate long and short dash line 563 represents an example of threshold values set for the control code VGur_code_r.
  • the graph 564 of b in the figure is a graph showing the relationship between the control code and Vref_H.
  • a graph 565 is a graph representing the relationship between the control code and VpgmU_H.
  • Vref_H and VpgmU_H decrease in proportion to the control code. Further, VpgmU_H is higher than Vref_H by a voltage corresponding to a margin.
  • Vref_H which is a voltage applied to the non-selected column signal lines, turning on the reference element 303 and holding the control code VGuc_code_r at that time.
  • Vref_H a voltage applied to the non-selected column signal lines
  • FIG. 32 is a diagram illustrating an example of a processing procedure of a writing process according to the fifth embodiment of the present technology.
  • the memory access processing unit 240 holds the write data in the write data holding unit 210 (step S831).
  • the memory access processing unit 240 sets a write address (step S832).
  • the memory access processing unit 240 performs the non-selected line set voltage setting process (step S980) described with reference to FIG.
  • the memory access processing unit 240 performs processing for setting a non-selected line reset voltage (step S840).
  • the memory access processing unit 240 performs the memory array unit reading process (step S960) described with reference to FIG.
  • the memory access processing unit 240 performs the memory array unit write process (step S810) described with reference to FIG. 29 and ends the write process.
  • FIG. 33 is a diagram illustrating an example of a processing procedure of a non-selected line reset voltage setting process (step S840) according to the fifth embodiment of the present technology. This figure shows the processing of the non-selected line reset voltage setting (step S840) described in FIG.
  • the memory access processing unit 240 initializes the control codes VGur_code_r and VGuc_code_r with a value “0” (step S841).
  • the memory access processing unit 240 sets the value “2b10” as the operation code in the reference array unit 390 (step S843).
  • the memory access processing unit 240 performs a code setting process at the time of reset (step S850), and acquires the control codes VGur_code_r and VGuc_code_r.
  • the memory access processing unit 240 determines whether or not the unselected row voltage Vur is higher than the unselected column voltage Vuc based on these control codes (step S844).
  • the control codes VGur_code_r and VGuc_code_r are adjusted so that the non-selected row voltage Vur and the non-selected column voltage Vuc are equal (step). S847).
  • the memory access processing unit 240 skips the process of step S847 and ends the non-selected line reset voltage setting process. .
  • FIG. 34 is a diagram illustrating an example of a processing procedure of a code setting process (step S850) at the time of reset according to the fifth embodiment of the present technology. This figure shows the code setting process (step S850) at the time of reset explained in FIG.
  • the memory access processing unit 240 performs selection and non-selection voltage setting (step S851). Specifically, the memory access processing unit 240 causes the applied voltage generation unit 250 to generate a selected column voltage Vc (Vpgm_L) and a selected row voltage Vr (Vcal_L), respectively.
  • the memory access processing unit 240 causes the non-selected column application voltage generation unit 270 to generate the non-selection column voltage Vuc (Vcal_L) and causes the non-selection row application voltage generation unit 260 to generate the non-selection row voltage Vur (Vref_L). ) Is generated.
  • the memory access processing unit 240 sets the enable signal of the reference array unit 390 to a value “1” and applies a voltage to the reference cell 394 and the like (step S852).
  • the memory access processing unit 240 determines whether or not the current flowing through the column signal line 313 corresponding to the selected column signal line is equal to or greater than a threshold value (step S853). If the current is greater than or equal to the threshold (step S853: Yes), the memory access processing unit 240 holds the control code VGur_code_r at this time, and proceeds to the process of step S856.
  • step S853: No when the current is less than the threshold value (step S853: No), the memory access processing unit 240 increments VGur_code_r to change the applied voltage (step S854). As a result, when VGur_code_r reaches the threshold value (step S855: Yes), the memory access processing unit 240 proceeds to the process of step S856. On the other hand, when VGur_code_r has not reached the threshold value (step S855: No), the memory access processing unit 240 executes the processing from step S853 again.
  • step S856 the memory access processing unit 240 performs selection and non-selection voltage setting (step S856). Specifically, the memory access processing unit 240 causes the applied voltage generation unit 250 to generate the selected column voltage Vc (Vcal_H) and the selected row voltage Vr (Vpgm_H), respectively. At the same time, the memory access processing unit 240 causes the non-selected column application voltage generation unit 270 to generate the non-selection column voltage Vuc (Vref_H) and causes the non-selection row application voltage generation unit 260 to generate the non-selection row voltage Vur (Vcal_H). ) Is generated.
  • the memory access processing unit 240 determines whether or not the current flowing through the row signal line 312 corresponding to the selected row signal line is equal to or greater than a threshold value (step S857). If the current is greater than or equal to the threshold (step S857: Yes), the memory access processing unit 240 holds the control code VGuc_code_s and proceeds to the process of step S861.
  • step S857: No when the current is less than the threshold value (step S857: No), the memory access processing unit 240 changes the applied voltage by incrementing VGuc_code_r (step S858). As a result, when VGuc_code_r has reached the threshold (step S859: Yes), the memory access processing unit 240 proceeds to the process of step S861. On the other hand, when VGuc_code_r has not reached the threshold value (step S859: No), the memory access processing unit 240 executes the processing from step S857 again. Finally, the memory access processing unit 240 sets the enable signal of the reference array unit 390 to the value “0”, stops applying the voltage to the reference cell 394 and the like (step S861), and ends the code setting process at the time of resetting To do.
  • the reading process is the same as the reading process described in the fourth embodiment of the present technology, and thus the description thereof is omitted.
  • the other configuration of the access control unit 200 is the same as the configuration of the access control unit 200 described with reference to FIG.
  • the threshold voltage of the control element 301 such as the half-selected row memory cell is estimated by the reference threshold voltage also at the time of reset, as compared with the fourth embodiment. Do. This prevents the control element 301 such as a half-selected row memory cell from being changed to a conductive state during set and reset. Even at the time of resetting, the voltage applied to the resistance change element 302 such as a half-selected row memory cell is reduced, so that the reliability of stored data can be further improved.
  • the reference threshold voltage is measured at the time of setting and resetting.
  • the threshold voltage of the control element 301 such as a half-selected row memory cell at the time of reset may be estimated from the reference threshold voltage measured at the time of setting, and the voltage may be applied to the half-selected row memory cell or the like.
  • the non-selected row applied voltage Vur at the time of reset may be set using the control codes VGur_code_r and VGuc_code_r having the same values as the control codes VGur_code_s and VGuc_code_s acquired at the time of setting.
  • control element 301 If there is no significant difference in the characteristics of the control element 301 when the polarity of the applied voltage is different, the same control code can be used for setting and resetting. Thereby, it is possible to omit the measurement of the reference threshold voltage at the time of resetting.
  • a memory cell including the resistance change element 302 and the control element 301 that apply voltage in both directions is used.
  • a memory cell configured by a resistance change element and a control element that apply a voltage in a single direction is adopted to simplify the memory system.
  • FIG. 35 is a diagram illustrating a configuration example of a memory cell and a reference cell according to the sixth embodiment of the present technology.
  • the figure shows an example of a memory cell and a reference cell constituted by a control element 304 and a resistance change element 305 connected in series.
  • a diode can be used as the control element 304.
  • the resistance change element 305 configured by PCRAM can be used as the resistance change element 305.
  • the resistance change element 305 is a resistance change element that reversibly changes the resistance change element 305 between an amorphous state and a crystalline state by controlling the magnitude of a write current at the time of writing.
  • the amorphous state and the crystalline state correspond to HRS and LRS, respectively.
  • a reference memory cell is arranged to measure a reference threshold voltage.
  • the threshold voltage of the control element 304 is estimated from the measured reference threshold voltage, and the voltage is applied to the memory cell.
  • the configuration of the array drive unit 311 and the like can be simplified.
  • the unidirectional control element 304 can have a simpler configuration than the bidirectional control element 301.
  • the configuration of the memory 30 is the same as the configuration of the memory 30 described in the first embodiment of the present technology, and a description thereof will be omitted.
  • the memory cell and the array are used because the memory cell including the resistance change element 305 and the control element 304 that apply voltage in a single direction is used.
  • the configuration of the driving unit 311 and the like can be simplified.
  • a memory cell including the resistance change element 302 and the control element 301 is used.
  • a memory cell configured by a single element is employed to simplify the memory system.
  • FIG. 36 is a diagram illustrating a configuration example of the memory cell and the reference cell according to the seventh embodiment of the present technology.
  • This figure shows an example of a memory cell and a reference cell constituted by the element 306.
  • the element 306 is an element that changes from a non-conductive state to a conductive state with a threshold voltage as a boundary in accordance with an applied voltage, and changes to a high resistance state and a low resistance state in accordance with a voltage applied in the conductive state. .
  • a reference memory cell is arranged and a reference threshold voltage is measured.
  • the threshold voltage of the element 306 is estimated from the measured reference threshold voltage, and the voltage is applied to the memory cell.
  • the configuration of the memory 30 is the same as the configuration of the memory 30 described in the first embodiment of the present technology, and a description thereof will be omitted.
  • the non-conductive state changes from the non-conductive state according to the applied voltage, and the high resistance state and the low resistance state according to the voltage applied during the conductive state.
  • a memory cell constituted by an element 306 that changes to is used. Thereby, the configuration of the memory cell can be simplified.
  • the threshold voltage is estimated based on the reference threshold voltage, and the voltage is applied to the memory cell. For this reason, when the threshold value of the control element in the memory cell changes, the minimum necessary voltage for making the control element conductive can be applied, and the reliability of stored data can be increased without increasing the power consumption. Can be improved.
  • the processing procedure described in the above embodiment may be regarded as a method having a series of these procedures, and a program for causing a computer to execute these series of procedures or a recording medium storing the program. You may catch it.
  • a recording medium for example, a CD (Compact Disc), an MD (MiniDisc), a DVD (Digital Versatile Disc), a memory card, a Blu-ray disc (Blu-ray (registered trademark) Disc), or the like can be used.
  • this technique can also take the following structures.
  • a memory cell that changes from a non-conducting state to a conducting state in response to an applied voltage, with a threshold voltage as a boundary, and changes to a high resistance state and a low resistance state in accordance with the voltage applied in the conducting state;
  • a reference cell comprising a reference element that changes from a non-conducting state to a conducting state in response to an applied voltage with a reference threshold voltage as a boundary;
  • a memory comprising: an access control unit that estimates a reference threshold voltage measured in the reference cell as a threshold voltage of the memory cell and applies a voltage to the memory cell when accessing the memory cell.
  • the memory cell includes a control element that changes from the non-conducting state to the conducting state according to an applied voltage, and the high resistance state and the low resistance according to the applied voltage.
  • the memory according to (1) further including a resistance change element that changes to a state.
  • (4) The data cell is accessed in units of pages divided by page size, The reference cell is arranged for each page, The memory according to (1) to (3), wherein the access control unit estimates the reference threshold voltage as a threshold voltage of the memory cell for each page and applies a voltage to the memory cell.
  • a plurality of the reference cells are arranged for each page, The memory according to (4), wherein the access control unit estimates a threshold voltage of the memory cell based on a reference threshold voltage in the plurality of reference cells.
  • the access control unit changes the memory cell in the low resistance state of the page to the conductive state when the memory cell in the high resistance state exists after writing in the page, and after the change
  • the access control unit estimates a reference threshold voltage of the reference cell arranged for each of the plurality of memory cells as a threshold voltage of the memory cell, and applies a voltage to the memory cell according to (1). memory.
  • the threshold voltage of the half-selected row memory cell which is the memory cell connected between the selected row signal line and the column signal line excluding the selected column signal line, when the memory cell is written, and the selection
  • the threshold voltage of a half-selected column memory cell which is the memory cell connected between the column signal line and the row signal line excluding the selected row signal line, is estimated by the reference threshold voltage, and the half-selected row memory cell.
  • (11) further comprising an error detection and correction unit that performs error detection and error correction of read data related to the access;
  • the access control unit estimates the reference threshold voltage as a threshold voltage of the memory cell and applies a voltage to the memory cell when the error detection / correction unit detects an error in the read data.
  • a memory cell that changes from a non-conductive state to a conductive state according to an applied voltage at a threshold voltage and changes to a high resistance state and a low resistance state according to a voltage applied when the conductive state is applied;
  • a reference cell comprising a reference element that changes from a non-conducting state to a conducting state in response to an applied voltage with a reference threshold voltage as a boundary;
  • a memory including an access control unit that estimates a reference threshold voltage measured in the reference cell as a threshold voltage of the memory cell and applies a voltage to the memory cell when accessing the memory cell;
  • An information processing system comprising: a host computer that accesses the memory.
  • the reference threshold voltage measured in a reference cell including a reference element that changes from a non-conduction state to a conduction state according to the applied voltage at a reference threshold voltage as a boundary, and a non-conduction state according to the applied voltage
  • the memory cell is accessed by estimating the threshold voltage of the memory cell that changes from the threshold voltage to the conductive state at the threshold voltage and changes to the high resistance state and the low resistance state according to the voltage applied in the conductive state.
  • a memory control method comprising an access control procedure for applying a voltage to the memory cell at the time.

Landscapes

  • Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Computer Security & Cryptography (AREA)
  • Chemical & Material Sciences (AREA)
  • Crystallography & Structural Chemistry (AREA)
  • Semiconductor Memories (AREA)

Abstract

メモリセルにおける制御素子の閾値が変化した場合において、消費電力を増加させることなく、記憶データの信頼性を向上させる。 メモリセルと参照セルとアクセス制御部とを有するメモリにおいて、メモリセルは、印加された電圧に応じて非導通状態から導通状態に閾値電圧を境として変化するとともに導通状態の時に印加された電圧に応じて高抵抗状態および低抵抗状態に変化する。参照セルは、印加された電圧に応じて非導通状態から導通状態に参照閾値電圧を境として変化する。アクセス制御部は、参照セルにおいて計測された参照閾値電圧をメモリセルの閾値電圧と推定してメモリセルのアクセスの際にメモリセルに電圧を印加する。

Description

メモリ、情報処理システムおよびメモリの制御方法
 本技術は、メモリ、情報処理システムおよびメモリの制御方法に関する。詳しくは、印加された電圧に応じて非導通状態から導通状態に変化する制御素子を有するメモリセルから構成されるメモリ、情報処理システムおよびメモリの制御方法に関する。
 従来、抵抗値が可逆的に変化する抵抗変化素子とデータの書込みおよび読出しの際にこの抵抗変化素子を制御する制御素子とが直列に接続されたメモリセルが2次元に配置されて構成されたメモリが使用されている。抵抗変化素子は、印加された電圧等により抵抗値を変化させることができる素子であり、抵抗が高い状態および低い状態を、例えば、値「0」および「1」にそれぞれ対応させて記憶を行う素子である。このようなメモリとして、ReRAM(Resistive RAM)、PCRAM(Phase-Change RAM)およびMRAM(Magnetoresistive RAM)などにより構成されたメモリが知られている。制御素子は、この抵抗変化素子に印加される電圧を制御する素子である。この制御素子として、MOSトランジスタのように制御電極を備えた3端子型の制御素子や、制御電極を省略して簡略化された2端子型の制御素子などが使用されている。近年、この2端子型の制御素子を採用して低コスト化したメモリが注目されている。2端子型の制御素子は、印加された電圧に応じて閾値を境として非導通状態および導通状態に変化する素子である。この2端子型の制御素子を使用したメモリセルにおけるデータの読出しは、次の手順により行われる。まず、メモリセルに電圧を印加して制御素子を導通状態にする、すなわちオンさせる。次に、抵抗変化素子の抵抗値が高い状態または低い状態の何れであるかを判断する。
 上述の抵抗変化素子は、構造が簡単で高速にアクセス可能である一方、電気的な特性が変化するという問題がある。例えば、相変化型メモリであるPCRAMは、抵抗変化素子を非結晶状態および結晶状態に変化させることにより抵抗値を変化させるメモリであり、これらの状態がデータの書込みからの経過時間に応じて変化する。このため、抵抗変化素子の抵抗が高い状態または低い状態の何れであるかを判断するための抵抗値である閾値も経過時間に応じて変化する。そこで、データの書込みからの経過時間に応じて抵抗変化素子に印加する電圧である読出し電圧を変更し、抵抗変化素子の抵抗が高い状態または低い状態の何れであるかの判断を行う。これにより、閾値が変化した場合であっても、書き込まれたデータと同じデータの読出しを可能とするシステムが提案されている(例えば、特許文献1参照。)。
米国特許出願公開第2009/0303785号明細書
 前述のように、2端子型の制御素子は、閾値を超える電圧が印加されると非導通状態から導通状態に変化し、電圧の印加を停止すると非導通状態に戻る素子である。すなわち、抵抗変化素子と同様に、印加された電圧に応じて抵抗値が変化する素子である。この2端子型の制御素子の閾値電圧が前回のオン動作からの経過時間に応じて変化する場合を想定する。例えば、前回のオン動作の時より高い閾値電圧に変化すると、前回と同じ電圧をメモリセルに印加しても、変化後の閾値電圧と比べて相対的に低い印加電圧となり、制御素子を十分に導通させることができなくなる。このため、抵抗変化素子の抵抗が低抵抗の状態であっても、高抵抗の状態と判断されて記憶されたデータとは異なるデータが読み出されてしまい、その結果、記憶データの信頼性が低下するという問題がある。閾値電圧の変化を想定した高い電圧をメモリセルに印加することにより、前回のオン動作からの経過時間に関わらず制御素子をオンさせることができる。しかし、この場合には、比較的高い電圧がメモリセルに印加されて読出しが行われるため、読出しの際の消費電力が増加するという問題が生じる。
 本技術はこのような状況に鑑みて生み出されたものであり、メモリセルにおける制御素子の閾値が変化した場合において、消費電力を増加させることなく、記憶データの信頼性を向上させることを目的とする。
 本技術は、上述の問題点を解消するためになされたものであり、その第1の側面は、印加された電圧に応じて非導通状態から導通状態に閾値電圧を境として変化するとともに上記導通状態の時に印加された電圧に応じて高抵抗状態および低抵抗状態に変化するメモリセルと、印加された電圧に応じて非導通状態から導通状態に参照閾値電圧を境として変化する参照素子を備える参照セルと、上記参照セルにおいて計測された参照閾値電圧を上記メモリセルの閾値電圧と推定して上記メモリセルのアクセスの際に上記メモリセルに電圧を印加するアクセス制御部とを具備するメモリおよびメモリの制御方法である。これにより、参照閾値電圧によりメモリセルの閾値電圧が推定されてメモリセルに電圧が印加されるという作用をもたらす。
 また、この第1の側面において、上記メモリセルは、印加された電圧に応じて上記非導通状態から上記導通状態に上記閾値電圧を境として変化する制御素子と印加された電圧に応じて上記高抵抗状態および上記低抵抗状態に変化する抵抗変化素子とを備えてもよい。これにより、参照閾値電圧によりメモリセルの制御素子の閾値電圧が推定されるという作用をもたらす。
 また、この第1の側面において、上記アクセス制御部は、読出しを行う際に上記参照素子を上記非導通状態から上記導通状態に変化させて上記参照閾値電圧の計測を行ってもよい。これにより、メモリセルおよび参照素子における非導通状態から導通状態への変化を同期させるという作用をもたらす。
 また、この第1の側面において、上記データセルは、ページサイズにより分割されたページを単位としてアクセスされ、上記参照セルは、上記ページ毎に配置され、上記アクセス制御部は、上記ページ毎に上記参照閾値電圧を上記メモリセルの閾値電圧と推定して上記メモリセルに電圧を印加してもよい。これにより、ページ毎に参照閾値電圧が計測されてメモリセルの閾値電圧が推定されるという作用をもたらす。
 また、この第1の側面において、上記参照セルは、上記ページ毎に複数配置され、上記アクセス制御部は、上記複数の参照セルにおける参照閾値電圧により上記メモリセルの閾値電圧を推定してもよい。これにより、計測された複数の参照閾値電圧によりメモリセルの閾値電圧が推定されるという作用をもたらす。
 また、この第1の側面において、上記アクセス制御部は、上記ページにおける読出しを行う際に上記参照素子を上記非導通状態から上記導通状態に変化させて上記参照閾値電圧の計測を行ってもよい。これにより、メモリセルおよび参照素子における非導通状態から導通状態への変化をページ毎に同期させるという作用をもたらす。
 また、この第1の側面において、上記アクセス制御部は、上記ページにおける書込みの後に上記高抵抗状態の上記メモリセルが存在する場合に上記ページの上記低抵抗状態の上記メモリセルを上記導通状態に変化させて当該変化後の経過時間を上記高抵抗状態の上記メモリセルと略等しいかまたは短い状態にして上記参照閾値電圧を上記ページにおける上記メモリセルの閾値電圧と推定してもよい。これにより、高抵抗状態のメモリセルおよび低抵抗状態のメモリセルにおける非導通状態から導通状態への変化を同期させるという作用をもたらす。
 また、この第1の側面において、XYマトリクス状に配置された複数の行信号線および複数の列信号線をさらに具備し、上記メモリセルは、上記複数の行信号線および上記複数の列信号線の交点に複数配置されて上記交点における上記複数の行信号線のうちの一つと上記交点における上記複数の列信号線のうちの一つとにそれぞれ接続され、上記参照セルは、上記複数のメモリセル毎に配置され、上記アクセス制御部は、上記複数のメモリセル毎に配置された上記参照セルの参照閾値電圧を上記メモリセルの閾値電圧と推定して上記メモリセル毎に電圧を印加してもよい。これにより、複数の行信号線および複数の列信号線により配線されたメモリセルの閾値電圧が参照閾値電圧により推定されてメモリセルに電圧が印加されるという作用をもたらす。
 また、この第1の側面において、上記アクセス制御部は、上記複数の行信号線のうちの一つと上記複数の列信号線のうちの一つとを選択して上記アクセスを行ってもよい。これにより、選択された行信号線および選択された列信号線に接続されたメモリセルの閾値電圧が参照閾値電圧により推定されるという作用をもたらす。
 また、この第1の側面において、上記アクセス制御部は、上記複数の行信号線のうちの一つである選択行信号線と上記複数の列信号線のうちの一つである選択列信号線との間に接続された上記メモリセルの書込みを行う際に上記選択行信号線と上記選択列信号線を除く上記列信号線との間に接続された上記メモリセルである半選択行メモリセルの閾値電圧および上記選択列信号線と上記選択行信号線を除く上記行信号線との間に接続された上記メモリセルである半選択列メモリセルの閾値電圧を上記参照閾値電圧により推定して上記半選択行メモリセルおよび上記半選択列メモリセルに電圧を印加してもよい。これにより、半選択行メモリセルおよび半選択列メモリセルの閾値電圧が参照閾値電圧により推定されるという作用をもたらす。
 また、この第1の側面において、上記アクセスに係る読出しデータの誤り検出および誤り訂正を行う誤り検出訂正部をさらに具備し、上記アクセス制御部は、上記誤り検出訂正部において上記読出しデータの誤りが検出された際に上記参照閾値電圧を上記メモリセルの閾値電圧と推定して上記メモリセルに電圧を印加してもよい。これにより、誤りが検出された場合に、参照閾値電圧によりメモリセルの閾値電圧が推定されるという作用をもたらす。
 また、本技術の第2の側面は、印加された電圧に応じて非導通状態から導通状態に閾値電圧を境として変化するとともに上記導通状態の時に印加された電圧に応じて高抵抗状態および低抵抗状態に変化するメモリセルと、印加された電圧に応じて非導通状態から導通状態に参照閾値電圧を境として変化する参照素子を備える参照セルと、上記参照セルにおいて計測された参照閾値電圧を上記メモリセルの閾値電圧と推定して上記メモリセルのアクセスの際に上記メモリセルに電圧を印加するアクセス制御部とを備えるメモリと、上記メモリにアクセスするホストコンピュータとを具備する情報処理システムである。これにより、参照閾値電圧によりメモリセルの閾値電圧が推定されてメモリセルに電圧が印加されるという作用をもたらす。
 本技術によれば、メモリセルにおける制御素子の閾値が変化した場合において、消費電力を増加させることなく、記憶データの信頼性を向上させるという優れた効果を奏し得る。なお、ここに記載された効果は必ずしも限定されるものではなく、本開示中に記載されたいずれかの効果であってもよい。
本技術の実施の形態における情報処理システムの構成例を示す図である。 本技術の第1の実施の形態におけるアクセス制御部200の構成例を示す図である。 本技術の第1の実施の形態におけるメモリアレイ300の構成例を示す図である。 本技術の第1の実施の形態におけるメモリアレイユニット310の構成例を示す図である。 本技術の第1の実施の形態における参照アレイユニット390の構成例を示す図である。 本技術の第1の実施の形態におけるメモリセルおよび参照セルの構成例を示す図である。 本技術の第1の実施の形態における抵抗変化素子302の特性の一例を示す図である。 本技術の第1の実施の形態における制御素子301の特性の一例を示す図である。 本技術の実施の形態における行信号線および列信号線の印加電圧を示す図である。 本技術の第1の実施の形態におけるメモリセルの印加電圧を示す図である。 本技術の第1の実施の形態におけるオペレーションコードを示す図である。 本技術の第1の実施の形態における印加電圧生成部250の出力電圧を示す図である。 本技術の第1の実施の形態における読出し処理の処理手順の一例を示す図である。 本技術の第1の実施の形態におけるメモリアレイユニット読出し処理(ステップS910)の処理手順の一例を示す図である。 本技術の第1の実施の形態におけるメモリセル読出し処理(ステップS920)の処理手順の一例を示す図である。 本技術の第1の実施の形態における書込み処理の処理手順の一例を示す図である。 本技術の第1の実施の形態におけるメモリアレイユニット書込み処理(ステップS940)の処理手順の一例を示す図である。 本技術の第1の実施の形態におけるメモリセルの印加電圧と電流との関係を示す図である。 本技術の第2の実施の形態におけるメモリアレイユニット読出し処理(ステップS910)の処理手順の一例を示す図である。 本技術の第3の実施の形態におけるメモリアレイ300の構成例を示す図である。 本技術の第4の実施の形態におけるアクセス制御部200の構成例を示す図である。 本技術の第4の実施の形態におけるメモリセルの印加電圧を示す図である。 本技術の第4の実施の形態におけるオペレーションコードを示す図である。 本技術の第4の実施の形態における非選択行印加電圧生成部260および非選択列印加電圧生成部270の出力電圧を示す図である。 本技術の第4の実施の形態におけるメモリアレイユニット読出し処理(ステップS960)の処理手順の一例を示す図である。 本技術の第4の実施の形態における書込み処理の処理手順の一例を示す図である。 本技術の第4の実施の形態における非選択ラインセット電圧設定処理(ステップS980)の処理手順の一例を示す図である。 本技術の第4の実施の形態におけるセット時のコード設定処理(ステップS990)の処理手順の一例を示す図である。 本技術の第4の実施の形態におけるメモリアレイユニット書込み処理(ステップS810)の処理手順の一例を示す図である。 本技術の第5の実施の形態におけるオペレーションコードを示す図である。 本技術の第5の実施の形態における非選択行印加電圧生成部260および非選択列印加電圧生成部270の出力電圧を示す図である。 本技術の第5の実施の形態における書込み処理の処理手順の一例を示す図である。 本技術の第5の実施の形態における非選択ラインリセット電圧設定処理(ステップS840)の処理手順の一例を示す図である。 本技術の第5の実施の形態におけるリセット時のコード設定処理(ステップS850)の処理手順の一例を示す図である。 本技術の第6の実施の形態におけるメモリセルおよび参照セルの構成例を示す図である。 本技術の第7の実施の形態におけるメモリセルおよび参照セルの構成例を示す図である。
 以下、本技術を実施するための形態(以下、実施の形態と称する)について説明する。説明は以下の順序により行う。
 1.第1の実施の形態(メモリセルの閾値電圧を参照素子の参照閾値電圧により推定する場合の例)
 2.第2の実施の形態(読出しデータに対する誤り検出等の結果に基づいて参照閾値電圧による推定を行う場合の例)
 3.第3の実施の形態(ページ毎に2つの参照素子を備える場合の例)
 4.第4の実施の形態(セットにおける半選択行メモリセルおよび半選択列メモリセルの閾値電圧を参照閾値電圧により推定する場合の例)
 5.第5の実施の形態(セットおよびリセットにおける半選択行メモリセルおよび半選択列メモリセルの閾値電圧を参照閾値電圧により推定する場合の例)
 6.第6の実施の形態(単一方向性の抵抗変化素子および制御素子により構成されたメモリセルを使用する場合の例)
 7.第7の実施の形態(単一の素子により構成されたメモリセルを使用する場合の例)
 <1.第1の実施の形態>
 [情報処理システムの構成]
 図1は、本技術の実施の形態における情報処理システムの構成例を示す図である。同図の情報処理システムは、ホストコンピュータ10と、メモリコントローラ20と、メモリ30とを備える。
 ホストコンピュータ10は、情報処理システムにおける各種の処理を行うものである。このホストコンピュータ10は、メモリコントローラ20を介して、メモリ30に対して書込みまたは読出し等のコマンドを発行してアクセスを行う。信号線19は、ホストコンピュータ10とメモリコントローラ20とを電気的に接続する信号線である。
 メモリコントローラ20は、メモリ30を制御するものである。このメモリコントローラ20は、ホストコンピュータ10から発行された書込みおよび読出しコマンドを解釈し、これに基づく書込みおよび読出しリクエストをメモリ30に対して要求する。
 メモリ30は、データを記憶するものである。メモリコントローラ20から要求されたリクエストに基づいて、このデータに対するアクセスが行われる。この際、メモリ30とメモリコントローラ20との間でデータの転送が行われる。このメモリ30には不揮発メモリであるReRAMにより構成されたメモリを想定する。このReRAMは、抵抗変化型メモリであり、抵抗値を可逆的に変化させて記憶を行う抵抗変化素子を有するメモリである。信号線29は、メモリコントローラ20とメモリ30とを電気的に接続する信号線である。
 ホストコンピュータ10は、書込みを行う際に、書込みコマンドとこれに付随する書込みデータ、書込み先アドレスおよび書込みデータ数をメモリコントローラ20に対して発行する。メモリコントローラ20は、発行された書込みコマンドを解釈し、これに付随する書込みデータ、書込み先アドレスおよび書込みデータ数に基づいてメモリ30に対して書込みリクエストを要求する。メモリ30は、このリクエストに基づいて書込みを行う。
 一方、読出しの際には、ホストコンピュータ10は、読出しコマンドとこれに付随する読出し先アドレスおよび読出しデータ数をメモリコントローラ20に対して発行する。メモリコントローラ20がこのコマンドを解釈して、これに付随する読出し先アドレスおよび読出しデータ数に基づいてメモリ30に対して読出しリクエストを要求する。メモリ30は、このリクエストに基づいて読出しを行い、読み出したデータをメモリコントローラ20に対して出力する。メモリコントローラ20は、この出力されたデータを読出しデータとしてホストコンピュータ10に出力する。
 [メモリコントローラの構成]
 メモリコントローラ20は、ホストコンピュータインターフェース21と、メモリアクセス制御部22と、誤り検出訂正部23と、メモリインターフェース24とを備える。
 ホストコンピュータインターフェース21は、ホストコンピュータ10との間のやり取りを行うインターフェースである。
 メモリアクセス制御部22は、メモリ30に対するアクセスを制御するものである。このメモリアクセス制御部22は、メモリコントローラ20の全体を制御するとともに、ホストコンピュータ10が発行したコマンドの解釈、これに基づくリクエストの生成を行う。
 誤り検出訂正部23は、書込みデータに対する符号化および読出しデータに対する復号を行うものである。ここで、符号化とは、書込みデータにパリティを付加して誤り検出訂正符号(ECC:Error detection and Correction Code)にする処理である。このパリティには、例えば、BCH(Bose-Chaudhuri-Hocquenghem)符号を使って生成されたパリティを使用することができる。また、復号とは、ECCから元のデータを取り出す処理である。この復号の際、データの誤り検出および誤り訂正が行われる。
 メモリインターフェース24は、メモリ30との間のやり取りを行うインターフェースである。
 バス28は、メモリコントローラ20の各部を相互に接続するバスである。信号線29は、メモリコントローラ20とメモリ30とを電気的に接続する信号線である。
 [メモリの構成]
 メモリ30は、メモリコントローラインターフェース100と、アクセス制御部200と、メモリアレイ300とを備える。
 メモリコントローラインターフェース100は、メモリコントローラ20との間のやり取りを行うインターフェースである。
 アクセス制御部200は、メモリ30の全体を制御するものである。また、このアクセス制御部200は、メモリコントローラ20が要求したリクエストを解釈し、メモリアレイ300に対してデータの書込みおよび読出しを行う。アクセス制御部200の構成の詳細については、後述する。
 メモリアレイ300は、アクセス制御部200により制御されてデータの記憶を行うものである。このメモリアレイ300は、ページを単位としてページアドレスによりアクセスされる。なお、メモリコントローラ20により生成されたリクエストにおける書込みデータおよび読出しデータのサイズは1ページと想定する。メモリアレイ300の構成の詳細については、後述する。
 [アクセス制御部の構成]
 図2は、本技術の第1の実施の形態におけるアクセス制御部200の構成例を示す図である。このアクセス制御部200は、書込データ保持部210と、読出データ保持部220と、オペレーションコード保持部230と、メモリアクセス処理部240と、印加電圧生成部250とを備える。
 書込データ保持部210は、メモリアレイ300に対する書込みデータを保持するものである。この書込データ保持部210は、メモリコントローラ20が要求した書込みリクエストに付随する1ページの書込みデータを保持する。
 読出データ保持部220は、メモリアレイ300からの読出しデータを保持するものである。この読出データ保持部220は、メモリコントローラ20が要求した読出しリクエストに基づく1ページの読出しデータを保持する。その後、この読出しデータは、メモリアクセス処理部240によりメモリコントローラ20に対して出力される。また、読出データ保持部220は、書込みリクエストの処理におけるデータの書込みに先立って行われたデータの読出しによる読出しデータの保持をさらに行う。
 オペレーションコード保持部230は、オペレーションコードを保持するものである。ここで、オペレーションコードとは、メモリアレイ300に対する指示を表すものである。このオペレーションコード保持部230は、後述するメモリアレイ300に含まれるメモリアレイユニットおよび参照アレイユニット毎のオペレーションコードを保持する。また、オペレーションコード保持部230は、保持したオペレーションコードを対応するメモリアレイユニット等に出力する。オペレーションコードの詳細については、後述する。
 印加電圧生成部250は、メモリアレイ300に印加する電圧を生成するものである。この印加電圧生成部250は、メモリアクセス処理部240により出力された制御コードに基づいて印加電圧の生成を行う。印加電圧生成部250における処理の詳細については、後述する。
 メモリアクセス処理部240は、メモリアレイ300に対するアクセスの処理を行うものである。また、このメモリアクセス処理部240は、アクセス制御部200の全体を制御する。リクエストが入力された際、メモリアクセス処理部240は、入力されたリクエストを解釈して、メモリアレイ300に対してオペレーションコード、イネーブル信号およびアドレスを出力する。ここで、イネーブル信号は、後述するメモリアレイ300のメモリセルに対する印加電圧生成部250により生成された電圧の印加を指示する信号である。また、メモリアクセス処理部240は、メモリアレイ300との間でデータを双方向にやり取りする。さらに、メモリアクセス処理部240は、制御コードを出力して印加電圧生成部250を制御することにより、メモリアレイ300のメモリセルに印加される電圧の制御を行う。メモリアクセス処理部240における処理の詳細については、後述する。
 [メモリアレイの構成]
 図3は、本技術の第1の実施の形態におけるメモリアレイ300の構成例を示す図である。このメモリアレイ300は、メモリアレイユニット#1(310)乃至#8(380)と、参照アレイユニット390とを備える。
 メモリアレイユニット#1(310)乃至#8(380)は、1ビットのデータを記憶するメモリセルがアレイ状に配置されて構成されたものである。ここで、メモリセルは、後述する制御素子および抵抗変化素子により構成されるものである。メモリアレイユニット#1(310)乃至#8(380)は、メモリアクセス処理部240が出力するオペレーションコード、イネーブル信号およびアドレスに基づいてメモリセルに対して電圧を印加する。また、これらメモリアレイユニット#1(310)乃至#8(380)は、同一のアドレスが入力されて同時にアクセスされる。すなわち、これらのメモリアレイユニット数が1ページのビット数に該当する。同図の例では、8ビットが1ページに相当する。
 参照アレイユニット390は、参照セルがアレイ状に配置されて構成されたものである。ここで、参照セルは、メモリセルの制御素子の閾値電圧を推定するための参照素子を備えるものである。参照セルの構成の詳細については、後述する。
 [メモリアレイユニットの構成]
 図4は、本技術の第1の実施の形態におけるメモリアレイユニット310の構成例を示す図である。このメモリアレイユニット310は、アレイ駆動部311と、行信号線312と、列信号線313と、メモリセル314乃至317とを備える。便宜上、同図のメモリアレイユニット310は、4個のメモリセルとそれぞれ2本の行信号線312および列信号線313を備えることを想定する。なお、メモリアレイユニット#2(320)乃至#8(380)は同図のメモリアレイユニット310と同じ構成であるため、説明を省略する。
 行信号線312および列信号線313は、メモリセル314乃至317のそれぞれに印加する電圧を伝達するものである。これらは、XYマトリクス状に配置される。
 メモリセル314乃至317は、抵抗変化素子および制御素子を備えて1ビットのデータを記憶するものである。抵抗変化素子は、印加された電圧に応じて高抵抗状態および低抵抗状態に変化する素子である。これら高抵抗状態および低抵抗状態を切替えることによりデータの記憶が行われる。制御素子は、印加された電圧に応じて非導通状態から導通状態に閾値電圧を境として変化する素子である。この制御素子により抵抗変化素子に印加される電圧が制御される。
 上述のXYマトリクス状に配置された行信号線312および列信号線313の交点にメモリセル314乃至317が配置される。さらに、メモリセル314乃至317は、一端が行信号線312に接続され、他の一端が列信号線313に接続される。具体的には、メモリセル314は、行信号線312のうち「RL0」が付された行信号線に一端が接続され、列信号線313のうち「CL0」が付された列信号線に他の一端が接続されている。メモリセル314乃至317の構成の詳細については、後述する。
 アレイ駆動部311は、メモリセル314乃至317を駆動するものである。このアレイ駆動部311は、アクセス制御部200により出力されたアドレスに基づいて、行信号線312および列信号線313からそれぞれ1つの信号線を選択する。以下、選択された行信号線312および選択された列信号線313をそれぞれ選択行信号線および選択列信号線と称する。その後、イネーブル信号が出力されると、アレイ駆動部311は、印加電圧生成部250により生成された印加電圧を選択行信号線および選択列信号線に対して出力する。これにより、選択行信号線および選択列信号線に接続されたメモリセル314等に対して電圧が印加され、書込みおよび読出しが行われる。アレイ駆動部311は、アクセス制御部200が出力したオペレーションコードに基づいてメモリセル314乃至317に印加される電圧の極性を変更して書込みおよび読出しを行う。また、アレイ駆動部311は、これら書込みおよび読出しに係るデータをアクセス制御部200との間で双方向にやり取りする。
 一方、アレイ駆動部311は、上述の選択行信号線以外の行信号線312および選択列信号線以外の列信号線313に対してさらに電圧を印加する。以下、選択行信号線以外の行信号線312を非選択行信号線と称し、選択列信号線以外の列信号線313を非選択列信号線と称する。これら選択行信号線等に印加される電圧の詳細については、後述する。
 [参照アレイユニットの構成]
 図5は、本技術の第1の実施の形態における参照アレイユニット390の構成例を示す図である。この参照アレイユニット390は、アレイ駆動部391と、行信号線392と、列信号線393と、参照セル394乃至397とを備える。
 参照セル394乃至397は、参照素子を備えるものである。参照素子は、印加された電圧に応じて非導通状態から導通状態に参照閾値電圧を境として変化する素子である。この参照閾値電圧を図4において説明したメモリセル314乃至317に含まれる制御素子の閾値電圧と推定し、アクセスの際にメモリセル314等に電圧が印加される。このため、参照セル394乃至397は、メモリセル314乃至317と1対1に対応し、メモリセル314等のアクセスに先立って対応する参照セル394乃至397における参照閾値電圧の計測が行われる。
 アレイ駆動部391は、印加電圧生成部250により生成された電圧を参照セル394乃至397に印加して読出しを行い、読み出したデータをアクセス制御部200に対して出力する。この際、参照セル394等に印加する電圧を高めながら読出したデータの変化を調べることにより参照閾値電圧の計測が行われる。これ以外のアレイ駆動部391の構成はアレイ駆動部311の構成と同様であるため、説明を省略する。
 行信号線392および列信号線393の構成ならびに参照セル394乃至397の配置は図4において説明した行信号線312および列信号線313の構成ならびにメモリセル314乃至317の配置と同様であるため、説明を省略する。
 [メモリセルおよび参照セルの構成]
 図6は、本技術の第1の実施の形態におけるメモリセルおよび参照セルの構成例を示す図である。同図におけるaはメモリセルの構成例を表したものであり、直列に接続された制御素子301および抵抗変化素子302により構成されるメモリセルの例を表したものである。
 抵抗変化素子302は、前述のように高抵抗状態および低抵抗状態の2つの状態を有し、これら2つの状態を切替えることによりデータの記憶を行う。以下、高抵抗状態をHRS(High Resistance State)、低抵抗状態をLRS(Low Resistance State)と称する。この抵抗変化素子302として、イオン供給層と絶縁層とが積層された素子を挙げることができる。イオン供給層から供給されたイオンが絶縁層に拡散することにより抵抗変化素子302はLRSになる。逆に、絶縁層に拡散したイオンがイオン供給層に戻った場合には、抵抗変化素子302は、HRSになる。
 このイオンの拡散等は、抵抗変化素子302に印加される書込み電圧の極性により変化する。すなわち、イオンが拡散する方向に書込み電圧が印加された場合には、抵抗変化素子302をHRSからLRSにすることができる。一方、逆極性の書込み電圧が印加された場合には、抵抗変化素子302は、LRSからHRSに戻ることとなる。このように抵抗変化素子302をHRSおよびLRSに可逆的に変化させることによりデータの書込みが行われる。なお、データの読出しを行う場合には、書込み電圧より絶対値が低い読出し電圧を抵抗変化素子302に印加して流れる電流値によりHRSまたはLRSを判断することにより行うことができる。
 制御素子301は、前述のように非導通状態および導通状態の2つの状態を有し、抵抗変化素子302に印加される電圧を制御するものである。この制御素子301は、印加された電圧と流れる電流との関係が非線形であり、閾値電圧以上の電圧を印加することにより非導通状態から導通状態に変化する。導通状態にある制御素子301に対して電圧の印加を停止すると、元の非導通状態に戻る。すなわち、印加する電圧を変化させることにより、制御素子301は、非導通状態および導通状態に可逆的に変化する。さらに、制御素子301は、双方向素子であり、逆極性の電圧を印加した場合においても、非導通状態および導通状態に可逆的に変化させることができる。このような性質を有する制御素子301として、双方向ダイオードを挙げることができる。
 同図におけるbおよびcは、参照セルの構成を表したものである。同図におけるbは、直列に接続された参照素子303および抵抗変化素子302により構成される参照セルの例を表したものである。この参照素子303には、制御素子301と同じ構成の素子を使用することができる。また、同図におけるcの参照セルは、参照素子303により構成される参照セルの例を表したものである。
 [抵抗変化素子の特性]
 図7は、本技術の第1の実施の形態における抵抗変化素子302の特性の一例を示す図である。同図は、抵抗変化素子302の抵抗値の分布を表したグラフである。同図において、グラフ501はLRSの場合の分布を表し、グラフ502はHRSの場合の分布を表す。同図に記載された点線は、LRSおよびHRSを分離する閾値を表す。抵抗変化素子302の抵抗がこの閾値に相当する抵抗値より高い場合および低い場合にそれぞれHRSおよびLRSと判断することができる。抵抗変化素子302は、これらLRSおよびHRSを論理値に対応させて1ビットのデータを記憶する。例えば、同図に表したように、LRSおよびHRSを値「1」および「0」にそれぞれ対応させることができる。また、例えば、LRSおよびHRSを値「0」および「1」にそれぞれ対応させることも可能である。本技術の実施の形態では、LRSおよびHRSを値「1」および「0」にそれぞれ対応させることを想定する。
 また、HRSからLRSに遷移させる処理をセットと称し、LRSからHRSに遷移させる処理をリセットと称する。図5において説明したように、セットおよびリセットは、抵抗変化素子302に印加する電圧の極性が異なる。以下、この電圧をプログラム電圧と称する。また、抵抗変化素子302から読出しを行う場合には、セットと同じ極性の電圧を印加することを想定する。図4において説明したアレイ駆動部311は、読出しを行う際、メモリセルに流れる電流から抵抗変化素子302の抵抗値を算出し、この抵抗値と上述の閾値に相当する抵抗値とを比較することにより、データの読出しを行う。なお、リセットと同じ極性の電圧を印加して、抵抗変化素子302から読出しを行うことも可能である。
 図3において説明したように、メモリセルは、制御素子301および抵抗変化素子302が直列に接続されて構成されているため、メモリセルに印加された電圧は、制御素子301および抵抗変化素子302の抵抗の比率に基づいて分圧される。抵抗変化素子302のセットおよびリセットの処理を行う場合には、制御素子301を導通状態にして、プログラム電圧を抵抗変化素子302に印加する必要がある。このため、制御素子301の閾値電圧とプログラム電圧とを加えた書込み電圧をメモリセルに印加する必要がある。
 前述のように、読出しの際には、プログラム電圧より低い電圧をメモリセルに印加する。抵抗変化素子302がHRSの場合には、LRSの場合と比較して、抵抗変化素子302に対してより高い電圧が分圧される。このため、制御素子301を導通状態にするには、抵抗変化素子302がLRSのメモリセルより高い電圧を印加する必要がある。以下、抵抗変化素子302がHRSのメモリセルおよび抵抗変化素子302がLRSのメモリセルをそれぞれHRSのメモリセルおよびLRSのメモリセルと称する。この読出しの際に印加する電圧である読出し電圧として、LRSのメモリセルにおける制御素子301が導通状態になるとともにHRSのメモリセルにおける制御素子301が非導通状態にとどまる電圧を採用することができる。すなわち、LRSのメモリセルの制御素子301には閾値電圧を超える印加電圧となり、HRSのメモリセルの制御素子301には閾値電圧未満の印加電圧となる読出し電圧にすることができる。これにより、HRSのメモリセルにおいては、読出しの際に制御素子301を非導通状態にして抵抗変化素子302に印加される電圧を低減することができる。
 読出しの際には、セットと同極性の読出し電圧が抵抗変化素子302に印加されるため、読出しを行うことにより抵抗変化素子302の記憶状態が徐々に変化し、記憶したデータの読出しにおいてエラーを生じる現象が知られている。これは、例えば、HRSの抵抗変化素子302の抵抗値が徐々に低下して、HRSおよびLRSを分離する閾値に近い抵抗値になり、記憶されたデータの読出しができなくなる現象であり、いわゆるリードディスターブと称される現象である。しかし、上述のようにHRSの抵抗変化素子302に印加される電圧が低減される場合には、抵抗変化素子302の記憶状態の変化が軽減され、リードディスターブの発生を防止することができる。このように、本技術の実施の形態では、読出しの際にLRSのメモリセルにおける制御素子301のみを導通状態にする。
 [制御素子の特性]
 図8は、本技術の第1の実施の形態における制御素子301の特性の一例を示す図である。同図は、制御素子301の印加電圧と流れる電流との関係を表したグラフである。前述のように、制御素子301は双方向素子であり、逆極性の電圧を印加した場合の特性は、同図の特性曲線の符号のみを負にしたグラフと等価である。同図は、この第3象限の記載を省略している。同図に表したように、制御素子301は、非導通状態および導通状態に可逆的に変化する。以下、非導通状態から導通状態への変化をオンと称し、導通状態から非導通状態への変化をオフと称する。閾値電圧は、制御素子301がオンする電圧であり、例えば、制御素子301に流れる電流が同図に表した所定の電流であるIthに達する電圧を閾値電圧にすることができる。
 この閾値電圧は、前回オンした時からの経過時間に応じて変化する。同図のグラフ503は、この経過時間が1μsの場合の特性を表している。同様に、グラフ504乃至506は、それぞれ経過時間が1ms、1sおよび10年の場合の特性を表している。このように、経過時間に応じて、特性曲線が同図における高電圧の方向に移動し、閾値電圧も高い値に変化する。このため、制御素子301をオンさせるためには、経過時間が長いほど高い電圧を印加する必要がある。
 経過時間が長い場合を想定して高い電圧を読出し電圧としてメモリセル314乃至317に印加することにより、経過時間に関わらず制御素子301をオンすることができる。しかし、高い電圧を印加した場合には、HRSのメモリセルにおける制御素子301がオンする場合が想定されるとともに、消費電力が増加する。メモリセル毎に経過時間を記録し、これに基づいて閾値電圧を推定して電圧を印加することも可能であるが、経過時間を記録するためのハードウェアおよびソフトウェア的な負担が過大なものとなる。そこで、参照セルの参照素子303の閾値電圧である参照閾値電圧を計測して、この参照閾値電圧を制御素子301の閾値電圧と推定してメモリセルのアクセスの際にメモリセルに電圧を印加する方式を採用する。
 参照閾値電圧の計測は、次のように行うことができる。図5において説明したように、参照セルに印加する電圧を徐々に高くしながら参照セルに流れる電流の変化を調べ、この電流がIthに達した時の参照セルの印加電圧を参照閾値電圧として計測する。図5において説明したアレイ駆動部391は、参照セル394等に流れる電流がIth未満の場合およびIth以上の場合にそれぞれ値「0」および「1」を読出しデータとしてアクセス制御部200に出力する。図4において説明したメモリアクセス処理部240は、この読出しデータが値「0」の場合には、印加電圧生成部250に対して徐々に高い電圧を出力するように制御する。この制御は、制御コードを印加電圧生成部250に出力することにより行われる。そして、読出しデータが値「1」になった時の印加電圧生成部250の出力電圧を参照閾値電圧とし、この出力電圧に対応する制御コードを保持する。次に、データの読出しを行う際に、この制御コードに基づく電圧をメモリセル314等の閾値電圧と推定してメモリセル314等に印加する電圧を決定する。計測された参照閾値電圧に対して所定の電圧をマージンとして追加した電圧をメモリセル314等に印加することもできる。これにより、制御素子301および参照素子303の特性のばらつきが大きい場合であっても、制御素子301を十分に導通させることができる。
 なお、参照閾値電圧を制御素子301の閾値電圧として推定するためには、ページにおける全てのメモリセルの制御素子301および参照素子303における経過時間を等しくする必要がある。本技術の実施の形態では、データの読出しの際に参照素子303とLRSのメモリセルの制御素子301が略同時にオンされる。また、後述するように、本技術の第1の実施の形態では、ページにおける書込みを行う前に読出し(プレリード)が行われる。このプレリードにより、参照素子303とLRSのメモリセルの制御素子301が略同時にオンされる。これに続く書込みにおいて抵抗変化素子302がHRSからLRSに変化したメモリセルの制御素子301は、当該書込みの際に制御素子301がオンしているため、プレリードにおける参照素子303と略同時にオンされることとなる。
 一方、HRSのメモリセルについては、参照素子303とは異なる経過時間になる場合が想定される。しかし、HRSのメモリセルは、前述のようにデータの読出しの際、制御素子301が非導通状態を保つため、この制御素子301の経過時間は、参照素子303の経過時間と略同じかまたは長くなる。このため、参照素子303により推定された閾値電圧に基づく読出し電圧が印加された場合においても、HRSのメモリセルの制御素子301が導通状態になることはなく、記憶データの信頼性が低下することはない。このように、参照素子303とLRSのメモリセルの制御素子301とが略同じ経過時間となるため、参照閾値電圧をページにおける制御素子301の閾値電圧として推定することができる。なお、参照セルとして図6におけるbの構成の参照セルを採用する場合には、抵抗変化素子302をLRSにして使用する必要がある。データの読出しの際に参照素子303とLRSのメモリセルの制御素子301とを略同時にオンさせるためである。初期状態(例えば、製造直後)の抵抗変化素子302がHRSの場合には、アクセス制御部200は、初期動作として参照セル314等に対して書込み(セット)を行い、全ての参照セルの抵抗変化素子302をLRSにする必要がある。
 [行信号線および列信号線の印加電圧]
 図9は、本技術の実施の形態における行信号線および列信号線の印加電圧を示す図である。同図は、図4において説明したメモリアレイユニット310における行信号線312および列信号線313に印加される電圧とメモリセル314等に印加される電圧との関係を表したものである。アレイ駆動部311は、入力されたアドレスに基づいて行信号線312および列信号線313を選択して電圧を印加する。同図においては、メモリセル315に対してアクセスする場合を想定する。この場合、「RL0」が付された行信号線312および「CL1」が付された列信号線313がそれぞれ選択行信号線および選択列信号線としてアレイ駆動部311によって選択され、書込み電圧等が印加される。ここで選択行信号線および選択列信号線には、それぞれ選択行電圧Vrおよび選択列電圧Vcが印加される。一方、「RL1」が付された行信号線312および「CL0」が付された列信号線313は、それぞれ非選択行信号線および非選択列信号線に該当する。アレイ駆動部311は、これら非選択行信号線および非選択列信号線に対してそれぞれ非選択行電圧Vurおよび非選択列電圧Vucを印加する。
 ここで、選択行信号線および選択列信号線に接続されるメモリセル(メモリセル315)を選択メモリセルと称し、非選択行信号線および非選択列信号線に接続されるメモリセル(メモリセル316)を非選択メモリセルと称する。また、選択行信号線および非選択列信号線に接続されるメモリセル(メモリセル314)を半選択行メモリセルと称し、選択列信号線および非選択行信号線に接続されるメモリセル(メモリセル317)を半選択列メモリセルと称する。
 [メモリセルの印加電圧]
 図10は、本技術の第1の実施の形態におけるメモリセルの印加電圧を示す図である。同図におけるaは、書込みを行う場合の選択メモリセル、半選択行メモリセルおよび半選択列メモリセルの印加電圧の関係を表したものである。選択列電圧Vcおよび選択行電圧Vrにそれぞれ高レベル書込み電圧(Vpgm_H)および低レベル書込み電圧(Vpgm_L)が印加される。これにより、選択メモリセルには、これらの差分の電圧に相当する書込み電圧(Vpgm)が印加される。一方、非選択行電圧Vurおよび非選択列電圧Vucには、Vpgm_HおよびVpgm_Lの中点に相当する電圧を印加する。この電圧は、(Vpgm_H+Vpgm_L)/2に相当する電圧である。これにより、半選択行メモリセルおよび半選択列メモリセルには、Vpgm/2に相当する電圧が印加される。ここで、半選択行メモリセルおよび半選択列メモリセルの制御素子301は、Vpgm/2に相当する電圧が印加された場合においてオンしないことを想定する。なお、非選択行電圧Vurおよび非選択列電圧Vucに同じ電圧が印加されるため、非選択メモリセルの印加電圧は、0Vになる(不図示)。
 非選択行信号線および非選択列信号線をフローティング状態にして、選択行信号線および選択列信号線に書込み電圧を印加することも可能である。しかし、この場合には、半選択行メモリセルおよび半選択列メモリセルに印加される電圧は、各メモリセルの抵抗変化素子302の記憶状態に応じて変動する。この結果、半選択行メモリセル等に閾値電圧を超える電圧が印加されて制御素子301がオンし、半選択行メモリセル等の抵抗変化素子302の記憶状態に影響を及ぼす可能性が生じる。これに対し、上述のように、アレイ駆動部311が非選択行信号線および非選択列信号線に対してそれぞれ非選択行電圧Vurおよび非選択列電圧Vucを印加することにより、半選択行メモリセル等の制御素子301の導通状態への変化を防止することができる。
 同図におけるbは、読出しを行う場合の選択メモリセル、半選択行メモリセルおよび半選択列メモリセルの印加電圧の関係を表したものである。選択列電圧Vcおよび選択行電圧Vrにそれぞれ高レベル読出し電圧(Vsns_H)および低レベル読出し電圧(Vsns_L)が印加される。これにより、選択メモリセルには、これらの差分の電圧に相当する読出し電圧(Vsns)が印加される。一方、非選択行電圧Vurおよび非選択列電圧Vucには、(Vsns_H+Vsns_L)/2に相当する電圧が印加される。
 [オペレーションコード]
 図11は、本技術の第1の実施の形態におけるオペレーションコードを示す図である。同図は、オペレーションコードおよびイネーブル信号とメモリセルへの印加電圧の関係を表したものである。オペレーションコードは、書込み(セットおよびリセット)および読出しについてのメモリアレイユニット310に対する指示を表すものであり、例えば、2ビットの値により表すことができる。
 オペレーションコードが値「2b01」およびイネーブル信号が値「1」の時には、メモリアレイユニット310は、セットを行う。この場合、図9において説明したように選択列電圧Vcおよび選択行電圧VrとしてVpgm_HおよびVpgm_Lがそれぞれ印加される。また、非選択列電圧Vucおよび非選択行電圧Vurとして(Vpgm_H+Vpgm_L)/2が印加される。これにより、選択メモリセルには、選択行信号線を基準としてVpgmの書込み電圧が印加され、メモリセルの抵抗変化素子302がHRSからLRSに変化する。なお、抵抗変化素子302がLRSのメモリセルは、このLRSが維持される。半選択行メモリセルおよび半選択列メモリセルにはVpgm/2の電圧が印加される。一方、非選択メモリセルの印加電圧は、0Vとなる。
 オペレーションコードが値「2b10」およびイネーブル信号が値「1」の時には、メモリアレイユニット310は、リセットを行う。この場合、選択列電圧Vcおよび選択行電圧VrとしてVpgm_LおよびVpgm_Hがそれぞれ印加される。これにより、選択メモリセルには、選択行信号線を基準として-Vpgmの書込み電圧が印加され、メモリセルの抵抗変化素子302がLRSからHRSに変化する。なお、抵抗変化素子302がHRSのメモリセルは、このHRSが維持される。
 オペレーションコードが値「2b11」およびイネーブル信号が値「1」の時には、メモリアレイユニット310は、読出しを行う。この場合、選択列電圧Vcおよび選択行電圧VrとしてVsns_HおよびVsns_Lがそれぞれ印加される。これにより、選択メモリセルには、選択行信号線を基準としてVsnsの読出し電圧が印加される。この場合、メモリセルの抵抗変化素子302のHRSおよびLRSは変化せず、維持される。
 オペレーションコードが値「2b00」の時またはイネーブル信号が値「0」の時には、メモリアレイユニット310は、いわゆるノーオペレーションの状態になる。この場合、選択列電圧Vc、選択行電圧Vr、非選択列電圧Vucおよび非選択行電圧Vurとして(Vsns_H+Vsns_L)/2が印加される。
 これらのオペレーションコードは、メモリアクセス処理部240により生成されてオペレーションコード保持部230に保持される。オペレーションコードが2ビットの値であり、またメモリアレイユニットおよび参照アレイユニットの個数が9であるため、オペレーションコード保持部230のサイズは、18ビットになる。ここで、書込みを行う際のオペレーションコードは、次の手順により生成することができる。まず、メモリアクセス処理部240は、書込みデータを書込データ保持部210に保持する。次に、メモリアクセス処理部240は、プレリードを行って読み出したデータであるプレリードデータを読出データ保持部220に保持する。次に、メモリアクセス処理部240は、このプレリードデータおよび書込みデータの各ビットの値に基づいて対応するオペレーションコードを生成し、オペレーションコード保持部230に保持する。
 オペレーションコードは、次式に基づいて生成することができる。
  (R[n]、W[n])=(0、1); オペレーションコード=2b01(セット)
  (R[n]、W[n])=(1、0); オペレーションコード=2b10(リセット)
  (R[n]、W[n])=(0、0); オペレーションコード=2b00(ノーオペレーション)
  (R[n]、W[n])=(1、1); オペレーションコード=2b00(ノーオペレーション)
ただし、R[n]は、プレリードデータにおけるn番目のビット値を表す。また、nは、自然数を表す。また、W[n]は、書込みデータにおけるn番目のビット値を表す。
 なお、参照アレイユニット390においても同図のオペレーションコードを使用することができる。ただし、読出しおよびノーオペレーションの際には、同図のVsns_HおよびVsns_Lに替えてVref_HおよびVref_Lが印加される。このVsns_H等とVref_H等との関係については、後述する。
 上述のVpgm_H等の電圧は、図2において説明した印加電圧生成部250により生成される。
 [印加電圧生成部の出力電圧]
 図12は、本技術の第1の実施の形態における印加電圧生成部250の出力電圧を示す図である。同図は、印加電圧生成部250の出力電圧とメモリアクセス処理部240が出力する制御コードとの関係を表したものである。同図のグラフ507は、制御コードとVref_Hとの関係を表すグラフである。グラフ508は、制御コードとVref_Lとの関係を表すグラフである。グラフ511は、制御コードとVsns_Hとの関係を表すグラフである。グラフ512は、制御コードとVsns_Lとの関係を表すグラフである。制御コードは、0を含む自然数により表される。制御コードが値「0」の場合には、Vref_HおよびVsns_Hは最も低い電圧となり、Vref_LおよびVsns_Lは最も高い電圧となる。制御コードに比例してVref_HおよびVsns_Hは上昇し、Vref_LおよびVsns_Lは低下する。すなわち、制御コードの増加に伴って参照セルおよびメモリセルに印加される電圧は上昇する。また、制御コードが等しい場合、Vsns_HはVref_Hに対してマージンに相当する電圧だけ高く、Vsns_LはVref_Lに対してマージンに相当する電圧だけ低くなる。
 制御コードが値「0」の時メモリセルには最小の読出し電圧が印加され、制御コードが最大値の時メモリセルには最大の読出し電圧が印加される。この制御コードに所定の閾値を設定し、メモリセル等に印加される電圧の最大値を変更することができる。同図の一点鎖線513は、この閾値の例を表したものである。
 [読出し処理]
 図13は、本技術の第1の実施の形態における読出し処理の処理手順の一例を示す図である。同図の処理は、読出しリクエストがメモリコントローラインターフェース100を介して入力された際に実行される。まず、メモリアクセス処理部240は、読出しリクエストを解釈して読出し先のアドレスを設定し、メモリアレイ300に対して出力する(ステップS902)。次に、メモリアクセス処理部240は、メモリアレイユニット読出し処理を行う(ステップS910)。これにより、メモリアレイユニット#1(310)乃至#8(380)に対する読出しが行われる。最後に、メモリアクセス処理部240は、読出しデータをメモリコントローラ20に対して出力し(ステップS909)、読出し処理を終了する。
 [メモリアレイユニット読出し処理]
 図14は、本技術の第1の実施の形態におけるメモリアレイユニット読出し処理(ステップS910)の処理手順の一例を示す図である。同図は、図13において説明したメモリアレイユニット読出し(ステップS910)の処理を表したものである。まず、メモリアクセス処理部240は、制御コードVG_codeを0に初期化する(ステップS911)。次に、メモリアクセス処理部240は、参照アレイユニット390のオペレーションコードを設定する(ステップS913)。これは、参照アレイユニット390のオペレーションコードとして値「2b11」をオペレーションコード保持部230に保持させることにより行うことができる。次に、メモリアクセス処理部240は、参照アレイユニット390のイネーブル信号を値「1」にして参照セル394等に読出し電圧を印加する(ステップS914)。これにより、参照セル394等には、Vref_HおよびVref_Lが印加される。次にメモリアクセス処理部240は、参照セル394等の読出しデータが値「1」であるか否かについて判断する(ステップS915)。
 参照セル394等の読出しデータが値「1」でない場合(ステップS915:No)、メモリアクセス処理部240は、制御コードVG_codeをインクリメントして参照セル394等の印加電圧を変更する(ステップS917)。この結果、制御コードVG_codeが図12において説明した閾値に達した場合には(ステップS918:Yes)、メモリアクセス処理部240は、元の読出し処理に戻ることなくメモリアレイユニット読出し処理を異常終了する。この場合、メモリアクセス処理部240は、参照セル394等に異常が発生したものと判断し、読出しに失敗した旨をメモリコントローラ20に対して出力することができる。一方、制御コードVG_codeが閾値に達していない場合には(ステップS918:No)、メモリアクセス処理部240は、ステップS915の処理を再度実行する。
 ステップS915において参照セル394等の読出しデータが値「1」の場合には(ステップS915:Yes)、メモリアクセス処理部240は、参照セル394等の読出し電圧の印加を停止する(ステップS916)。これは、参照アレイユニット390のイネーブル信号を値「0」にすることにより行うことができる。これらの処理により参照閾値電圧が計測され、計測の結果として制御コードVG_codeがメモリアクセス処理部240に保持される。次に、メモリアクセス処理部240は、メモリセル読出し処理(ステップS920)によりデータの読出しを行い、メモリアレイユニット読出し処理を終了する。
 [メモリセル読出し処理]
 図15は、本技術の第1の実施の形態におけるメモリセル読出し処理(ステップS920)の処理手順の一例を示す図である。この処理は、図14において説明したメモリセル読出し(ステップS920)の処理を表したものである。まず、メモリアクセス処理部240は、メモリアレイユニット#1(310)等のオペレーションコードを設定する(ステップS923)。これは、メモリアレイユニット#1(310)乃至#8(380)のオペレーションコードとして値「2b11」をオペレーションコード保持部230に保持させることにより行うことができる。
 次に、メモリアクセス処理部240は、メモリアレイユニット#1(310)等のイネーブル信号を値「1」にしてメモリセルに読出し電圧を印加する(ステップS924)。これにより、メモリセルには、Vsns_HおよびVsns_Lが印加される。次に、メモリアクセス処理部240は、メモリアレイユニット#1(310)等から出力された読出しデータを読出データ保持部220に保持する(ステップS925)。最後に、メモリアクセス処理部240は、メモリアレイユニット#1(310)等のイネーブル信号を値「0」にして、メモリセルの読出し電圧の印加を停止し(ステップS926)、メモリセル読出し処理を終了する。この処理により、参照閾値電圧をメモリセルの制御素子301の閾値電圧として推定した読出し電圧がメモリセル314等に印加され、データの読出しが行われる。
 [書込み処理]
 図16は、本技術の第1の実施の形態における書込み処理の処理手順の一例を示す図である。同図の処理は、書込みリクエストがメモリコントローラインターフェース100を介して入力された際に実行される。まず、メモリアクセス処理部240は、書込みリクエストを解釈して書込みデータを書込データ保持部210に保持する(ステップS931)。次に、メモリアクセス処理部240は、書込み先のアドレスを設定し、メモリアレイ300に対して出力する(ステップS932)。次に、メモリアクセス処理部240は、メモリアレイユニット読出し処理を行う(ステップS910)。この処理はプレリードに該当し、メモリアクセス処理部240は図14において説明したステップS910の処理を実行する。次に、メモリアクセス処理部240は、メモリアレイユニット書込み処理を行う(ステップS940)。これにより、メモリアレイユニット#1(310)乃至#8(380)に対する書込みが行われる。その後、メモリアクセス処理部240は、書込み処理を終了する。
 [メモリアレイユニット書込み処理]
 図17は、本技術の第1の実施の形態におけるメモリアレイユニット書込み処理(ステップS940)の処理手順の一例を示す図である。この処理は、図16において説明したメモリアレイユニット書込み(ステップS940)の処理を表したものである。まず、メモリアクセス処理部240は、変数loopおよび制御コードVG_codeを値「0」にして初期化する(ステップS941)。次に、メモリアクセス処理部240は、メモリアレイユニット#1(310)乃至#8(380)のオペレーションコードを設定する(ステップS943)。これは、プレリードデータおよび書込みデータに基づいてメモリアレイユニット#1(310)等のオペレーションコードを設定し、オペレーションコード保持部230に保持させることにより行うことができる。次に、メモリアクセス処理部240は、この保持されたオペレーションコードからセットを指示するオペレーションコードおよびリセットを指示するオペレーションコードの合計(NSetReset)を算出する(ステップS948)。
 このNSetResetが所定の閾値以下の場合(ステップS949:Yes)、メモリアクセス処理部240は、書込みが成功したものと判断し、メモリアレイユニット書込み処理を終了する。NSetResetが0でない場合、すなわち書込みデータと読出しデータとが完全に一致しない場合であっても、メモリコントローラ20の誤り検出訂正部23により誤りの訂正が可能なためである。
 一方、NSetResetが所定の閾値以下でない場合(ステップS949:No)、メモリアクセス処理部240は、変数loopが所定の閾値以下であるか否かについて判断する(ステップS951)。変数loopが所定の閾値に達した場合には(ステップS951:No)、メモリアクセス処理部240は、元の書込み処理に戻ることなくメモリアレイユニット書込み処理を異常終了する。この場合、メモリアクセス処理部240は、書込みに失敗した旨をメモリコントローラ20に対して出力することができる。
 一方、変数loopが所定の閾値以下の場合には(ステップS951:Yes)、メモリアクセス処理部240は、メモリアレイユニット#1(310)等のイネーブル信号を値「1」にして、メモリセルに書込み電圧を印加する(ステップS944)。所定の書込み時間の経過後、メモリアクセス処理部240は、メモリアレイユニット#1(310)等のイネーブル信号を値「0」にして、メモリセルの書込み電圧の印加を停止する(ステップS946)。次に、メモリアクセス処理部240は、メモリセル読出し処理を行う(ステップS920)。この処理は、書込みが正しく行われたか否かを判断する検証を行うためのデータの読出しを行う処理であり、読み出されたデータを新たなプレリードデータにする処理である。メモリアクセス処理部240は、図15において説明したステップS920の処理を実行する。次に、メモリアクセス処理部240は、変数loopをインクリメントして更新し(ステップS947)、ステップS948の処理に移行する。
 ステップS944においてリセットを行った場合にHRSのメモリセルの制御素子301はオンし、この直後のメモリセル読出し(ステップS920:検証)において参照セルの参照素子303がオンする。さらに、メモリアレイユニット書込み処理(ステップS940)の呼び出し元である書込み処理(図16)においても、メモリアレイユニット読出し(ステップS910:プレリード)において、参照素子303は、オンする。このように、HRSのメモリセルの制御素子301のオンと略同時に参照素子303がオンするため、HRSのメモリセルの制御素子301の経過時間は、参照素子303の経過時間より短くなることはない。
 これに対し、書込み処理において上述の検証およびプレリードの何れも行わずに、HRSのメモリセルに対してリセットを行う方式を採用すると、HRSのメモリセルの制御素子301の経過時間が参照素子303の経過時間より短くなる場合が生じる。このような場合に参照素子303によるメモリセルの制御素子301の閾値電圧の推定が行われて、読出しが行われると、経過時間の短いHRSのメモリセルに対して比較的高い読出し電圧が印加されて制御素子301が導通状態になり得る。本技術の第1の実施の形態では、このような、HRSのメモリセルの制御素子301のオンを防止することができる。
 [メモリセルの印加電圧と電流との関係]
 図18は、本技術の第1の実施の形態におけるメモリセルの印加電圧と電流との関係を示す図である。同図は、LRSのメモリセルおよびHRSのメモリセルについて、経過時間毎の印加電圧と電流との関係を表したものである。同図のうち上側はLRSの場合を表し、下側はHRSの場合を表している。また、同図の点線は、それぞれの閾値電圧を判断する電流値(Ith)を表している。同図のグラフ532および542は経過時間1μsの場合の特性を表し、グラフ533および543は経過時間1msの場合の特性を表し、グラフ534および544は経過時間1sの場合の特性を表している。また、同図のグラフ535および545は、経過時間10年の場合の特性を表している。
 同図の特性曲線は、Ithを境として、制御素子301が非導通状態にある領域と導通状態にある領域に分離される。さらに、導通状態においては、抵抗変化素子302がLRSおよびHRSの何れかにより異なる特性になる。また、経過時間によって制御素子301の閾値が変化する。そこで、本技術の第1の実施の形態では、参照素子303を配置し、この参照素子303の経過時間をLRSのメモリセルの経過時間と略等しくするとともに、HRSのメモリセルの経過時間以下にする。そして、参照素子303の参照閾値電圧によりメモリセルの閾値電圧を推定して電圧をメモリセルに印加することにより、読出しを行う。同図の1点鎖線536はLRSのメモリセルにおける経過時間が1μsの場合の閾値電圧を表し、2点鎖線546はHRSのメモリセルにおける経過時間が1μsの場合の閾値電圧を表している。このように経過時間が等しい場合において、LRSのメモリセルとHRSのメモリセルとは閾値電圧が異なる。このため、例えば、1点鎖線536および2点鎖線546により表される閾値電圧の中間の電圧を読出し電圧として印加することにより読出しを行うことができる。この場合、LRSのメモリセルの制御素子301は導通状態になり、HRSのメモリセルの制御素子301は非導通状態を保つこととなる。
 これにより、制御素子の閾値電圧が変化した場合においても、メモリセルの制御素子301を十分に導通させることができる。書き込まれたデータと同じデータの読出しが可能となり、記憶データの信頼性を向上させることができる。また、読出しの際、閾値電圧の変化を加味した高い電圧を印加する必要がないため、比較的低い消費電力にすることができる。さらに、本技術の第1の実施の形態においては、読出しの際、HRSのメモリセルの制御素子301が導通状態になることを防止することができる。これにより、HRSのメモリセルの抵抗変化素子302に印加される電圧を低減することができ、リードディスターブの発生を防止して記憶データの信頼性を向上させることができる。
 このように、本技術の第1の実施の形態では、メモリセルにおける制御素子301の閾値が変化した場合において、参照素子303の参照閾値電圧により制御素子301の閾値電圧を推定してメモリセルに電圧を印加し、読出しを行う。これにより、制御素子301の閾値が変化した場合においても、書き込まれたデータと同じデータの読出しを行うことができ、記憶データの信頼性を向上させることができる。
 [第1の変形例]
 上述の第1の実施の形態では、参照セル394等がメモリセルと同様にアレイ状に配置され、選択行信号線および選択列信号線により1つの参照セルが選択されていた。これに対し、複数の参照セル394等の1つが、セレクタ等によりアドレスに基づいて選択される方式を採用してもよい。アドレスに基づくメモリセルとこれに対応する参照セルとが選択されることにより、参照閾値電圧によるメモリセルの閾値電圧の推定が可能なためである。
 [第2の変形例]
 上述の第1の実施の形態では、読出しの際に参照閾値電圧の計測に関する処理とメモリセルからの読出しに関する処理とを順次実行していた。すなわち、図14において説明したメモリアレイユニット読出し処理(ステップS910)において、ステップS912乃至S918の処理とステップS920の処理とを順次実行していた。これに対し、読出し処理が連続する場合に、これらの処理を同時並列に行う、すなわちパイプライン処理の形式にして実行することもできる。これにより、複数のアドレスにわたる読出しに要する時間を短縮することができる。
 [第3の変形例]
 上述の第1の実施の形態では、書込みの際にプレリードデータおよび書込みデータに基づいてメモリセルのオペレーションコードを設定していたが、書込みデータのみに基づいてオペレーションコードを設定し、書込みを行ってもよい。具体的には、書込みデータが値「0」のビットにはオペレーショコードとして値「2b10」(リセット)を設定し、書込みデータが値「1」のビットにはオペレーショコードとして値「2b01」(セット)を設定して書込みを行う。プレリードを省略することができ、書込み処理を簡略化することができる。この場合、書込み処理の後にページにおいてHRSのメモリセルが存在する場合には、当該ページのLRSのメモリセルにおける制御素子301および対応する参照セルの参照素子303をオンさせる必要がある。これらメモリセルの制御素子301および参照素子303における経過時間を略等しいかまたは短い状態にして参照閾値電圧によりメモリセルの閾値電圧を推定するためである。
 [第4の変形例]
 上述の第1の実施の形態では、読出しデータにおける誤り検出および誤り訂正を行っていたが、誤り検出および誤り訂正の結果に基づいてメモリセル等の制御素子301をオン状態にしてもよい。ReRAMにおいては、読出しの際に流れる電流がノイズ(RTN:Random Telegraph Noise)の影響により、大きく変動する現象が知られている。このRTNにより、制御素子301が誤動作し、抵抗変化素子302に記憶されたデータとは異なるデータが読出しデータとしてメモリコントローラ20に対して出力される場合がある。このRTNによる制御素子301の誤動作は、誤り検出訂正部23により誤りが訂正されたか否かにより判断することができる。
 例えば、値「0」から値「1」に訂正されたビットが存在する場合、このビットに対応するメモリセルにおいて、RTNの影響により制御素子301がオン状態にならなかったものと判断することができる。すなわち、アレイ駆動部311によりLRSのメモリセルであるにも関わらずHRSと判断されて値「0」が読み出されたものと判断することができる。この場合には、再度当該ページの読出しを行うことにより、LRSのメモリセルにおける制御素子301および参照素子303の経過時間を略等しくすることができる。また、例えば、値「1」から値「0」に訂正されたビットが存在する場合、このビットに対応するメモリセルにおいて、RTNの影響によりHRSのメモリセルの制御素子301が導通状態に変化したものと判断することができる。この場合には、参照素子303をオンすることにより、HRSのメモリセルにおける制御素子301および参照素子303の経過時間を略等しくすることができる。
 このように、RTN等の影響により制御素子301が誤動作した場合においても、誤り検出および誤り訂正の結果に基づいて制御素子301および参照素子303をオン状態にすることにより、記憶データの信頼性を向上させることができる。
 <2.第2の実施の形態>
 上述の第1の実施の形態では、読出しの際、常に参照閾値電圧を計測し、メモリセルの制御素子301の閾値電圧の推定を行っていた。これに対し、本技術の第2の実施の形態では、読出しデータにおける誤り検出および誤り訂正の結果に基づいて、参照閾値電圧の計測等を行う。これにより、読出しに要する時間を短縮する。
 [読出し処理]
 本技術の第2の実施の形態における読出し処理は、以下の手順により行われる。まず、メモリコントローラ20が要求した読出しリクエストに基づいて、メモリアクセス処理部240が読出しを行う。この際、メモリアクセス処理部240は、参照閾値電圧の計測を省略してメモリセルに対して読出しを行う。アクセス制御部200は、制御コードとして値「0」を印加電圧生成部250に対して出力し、最小の読出し電圧を生成させてメモリセルに印加する。その後、読出しデータがメモリコントローラ20に対して出力されると、読出しデータに対する誤り検出および誤りの訂正が誤り検出訂正部23により行われる。検出された誤りが所定のビット数を超えた場合または誤りの訂正ができなかった場合、メモリコントローラ20は、2回目の読出しリクエストを要求する。この2回目の読出しリクエストに基づいてアクセス制御部200は、参照閾値電圧の計測を行い、この参照閾値電圧によりメモリセルの制御素子301の閾値電圧の推定を行う。
 このような処理を行うため、読出しリクエストが2回目のリクエストであるか否かについてメモリアクセス処理部240が把握する必要がある。これは、例えば、メモリコントローラ20が2回目の読出しリクエストであることについてメモリアクセス処理部240に対して通知することにより行うことができる。これにより、読出しデータから多くの誤りが検出された場合等、必要に応じて参照閾値電圧の計測を行ってメモリセルの制御素子301の閾値電圧を推定することができ、読出しに要する時間を短縮することができる。これ以外のメモリコントローラ20およびメモリ30の構成は本技術の第1の実施の形態のメモリコントローラ20およびメモリ30と同様であるため、説明を省略する。
 [メモリアレイユニット読出し処理]
 図19は、本技術の第2の実施の形態におけるメモリアレイユニット読出し処理(ステップS910)の処理手順の一例を示す図である。同図の処理は、図14において説明した処理と比較して、ステップS911およびS913の間にステップS912を追加した点が異なっている。ステップS912において、メモリアクセス処理部240は、読出しリクエストが2回目の読出しリクエストであるか否かについて判断する(ステップS912)。その結果、2回目の読出しリクエストである場合には(ステップS912:Yes)、メモリアクセス処理部240は、ステップS913の処理に移行する。一方、2回目の読出しリクエストではない場合には(ステップS912:No)、メモリアクセス処理部240は、ステップS913乃至S918の処理をスキップしてステップS920の処理に移行する。
 これ以外の読出しおよび書込みの処理は本技術の第1の実施の形態における読出しおよび書込みの処理と同様であるため、説明を省略する。
 このように、本技術の第2の実施の形態によれば、必要に応じて参照閾値電圧の計測およびメモリセルにおける制御素子301の閾値電圧の推定を行うため、読出しに要する時間を短縮することができる。
 <3.第3の実施の形態>
 上述の第1の実施の形態では、ページ毎に1つの参照素子303を配置していた。これに対し、本技術の第3の実施の形態では、ページ毎に2つの参照素子303を配置して、メモリセルの制御素子301の閾値電圧を推定する。これにより、参照素子303の特性がばらついた場合においても、記憶データの信頼性を向上させる。
 [メモリアレイの構成]
 図20は、本技術の第3の実施の形態におけるメモリアレイ300の構成例を示す図である。このメモリアレイ300は、メモリアレイユニット#1(310)乃至#8(380)と、参照アレイユニット#1(390)および#2(490)とを備える。同図のメモリアレイ300は、参照アレイユニットを2つ備える点で、図3において説明したメモリアレイ300と異なっている。
 本技術の第3の実施の形態におけるメモリアクセス処理部240は、参照アレイユニット#1(390)および#2(490)のそれぞれに対して参照閾値電圧の計測を行い、取得した2つの参照閾値電圧によりメモリセルの制御素子301の閾値電圧を推定する。具体的には、メモリアクセス処理部240は、参照アレイユニット#1(390)および#2(490)を個別に制御して2つの制御コードVG_codeを取得する。その後、これらの制御コードVG_codeの平均値に基づいてメモリセルの印加電圧を設定する。これ以外のメモリ30の構成は本技術の第1の実施の形態におけるメモリ30の構成と同様であるため、説明を省略する。
 このように、本技術の第3の実施の形態では、2つの参照素子303から取得した2つの参照閾値電圧の平均値によりメモリセルの制御素子301の閾値電圧を推定して読出しを行う。これにより、参照素子の特性がばらついた場合においても、記憶データの信頼性を向上させることができる。
 [変形例]
 上述の第3の実施の形態では、ページ毎に2つの参照素子303を配置していたが、3つ以上の参照素子303を配置してもよい。多くの参照閾値電圧の平均値を用いることにより、より正確な閾値電圧の推定が可能になるためである。なお、その際、参照閾値電圧の平均値に替えて参照閾値電圧の最頻値を使用して閾値電圧の推定を行うことも可能である。
 <4.第4の実施の形態>
 上述の第1の実施の形態では、参照閾値電圧により選択メモリセルの制御素子301の閾値電圧を推定していた。これに対し、本技術の第5の実施の形態では、書込み時における半選択行メモリセルおよび半選択列メモリセルの制御素子301の閾値電圧を推定し、半選択行メモリセルおよび半選択列メモリセルに電圧を印加する。これにより、書込みの際の半選択行メモリセル等の制御素子301の導通状態への変化を防止し、記憶データの信頼性を向上させる。
 [アクセス制御部の構成]
 図21は、本技術の第4の実施の形態におけるアクセス制御部200の構成例を示す図である。このアクセス制御部200は、非選択行印加電圧生成部260および非選択列印加電圧生成部270をさらに備える点で、図2において説明したアクセス制御部200と異なる。
 非選択行印加電圧生成部260は、メモリアレイ300の非選択行信号線に印加する電圧を生成するものである。この非選択行印加電圧生成部260は、メモリアクセス処理部240により出力された制御コードに基づいて非選択行信号線に印加する電圧の生成を行う。
 非選択列印加電圧生成部270は、メモリアレイ300の非選択列信号線に印加する電圧を生成するものである。この非選択列印加電圧生成部270は、メモリアクセス処理部240により出力された制御コードに基づいて非選択列信号線に印加する電圧の生成を行う。
 メモリアクセス処理部240は、書込みの際に非選択行印加電圧生成部260および非選択列印加電圧生成部270をそれぞれ制御して制御コードを取得し、保持する。また、本技術の第3の実施の形態におけるアクセス制御部200は、読出しの際の参照閾値電圧の計測を省略し、固定値のVsns_HおよびVsns_Lを出力する。このため、印加電圧生成部250は、図12において説明した出力電圧を調整する機能を省略することができる。メモリアクセス処理部240の処理の詳細については、後述する。
 本技術の第4の実施の形態では、参照閾値電圧により半選択行メモリセルおよび半選択列メモリセルの制御素子301の閾値電圧を推定する。そして、書込みの際に、この閾値電圧より低い電圧を半選択行メモリセルおよび半選択列メモリセルに印加する。これにより、書込みの際の半選択行メモリセルおよび半選択列メモリセルにおける制御素子301の導通状態への変化を防止することができる。メモリアクセス処理部240は、書込みの際に、半選択行メモリセルおよび半選択列メモリセルのそれぞれについて対応する参照セルの参照閾値電圧を計測する。次に、メモリアクセス処理部240は、計測した参照閾値電圧に基づいて、図9において説明した非選択行電圧Vurおよび非選択列電圧Vucを設定し、メモリセル314等に印加する。
 [メモリセルの印加電圧]
 図22は、本技術の第4の実施の形態におけるメモリセルの印加電圧を示す図である。同図は、セットの際の選択メモリセル、半選択行メモリセルおよび半選択列メモリセルの印加電圧の関係を表したものである。非選択行電圧Vurおよび非選択列電圧Vucには、それぞれ高レベル非選択電圧(VpgmU_H)および低レベル非選択電圧(VpgmU_L)が印加される。このため、半選択列メモリセルには、Vpgm_HおよびVpgmU_Hの差分に相当する電圧であるVpgmUが印加される。また、半選択行メモリセルには、VpgmU_LおよびVpgm_Lの差分に相当する電圧であるVpgmU'が印加される。さらに、非選択メモリセルには、VpgmU_HおよびVpgmU_Lの差分に相当する電圧であるΔVが印加される。
 VpgmUおよびVpgmU'は、それぞれ参照閾値電圧に基づいて設定された電圧である。これらの電圧を印加することにより、半選択行メモリセル等の制御素子301の導通状態への変化を防止することができる。参照閾値電圧の計測を省略して、経過時間が短い場合に相当する低い電圧をVpgmUおよびVpgmU'として印加した場合にも、半選択行メモリセル等の制御素子301の導通状態への変化を防止することが可能である。しかし、その場合には、非選択メモリセルに印加される電圧ΔVが大きな値になり、消費電力が増加する。通常、メモリアレイユニット310等は多くの非選択メモリセルを有するため、メモリ30の低消費電力化のためには、ΔVを低減させる必要がある。そこで、上述したように、参照閾値電圧により半選択行メモリセル等の閾値を推定して、印加する電圧を必要最小限の値にすることにより、消費電力の増加を防ぐことができる。
 参照閾値電圧による半選択行メモリセル等の閾値の推定は、セットの場合に行うことができる。HRSの半選択行メモリセル等における制御素子301の導通状態への変化を防止するためである。リセットの場合には、本技術の第1の実施の形態と同様に、VurおよびVucに(Vsns_H+Vsns_L)/2の電圧を印加する。
 [オペレーションコード]
 図23は、本技術の第4の実施の形態におけるオペレーションコードを示す図である。同図のオペレーションコードは、セットの際のVucおよびVurとしてVpgmU_LおよびVpgmU_Hを印加する点で、図11において説明したオペレーションコードと異なる。
 [非選択行印加電圧生成部および非選択列印加電圧生成部の出力電圧]
 図24は、本技術の第4の実施の形態における非選択行印加電圧生成部260および非選択列印加電圧生成部270の出力電圧を示す図である。同図におけるaは、非選択行印加電圧生成部260の出力電圧と制御コードとの関係を表したものである。同図におけるbは、非選択列印加電圧生成部270の出力電圧と制御コードとの関係を表したものである。
 同図におけるaのグラフ552は、制御コードとVref_Hとの関係を表すグラフである。また、グラフ551は、制御コードとVpgmU_Hとの関係を表すグラフである。制御コードが値「0」の場合に、Vref_HおよびVpgmU_Hは最も高い電圧となり、制御コードに比例してVref_HおよびVpgmU_Hは低下する。すなわち、制御コードの増加に伴って半選択列メモリセルに印加される電圧は上昇する。また、制御コードが等しい場合、VpgmU_Hは、Vref_Hに対してマージンに相当する電圧だけ高くなる。Vcal_Hは、VucおよびVrとして印加される電圧である。半選択列メモリセルに対応する参照素子303の参照閾値電圧を計測する際には、選択列信号線にVpgm_Hが印加されるとともに非選択列信号線および選択行信号線に所定のVcal_Hが印加される。次に、非選択行信号線に印加する電圧であるVref_Hを低下させて、参照素子303をオンさせる。選択列信号線に流れる電流が所定の閾値を超えた際に、参照素子303がオンしたものと判断することができる。この参照素子303がオンした時の制御コードVGur_code_sがメモリアクセス処理部240に保持される。同図におけるaの1点鎖線553は、制御コードVGur_code_sに対して設定された閾値の例を表したものである。
 同図におけるbのグラフ554は、制御コードとVref_Lとの関係を表すグラフである。また、グラフ555は、制御コードとVpgmU_Lとの関係を表すグラフである。制御コードが値「0」の場合に、Vref_LおよびVpgmU_Lは最も低い電圧となり、制御コードに比例してVref_LおよびVpgmU_Lは上昇する。上述の半選択列メモリセルと同様に、制御コードの増加に伴って半選択行メモリセルに印加される電圧は上昇する。また、制御コードが等しい場合、VpgmU_LはVref_Lに対してマージンに相当する電圧だけ低くなる。Vcal_Lは、VurおよびVcとして印加される電圧である。半選択行メモリセルに対応する参照素子303の参照閾値電圧を計測する際には、選択行信号線にVpgm_Lが印加されるとともに非選択行信号線および選択列信号線にVcal_Lが印加される。次に、非選択列信号線に印加する電圧であるVref_Lを上昇させて、参照素子303をオンさせる。選択行信号線に流れる電流が所定の閾値を超えた場合に、参照素子303がオンしたものと判断することができる。この制御コードVGuc_code_sがメモリアクセス処理部240に保持される。同図におけるbの1点鎖線556は、制御コードVGuc_code_sに対して設定された閾値の例を表したものである。
 [メモリアレイユニット読出し処理]
 図25は、本技術の第4の実施の形態におけるメモリアレイユニット読出し処理(ステップS960)の処理手順の一例を示す図である。本技術の第4の実施の形態におけるアクセス制御部200は、図13において説明した読出し処理のうち、ステップS910に替えて同図の処理(ステップS960)を実行する。
 まず、メモリアクセス処理部240は、メモリアレイユニット#1(310)等および参照アレイユニット390のオペレーションコードを設定する(ステップS961)。これは、オペレーションコードとして値「2b11」をオペレーションコード保持部230に保持させることにより行うことができる。次にメモリアクセス処理部240は、イネーブル信号を値「1」にしてメモリセル314等および参照セル394等に読出し電圧を印加する(ステップS964)。次に、メモリアクセス処理部240は、メモリセル314等からの読出しデータを読出データ保持部220に保持する(ステップS965)。次に、メモリアクセス処理部240は、イネーブル信号を値「0」にしてメモリセル314等および参照セル394等の読出し電圧の印加を停止する(ステップS966)。このように、本技術の第4の実施の形態では、メモリアレイユニット読出し処理における参照閾値電圧の計測を省略することができる。
 [書込み処理]
 図26は、本技術の第4の実施の形態における書込み処理の処理手順の一例を示す図である。まず、メモリアクセス処理部240は、書込みデータを書込データ保持部210に保持する(ステップS971)。次に、メモリアクセス処理部240は、書込みアドレスを設定する(ステップS972)。次に、メモリアクセス処理部240は、非選択ラインセット電圧設定処理を行う(ステップS980)。次に、メモリアクセス処理部240は、図25において説明したメモリアレイユニット読出し処理を行う(ステップS960)。最後に、メモリアクセス処理部240は、メモリアレイユニット書込み処理を行い(ステップS810)、書込み処理を終了する。
 [非選択ラインセット電圧設定処理]
 図27は、本技術の第4の実施の形態における非選択ラインセット電圧設定処理(ステップS980)の処理手順の一例を示す図である。同図は、図26において説明した非選択ラインセット電圧設定処理(ステップS980)を表したものである。まず、メモリアクセス処理部240は、制御コードVGur_code_sおよびVGuc_code_sを値「0」にして初期化する(ステップS981)。次に、メモリアクセス処理部240は、参照アレイユニット(390)にオペレーションコードとして値「2b01」を設定する(ステップS983)。次にメモリアクセス処理部240は、セット時のコード設定処理を行い(ステップS990)、制御コードVGur_code_sおよびVGuc_code_sを保持する。
 次に、メモリアクセス処理部240は、これらの制御コードに基づいて、非選択列電圧Vucが非選択行電圧Vurより高いか否かを判断する(ステップS984)。非選択列電圧Vucが非選択行電圧Vurより高い場合には(ステップS984:Yes)、制御コードVGur_code_sおよびVGuc_code_sを調整して非選択列電圧Vucおよび非選択行電圧Vurを等しい値にする(ステップS987)。非選択列電圧Vucが非選択行電圧Vurより高くない場合には(ステップS984:No)、メモリアクセス処理部240は、ステップS987の処理をスキップして、非選択ラインセット電圧設定処理を終了する。
 [セット時のコード設定処理]
 図28は、本技術の第4の実施の形態におけるセット時のコード設定処理(ステップS990)の処理手順の一例を示す図である。同図は、図27において説明したセット時のコード設定(ステップS990)の処理を表したものである。まず、メモリアクセス処理部240は、選択および非選択電圧の設定を行う(ステップS991)。具体的には、メモリアクセス処理部240は、印加電圧生成部250に対して選択列電圧Vc(Vpgm_H)および選択行電圧Vr(Vcal_H)をそれぞれ生成させる。同時に、メモリアクセス処理部240は、非選択列印加電圧生成部270に対して非選択列電圧Vuc(Vcal_H)を生成させ、非選択行印加電圧生成部260に対して非選択行電圧Vur(Vref_H)を生成させる。次に、メモリアクセス処理部240は、参照アレイユニット390のイネーブル信号を値「1」にして、参照セル394等に電圧を印加する(ステップS992)。
 次に、メモリアクセス処理部240は、選択列信号線に該当する列信号線313を流れる電流が閾値以上か否かを判断する(ステップS993)。電流が閾値以上の場合には(ステップS993:Yes)、メモリアクセス処理部240は、参照素子303がオンしたものと判断し、この時の制御コードVGur_code_sを保持する。その後、メモリアクセス処理部240は、ステップS996の処理に移行する。
 一方、電流が閾値未満の場合には(ステップS993:No)、メモリアクセス処理部240は、VGur_code_sをインクリメントして印加電圧を変更する(ステップS994)。この結果、VGur_code_sが閾値に達した場合には(ステップS995:Yes)、メモリアクセス処理部240は、ステップS996の処理に移行する。一方、VGur_code_sが閾値に達していない場合には(ステップS995:No)、メモリアクセス処理部240は、ステップS993からの処理を再度実行する。
 ステップS996において、メモリアクセス処理部240は、選択および非選択電圧の設定を行う(ステップS996)。具体的には、メモリアクセス処理部240は、印加電圧生成部250に対して選択列電圧Vc(Vcal_L)および選択行電圧Vr(Vpgm_L)をそれぞれ生成させる。同時に、メモリアクセス処理部240は、非選択列印加電圧生成部270に対して非選択列電圧Vuc(Vref_L)を生成させ、非選択行印加電圧生成部260に対して非選択行電圧Vur(Vcal_L)を生成させる。次に、メモリアクセス処理部240は、選択行信号線に該当する行信号線312を流れる電流が閾値以上か否かを判断する(ステップS997)。電流が閾値以上の場合には(ステップS997:Yes)、メモリアクセス処理部240は、参照素子303がオンしたものと判断し、この時の制御コードVGuc_code_sを保持する。その後、メモリアクセス処理部240は、ステップS801の処理に移行する。
 一方、電流が閾値未満の場合には(ステップS997:No)、メモリアクセス処理部240は、VGuc_code_sをインクリメントして印加電圧を変更する(ステップS998)。この結果、VGuc_code_sが閾値に達した場合には(ステップS999:Yes)、メモリアクセス処理部240は、ステップS801の処理に移行する。一方、VGuc_code_sが閾値に達していない場合には(ステップS999:No)、メモリアクセス処理部240は、ステップS997からの処理を再度実行する。ステップS801において、メモリアクセス処理部240は、参照アレイユニット390のイネーブル信号を値「0」にして、参照セル394等の電圧の印加を停止し(ステップS801)、セット時のコード設定の処理を終了する。
 [メモリアレイユニット書込み処理]
 図29は、本技術の第4の実施の形態におけるメモリアレイユニット書込み処理(ステップS810)の処理手順の一例を示す図である。この処理は、図26において説明したメモリアレイユニット書込み(ステップS810)の処理を表したものである。まず、メモリアクセス処理部240は、変数loopを値「0」にして初期化する(ステップS811)。次に、メモリアクセス処理部240は、メモリアレイユニット#1(310)乃至#8(380)のオペレーションコードを設定する(ステップS813)。これは、プレリードデータおよび書込みデータに基づいてメモリアレイユニット#1(310)等のオペレーションコードを設定し、オペレーションコード保持部230に保持させることにより行う。次に、メモリアクセス処理部240は、NSetResetを算出する(ステップS818)。
 このNSetResetが所定の閾値以下の場合(ステップS819:Yes)、メモリアクセス処理部240は、書込みが成功したものと判断し、メモリアレイユニット書込み処理を終了する。
 一方、NSetResetが所定の閾値以下でない場合(ステップS819:No)、メモリアクセス処理部240は、変数loopが所定の閾値以下であるか否かについて判断する(ステップS821)。変数loopが所定の閾値に達した場合には(ステップS821:No)、メモリアクセス処理部240は、元の書込み処理に戻ることなくメモリアレイユニット書込み処理を異常終了する。
 一方、変数loopが所定の閾値以下の場合には(ステップS821:Yes)、メモリアクセス処理部240は、メモリアレイユニット#1(310)等のイネーブル信号を値「1」にして、メモリセル314等に書込み電圧を印加する(ステップS814)。所定の書込み時間の経過後、メモリアクセス処理部240は、メモリアレイユニット#1(310)等のイネーブル信号を値「0」にして、メモリセル314等の書込み電圧の印加を停止する(ステップS816)。次に、メモリアクセス処理部240は、メモリセル読出し処理(ステップS960)を行い、読み出したデータを新たなプレリードデータとして読出データ保持部220に保持させる。次に、メモリアクセス処理部240は、変数loopをインクリメントして更新し(ステップS817)、ステップS818の処理に移行する。
 これ以外のアクセス制御部200の構成は図2において説明したアクセス制御部200の構成と同様であるため、説明を省略する。なお、本技術の第4の実施の形態においても、本技術の第1の実施の形態と同様に、読出しの際、参照閾値電圧によるメモリセルの制御素子301の閾値電圧の推定を行うことができる。この場合には、図25において説明したメモリアレイユニット読出し処理に替えて図14において説明したメモリアレイユニット読出し処理を実行する。
 このように、本技術の第4の実施の形態では、参照閾値電圧によりセットの際の半選択行メモリセルおよび半選択列メモリセルの制御素子301の閾値電圧を推定し、半選択行メモリセルおよび半選択列メモリセルに対して電圧を印加する。これにより、半選択行メモリセルおよび半選択列メモリセルにおける制御素子301の導通状態への変化を防止する。半選択行メモリセル等の抵抗変化素子302に印加される電圧が低減されて抵抗変化素子の記憶状態に及ぼす影響が軽減され、記憶データの信頼性を向上させることができる。
 <5.第5の実施の形態>
 上述の第4の実施の形態では、セットの際に参照閾値電圧による半選択行メモリセルおよび半選択列メモリセルの制御素子301の閾値電圧の推定を行っていた。これに対し、本技術の第5の実施の形態では、セットおよびリセットの際に参照閾値電圧による半選択行メモリセルおよび半選択列メモリセルの制御素子301の閾値電圧の推定を行う。これにより、セットおよびリセットにおいて半選択行メモリセルおよび半選択列メモリセルの制御素子301の導通状態への変化を防止する。半選択行メモリセル等の抵抗変化素子302に印加される電圧を低減し、記憶データの信頼性を向上させる。
 [オペレーションコード]
 図30は、本技術の第5の実施の形態におけるオペレーションコードを示す図である。同図のオペレーションコードは、リセット動作のVucおよびVurとしてVpgmU_HおよびVpgmU_Lを印加する点で、図23において説明したオペレーションコードと異なる。このように、本技術の第5の実施の形態では、セットおよびリセットの両方において半選択行メモリセル等にVpgmU_HおよびVpgmU_Lを印加する。
 [非選択行印加電圧生成部および非選択列印加電圧生成部の出力電圧]
 図31は、本技術の第5の実施の形態における非選択行印加電圧生成部260および非選択列印加電圧生成部270の出力電圧を示す図である。同図は、リセット時の非選択行印加電圧生成部260および非選択列印加電圧生成部270の出力電圧と制御コードとの関係を表したものである。同図におけるaは非選択行印加電圧生成部260の出力電圧を表し、同図におけるbは非選択列印加電圧生成部270の出力電圧を表す。なお、セット時の非選択行印加電圧生成部260および非選択列印加電圧生成部270の出力電圧と制御コードとの関係は、図24において説明した非選択行印加電圧生成部260の出力電圧と制御コードとの関係等と同様であるため、説明を省略する。
 同図におけるaのグラフ561は、制御コードとVpgmU_Lとの関係を表すグラフである。グラフ562は、制御コードとVref_Lとの関係を表すグラフである。制御コードに比例してVref_LおよびVpgmU_Lは上昇する。また、VpgmU_LはVref_Lに対してマージンに相当する電圧だけ低くなる。半選択列メモリセルに対応する参照閾値電圧を計測する際には、選択列信号線にVpgm_Lが印加されるとともに非選択列信号線および選択行信号線に所定のVcal_Lが印加される。次に、非選択行信号線に印加する電圧であるVref_Lを上昇させて、参照素子303をオンさせ、その際の制御コードVGur_code_rを保持することにより参照閾値電圧を計測する。同図におけるaの1点鎖線563は、制御コードVGur_code_rに対して設定された閾値の例を表したものである。
 同図におけるbのグラフ564は、制御コードとVref_Hとの関係を表すグラフである。グラフ565は、制御コードとVpgmU_Hとの関係を表すグラフである。制御コードに比例してVref_HおよびVpgmU_Hは低下する。また、VpgmU_HはVref_Hに対してマージンに相当する電圧だけ高くなる。半選択行メモリセルに対応する参照閾値電圧を計測する際には、選択行信号線にVpgm_Hを印加するとともに非選択行信号線および選択列信号線に所定のVcal_Hを印加する。次に、非選択列信号線に印加する電圧であるVref_Hを低下させて、参照素子303をオンさせ、その際の制御コードVGuc_code_rを保持することにより参照閾値電圧を計測する。同図におけるbの1点鎖線566は、制御コードVGuc_code_rに対して設定された閾値の例を表したものである。
 [書込み処理]
 図32は、本技術の第5の実施の形態における書込み処理の処理手順の一例を示す図である。まず、メモリアクセス処理部240は、書込みデータを書込データ保持部210に保持する(ステップS831)。次に、メモリアクセス処理部240は、書込みアドレスを設定する(ステップS832)。次に、メモリアクセス処理部240は、図27において説明した非選択ラインセット電圧設定(ステップS980)の処理を行う。次に、メモリアクセス処理部240は、非選択ラインリセット電圧設定(ステップS840)の処理を行う。次に、メモリアクセス処理部240は、図25において説明したメモリアレイユニット読出し(ステップS960)の処理を行う。最後に、メモリアクセス処理部240は、図29において説明したメモリアレイユニット書込み(ステップS810)の処理を行い、書込み処理を終了する。
 [非選択ラインリセット電圧設定処理]
 図33は、本技術の第5の実施の形態における非選択ラインリセット電圧設定処理(ステップS840)の処理手順の一例を示す図である。同図は、図32において説明した非選択ラインリセット電圧設定(ステップS840)の処理を表したものである。まず、メモリアクセス処理部240は、制御コードVGur_code_rおよびVGuc_code_rを値「0」にして初期化する(ステップS841)。次に、メモリアクセス処理部240は、参照アレイユニット390にオペレーションコードとして値「2b10」を設定する(ステップS843)。次に、メモリアクセス処理部240は、リセット時のコード設定処理(ステップS850)を行い、制御コードVGur_code_rおよびVGuc_code_rを取得する。
 次に、メモリアクセス処理部240は、これらの制御コードに基づいて、非選択行電圧Vurが非選択列電圧Vucより高いか否かを判断する(ステップS844)。非選択行電圧Vurが非選択列電圧Vucより高い場合には(ステップS844:Yes)、制御コードVGur_code_rおよびVGuc_code_rを調整して非選択行電圧Vurおよび非選択列電圧Vucを等しい値にする(ステップS847)。非選択行電圧Vurが非選択列電圧Vucより高くない場合には(ステップS844:No)、メモリアクセス処理部240は、ステップS847の処理をスキップして、非選択ラインリセット電圧設定処理を終了する。
 [リセット時のコード設定処理]
 図34は、本技術の第5の実施の形態におけるリセット時のコード設定処理(ステップS850)の処理手順の一例を示す図である。同図は、図33において説明したリセット時のコード設定(ステップS850)の処理を表したものである。まず、メモリアクセス処理部240は、選択および非選択電圧の設定を行う(ステップS851)。具体的には、メモリアクセス処理部240は、印加電圧生成部250に対して選択列電圧Vc(Vpgm_L)および選択行電圧Vr(Vcal_L)をそれぞれ生成させる。同時に、メモリアクセス処理部240は、非選択列印加電圧生成部270に対して非選択列電圧Vuc(Vcal_L)を生成させ、非選択行印加電圧生成部260に対して非選択行電圧Vur(Vref_L)を生成させる。次に、メモリアクセス処理部240は、参照アレイユニット390のイネーブル信号を値「1」にして、参照セル394等に電圧を印加する(ステップS852)。
 次に、メモリアクセス処理部240は、選択列信号線に該当する列信号線313を流れる電流が閾値以上か否かを判断する(ステップS853)。電流が閾値以上の場合には(ステップS853:Yes)、メモリアクセス処理部240は、この時の制御コードVGur_code_rを保持し、ステップS856の処理に移行する。
 一方、電流が閾値未満の場合には(ステップS853:No)、メモリアクセス処理部240は、VGur_code_rをインクリメントして印加電圧を変更する(ステップS854)。この結果、VGur_code_rが閾値に達した場合には(ステップS855:Yes)、メモリアクセス処理部240は、ステップS856の処理に移行する。一方、VGur_code_rが閾値に達していない場合には(ステップS855:No)、メモリアクセス処理部240は、ステップS853からの処理を再度実行する。
 ステップS856において、メモリアクセス処理部240は、選択および非選択電圧の設定を行う(ステップS856)。具体的には、メモリアクセス処理部240は、印加電圧生成部250に対して選択列電圧Vc(Vcal_H)および選択行電圧Vr(Vpgm_H)をそれぞれ生成させる。同時に、メモリアクセス処理部240は、非選択列印加電圧生成部270に対して非選択列電圧Vuc(Vref_H)を生成させ、非選択行印加電圧生成部260に対して非選択行電圧Vur(Vcal_H)を生成させる。次に、メモリアクセス処理部240は、選択行信号線に該当する行信号線312を流れる電流が閾値以上か否かを判断する(ステップS857)。電流が閾値以上の場合には(ステップS857:Yes)、メモリアクセス処理部240は、制御コードVGuc_code_sを保持し、ステップS861の処理に移行する。
 一方、電流が閾値未満の場合には(ステップS857:No)、メモリアクセス処理部240は、VGuc_code_rをインクリメントして印加電圧を変更する(ステップS858)。この結果、VGuc_code_rが閾値に達した場合には(ステップS859:Yes)、メモリアクセス処理部240は、ステップS861の処理に移行する。一方、VGuc_code_rが閾値に達していない場合には(ステップS859:No)、メモリアクセス処理部240は、ステップS857からの処理を再度実行する。最後に、メモリアクセス処理部240は、参照アレイユニット390のイネーブル信号を値「0」にして、参照セル394等の電圧の印加を停止し(ステップS861)、リセット時のコード設定の処理を終了する。
 なお、読出し処理については本技術の第4の実施の形態において説明した読出し処理と同様であるため、説明を省略する。これ以外のアクセス制御部200の構成は図21において説明したアクセス制御部200の構成と同様であるため、説明を省略する。
 このように、本技術の第5の実施の形態では、第4の実施の形態と比べて、リセットの際にも参照閾値電圧による半選択行メモリセル等の制御素子301の閾値電圧の推定を行う。このため、セットおよびリセットにおける半選択行メモリセル等の制御素子301の導通状態への変化を防止する。リセット時においても、半選択行メモリセル等の抵抗変化素子302に印加される電圧が低減されるため、記憶データの信頼性をより向上させることができる。
 [変形例]
 上述の本技術の第5の実施の形態では、セットおよびリセットの際に参照閾値電圧の計測を行っていた。これに対し、セット時に計測した参照閾値電圧によりリセット時の半選択行メモリセル等の制御素子301の閾値電圧を推定し、半選択行メモリセル等に電圧を印加してもよい。具体的には、セット時に取得した制御コードVGur_code_sおよびVGuc_code_sと同じ値の制御コードVGur_code_rおよびVGuc_code_rを使用してリセット時の非選択行印加電圧Vur等を設定してもよい。印加される電圧の極性が異なる場合の制御素子301の特性に大きな差異がない場合には、セットおよびリセットにおいて同じ制御コードを使用することができる。これにより、リセットの際の参照閾値電圧の計測を省略することが可能になる。
 <6.第6の実施の形態>
 上述の第1の実施の形態では、双方向に電圧を印加する形式の抵抗変化素子302および制御素子301により構成されたメモリセルを使用していた。これに対し、本技術の第6の実施の形態では、単一方向に電圧を印加する形式の抵抗変化素子および制御素子により構成されたメモリセルを採用し、メモリシステムを簡略化する。
 [メモリセルおよび参照セルの構成]
 図35は、本技術の第6の実施の形態におけるメモリセルおよび参照セルの構成例を示す図である。同図は、直列に接続された制御素子304および抵抗変化素子305により構成されるメモリセルおよび参照セルの例を表したものである。制御素子304には、例えば、ダイオードを使用することができる。また、抵抗変化素子305には、例えば、PCRAMにより構成された抵抗変化素子305を使用することができる。この抵抗変化素子305は、書込みの際に書込み電流の大きさ等を制御して抵抗変化素子305を非結晶状態および結晶状態に可逆的に変化させる抵抗変化素子である。非結晶状態および結晶状態がそれぞれHRSおよびLRSに該当する。このような構成のメモリにおいて、参照メモリセルを配置して参照閾値電圧の計測を行う。計測した参照閾値電圧により制御素子304の閾値電圧を推定し、メモリセルに電圧を印加する。単一方向に電圧を印加する形式のメモリセルを使用した場合には、印加電圧の極性を変更する必要がないため、双方向に電圧を印加する形式のメモリセルを使用するシステムと比較して、アレイ駆動部311等の構成を簡略化することができる。また、単一方向性の制御素子304は、双方向性の制御素子301と比べて簡単な構成にすることができる。
 これ以外のメモリ30の構成は本技術の第1の実施の形態において説明したメモリ30の構成と同様であるため、説明を省略する。
 このように、本技術の第6の実施の形態によれば、単一方向に電圧を印加する形式の抵抗変化素子305および制御素子304により構成されたメモリセルを使用するため、メモリセルおよびアレイ駆動部311等の構成を簡略化することができる。
 <7.第7の実施の形態>
 上述の第1の実施の形態では、抵抗変化素子302および制御素子301により構成されたメモリセルを使用していた。これに対し、本技術の第7の実施の形態では、単一の素子により構成されたメモリセルを採用し、メモリシステムを簡略化する。
 [メモリセルおよび参照セルの構成]
 図36は、本技術の第7の実施の形態におけるメモリセルおよび参照セルの構成例を示す図である。同図は、素子306により構成されるメモリセルおよび参照セルの例を表したものである。素子306は、印加された電圧に応じて非導通状態から導通状態に閾値電圧を境として変化するとともに導通状態の時に印加された電圧に応じて高抵抗状態および低抵抗状態に変化する素子である。このような構成のメモリセルにおいて、参照メモリセルを配置して参照閾値電圧の計測を行う。計測した参照閾値電圧により素子306の閾値電圧を推定しメモリセルに電圧を印加する。
 これ以外のメモリ30の構成は本技術の第1の実施の形態において説明したメモリ30の構成と同様であるため、説明を省略する。
 このように、本技術の第7の実施の形態では、印加された電圧に応じて非導通状態から導通状態に変化するとともに導通状態の時に印加された電圧に応じて高抵抗状態および低抵抗状態に変化する素子306により構成されたメモリセルを使用する。これにより、メモリセルの構成を簡略化することができる。
 上述のように、本技術の実施の形態では、参照閾値電圧により閾値電圧を推定してメモリセルに電圧を印加する。このため、メモリセルにおける制御素子の閾値が変化した場合において、制御素子を導通状態にするための必要最低限の電圧を印加することができ、消費電力を増加させることなく、記憶データの信頼性を向上させることができる。
 なお、上述の実施の形態は本技術を具現化するための一例を示したものであり、実施の形態における事項と、請求の範囲における発明特定事項とはそれぞれ対応関係を有する。同様に、請求の範囲における発明特定事項と、これと同一名称を付した本技術の実施の形態における事項とはそれぞれ対応関係を有する。ただし、本技術は実施の形態に限定されるものではなく、その要旨を逸脱しない範囲において実施の形態に種々の変形を施すことにより具現化することができる。
 また、上述の実施の形態において説明した処理手順は、これら一連の手順を有する方法として捉えてもよく、また、これら一連の手順をコンピュータに実行させるためのプログラム乃至そのプログラムを記憶する記録媒体として捉えてもよい。この記録媒体として、例えば、CD(Compact Disc)、MD(MiniDisc)、DVD(Digital Versatile Disc)、メモリカード、ブルーレイディスク(Blu-ray(登録商標)Disc)等を用いることができる。
 なお、本明細書に記載された効果はあくまで例示であって、限定されるものではなく、また、他の効果があってもよい。
 なお、本技術は以下のような構成もとることができる。
(1)印加された電圧に応じて非導通状態から導通状態に閾値電圧を境として変化するとともに前記導通状態の時に印加された電圧に応じて高抵抗状態および低抵抗状態に変化するメモリセルと、
 印加された電圧に応じて非導通状態から導通状態に参照閾値電圧を境として変化する参照素子を備える参照セルと、
 前記参照セルにおいて計測された参照閾値電圧を前記メモリセルの閾値電圧と推定して前記メモリセルのアクセスの際に前記メモリセルに電圧を印加するアクセス制御部と
を具備するメモリ。
(2)前記メモリセルは、印加された電圧に応じて前記非導通状態から前記導通状態に前記閾値電圧を境として変化する制御素子と印加された電圧に応じて前記高抵抗状態および前記低抵抗状態に変化する抵抗変化素子とを備える前記(1)に記載のメモリ。
(3)前記アクセス制御部は、読出しを行う際に前記参照素子を前記非導通状態から前記導通状態に変化させて前記参照閾値電圧の計測を行う前記(1)または(2)に記載のメモリ。
(4)前記データセルは、ページサイズにより分割されたページを単位としてアクセスされ、
 前記参照セルは、前記ページ毎に配置され、
 前記アクセス制御部は、前記ページ毎に前記参照閾値電圧を前記メモリセルの閾値電圧と推定して前記メモリセルに電圧を印加する
前記(1)から(3)に記載のメモリ。
(5)前記参照セルは、前記ページ毎に複数配置され、
 前記アクセス制御部は、前記複数の参照セルにおける参照閾値電圧により前記メモリセルの閾値電圧を推定する
前記(4)に記載のメモリ。
(6)前記アクセス制御部は、前記ページにおける読出しを行う際に前記参照素子を前記非導通状態から前記導通状態に変化させて前記参照閾値電圧の計測を行う前記(4)に記載のメモリ。
(7)前記アクセス制御部は、前記ページにおける書込みの後に前記高抵抗状態の前記メモリセルが存在する場合に前記ページの前記低抵抗状態の前記メモリセルを前記導通状態に変化させて当該変化後の経過時間を前記高抵抗状態の前記メモリセルと略等しいかまたは短い状態にして前記参照閾値電圧を前記ページにおける前記メモリセルの閾値電圧と推定する前記(6)に記載のメモリ。
(8)XYマトリクス状に配置された複数の行信号線および複数の列信号線をさらに具備し、
 前記メモリセルは、前記複数の行信号線および前記複数の列信号線の交点に複数配置されて前記交点における前記複数の行信号線のうちの一つと前記交点における前記複数の列信号線のうちの一つとにそれぞれ接続され、
 前記参照セルは、前記複数のメモリセル毎に配置され、
 前記アクセス制御部は、前記複数のメモリセル毎に配置された前記参照セルの参照閾値電圧を前記メモリセルの閾値電圧と推定して前記メモリセル毎に電圧を印加する
前記(1)に記載のメモリ。
(9)前記アクセス制御部は、前記複数の行信号線のうちの一つと前記複数の列信号線のうちの一つとを選択して前記アクセスを行う前記(8)に記載のメモリ。
(10)前記アクセス制御部は、前記複数の行信号線のうちの一つである選択行信号線と前記複数の列信号線のうちの一つである選択列信号線との間に接続された前記メモリセルの書込みを行う際に前記選択行信号線と前記選択列信号線を除く前記列信号線との間に接続された前記メモリセルである半選択行メモリセルの閾値電圧および前記選択列信号線と前記選択行信号線を除く前記行信号線との間に接続された前記メモリセルである半選択列メモリセルの閾値電圧を前記参照閾値電圧により推定して前記半選択行メモリセルおよび前記半選択列メモリセルに電圧を印加する前記(9)に記載のメモリ。
(11)前記アクセスに係る読出しデータの誤り検出および誤り訂正を行う誤り検出訂正部をさらに具備し、
 前記アクセス制御部は、前記誤り検出訂正部において前記読出しデータの誤りが検出された際に前記参照閾値電圧を前記メモリセルの閾値電圧と推定して前記メモリセルに電圧を印加する
前記(1)に記載のメモリ。
(12)印加された電圧に応じて非導通状態から導通状態に閾値電圧を境として変化するとともに前記導通状態の時に印加された電圧に応じて高抵抗状態および低抵抗状態に変化するメモリセルと、
 印加された電圧に応じて非導通状態から導通状態に参照閾値電圧を境として変化する参照素子を備える参照セルと、
 前記参照セルにおいて計測された参照閾値電圧を前記メモリセルの閾値電圧と推定して前記メモリセルのアクセスの際に前記メモリセルに電圧を印加するアクセス制御部と
を備えるメモリと、
 前記メモリにアクセスするホストコンピュータと
を具備する情報処理システム。
(13)印加された電圧に応じて非導通状態から導通状態に参照閾値電圧を境として変化する参照素子を備える参照セルにおいて計測された前記参照閾値電圧を印加された電圧に応じて非導通状態から導通状態に閾値電圧を境として変化するとともに前記導通状態の時に印加された電圧に応じて高抵抗状態および低抵抗状態に変化するメモリセルの前記閾値電圧と推定して前記メモリセルのアクセスの際に前記メモリセルに電圧を印加するアクセス制御手順を具備するメモリの制御方法。
 10 ホストコンピュータ
 20 メモリコントローラ
 21 ホストコンピュータインターフェース
 22 メモリアクセス制御部
 23 誤り検出訂正部
 24 メモリインターフェース
 30 メモリ
 100 メモリコントローラインターフェース
 200 アクセス制御部
 210 書込データ保持部
 220 読出データ保持部
 230 オペレーションコード保持部
 240 メモリアクセス処理部
 250 印加電圧生成部
 260 非選択行印加電圧生成部
 270 非選択列印加電圧生成部
 300 メモリアレイ
 301、304 制御素子
 302、305 抵抗変化素子
 303 参照素子
 306 素子
 310~380 メモリアレイユニット
 311、391 アレイ駆動部
 312、392 行信号線
 313、393 列信号線
 314~317 メモリセル
 390、490 参照アレイユニット
 394~397 参照セル

Claims (13)

  1.  印加された電圧に応じて非導通状態から導通状態に閾値電圧を境として変化するとともに前記導通状態の時に印加された電圧に応じて高抵抗状態および低抵抗状態に変化するメモリセルと、
     印加された電圧に応じて非導通状態から導通状態に参照閾値電圧を境として変化する参照素子を備える参照セルと、
     前記参照セルにおいて計測された参照閾値電圧を前記メモリセルの閾値電圧と推定して前記メモリセルのアクセスの際に前記メモリセルに電圧を印加するアクセス制御部と
    を具備するメモリ。
  2.  前記メモリセルは、印加された電圧に応じて前記非導通状態から前記導通状態に前記閾値電圧を境として変化する制御素子と印加された電圧に応じて前記高抵抗状態および前記低抵抗状態に変化する抵抗変化素子とを備える請求項1記載のメモリ。
  3.  前記アクセス制御部は、読出しを行う際に前記参照素子を前記非導通状態から前記導通状態に変化させて前記参照閾値電圧の計測を行う請求項1記載のメモリ。
  4.  前記データセルは、ページサイズにより分割されたページを単位としてアクセスされ、
     前記参照セルは、前記ページ毎に配置され、
     前記アクセス制御部は、前記ページ毎に前記参照閾値電圧を前記メモリセルの閾値電圧と推定して前記メモリセルに電圧を印加する
    請求項1記載のメモリ。
  5.  前記参照セルは、前記ページ毎に複数配置され、
     前記アクセス制御部は、前記複数の参照セルにおける参照閾値電圧により前記メモリセルの閾値電圧を推定する
    請求項4記載のメモリ。
  6.  前記アクセス制御部は、前記ページにおける読出しを行う際に前記参照素子を前記非導通状態から前記導通状態に変化させて前記参照閾値電圧の計測を行う請求項4記載のメモリ。
  7.  前記アクセス制御部は、前記ページにおける書込みの後に前記高抵抗状態の前記メモリセルが存在する場合に前記ページの前記低抵抗状態の前記メモリセルを前記導通状態に変化させて当該変化後の経過時間を前記高抵抗状態の前記メモリセルと略等しいかまたは短い状態にして前記参照閾値電圧を前記ページにおける前記メモリセルの閾値電圧と推定する請求項6記載のメモリ。
  8.  XYマトリクス状に配置された複数の行信号線および複数の列信号線をさらに具備し、
     前記メモリセルは、前記複数の行信号線および前記複数の列信号線の交点に複数配置されて前記交点における前記複数の行信号線のうちの一つと前記交点における前記複数の列信号線のうちの一つとにそれぞれ接続され、
     前記参照セルは、前記複数のメモリセル毎に配置され、
     前記アクセス制御部は、前記複数のメモリセル毎に配置された前記参照セルの参照閾値電圧を前記メモリセルの閾値電圧と推定して前記メモリセル毎に電圧を印加する
    請求項1記載のメモリ。
  9.  前記アクセス制御部は、前記複数の行信号線のうちの一つと前記複数の列信号線のうちの一つとを選択して前記アクセスを行う請求項8記載のメモリ。
  10.  前記アクセス制御部は、前記複数の行信号線のうちの一つである選択行信号線と前記複数の列信号線のうちの一つである選択列信号線との間に接続された前記メモリセルの書込みを行う際に前記選択行信号線と前記選択列信号線を除く前記列信号線との間に接続された前記メモリセルである半選択行メモリセルの閾値電圧および前記選択列信号線と前記選択行信号線を除く前記行信号線との間に接続された前記メモリセルである半選択列メモリセルの閾値電圧を前記参照閾値電圧により推定して前記半選択行メモリセルおよび前記半選択列メモリセルに電圧を印加する請求項9記載のメモリ。
  11.  前記アクセスに係る読出しデータの誤り検出および誤り訂正を行う誤り検出訂正部をさらに具備し、
     前記アクセス制御部は、前記誤り検出訂正部において前記読出しデータの誤りが検出された際に前記参照閾値電圧を前記メモリセルの閾値電圧と推定して前記メモリセルに電圧を印加する
    請求項1記載のメモリ。
  12.  印加された電圧に応じて非導通状態から導通状態に閾値電圧を境として変化するとともに前記導通状態の時に印加された電圧に応じて高抵抗状態および低抵抗状態に変化するメモリセルと、
     印加された電圧に応じて非導通状態から導通状態に参照閾値電圧を境として変化する参照素子を備える参照セルと、
     前記参照セルにおいて計測された参照閾値電圧を前記メモリセルの閾値電圧と推定して前記メモリセルのアクセスの際に前記メモリセルに電圧を印加するアクセス制御部と
    を備えるメモリと、
     前記メモリにアクセスするホストコンピュータと
    を具備する情報処理システム。
  13.  印加された電圧に応じて非導通状態から導通状態に参照閾値電圧を境として変化する参照素子を備える参照セルにおいて計測された前記参照閾値電圧を印加された電圧に応じて非導通状態から導通状態に閾値電圧を境として変化するとともに前記導通状態の時に印加された電圧に応じて高抵抗状態および低抵抗状態に変化するメモリセルの前記閾値電圧と推定して前記メモリセルのアクセスの際に前記メモリセルに電圧を印加するアクセス制御手順を具備するメモリの制御方法。
PCT/JP2016/067623 2015-08-27 2016-06-14 メモリ、情報処理システムおよびメモリの制御方法 WO2017033534A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US15/749,624 US11081178B2 (en) 2015-08-27 2016-06-14 Memory, information processing system, and method of controlling memory

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2015168204A JP6520576B2 (ja) 2015-08-27 2015-08-27 メモリ、情報処理システムおよびメモリの制御方法
JP2015-168204 2015-08-27

Publications (1)

Publication Number Publication Date
WO2017033534A1 true WO2017033534A1 (ja) 2017-03-02

Family

ID=58099919

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2016/067623 WO2017033534A1 (ja) 2015-08-27 2016-06-14 メモリ、情報処理システムおよびメモリの制御方法

Country Status (3)

Country Link
US (1) US11081178B2 (ja)
JP (1) JP6520576B2 (ja)
WO (1) WO2017033534A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112673429A (zh) * 2018-08-07 2021-04-16 美光科技公司 与写入操作相关联的预读取操作的调整

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016053808A (ja) * 2014-09-03 2016-04-14 ソニー株式会社 記憶制御装置、記憶装置、および、記憶制御方法
US10290327B2 (en) * 2017-10-13 2019-05-14 Nantero, Inc. Devices and methods for accessing resistive change elements in resistive change element arrays
US11211123B2 (en) * 2017-12-11 2021-12-28 Sony Semiconductor Solutions Corporation Semiconductor device
US11170853B2 (en) 2020-03-04 2021-11-09 Micron Technology, Inc. Modified write voltage for memory devices
TWI768939B (zh) * 2021-05-31 2022-06-21 力晶積成電子製造股份有限公司 記憶體裝置
CN113409839A (zh) * 2021-06-28 2021-09-17 芯天下技术股份有限公司 存储单元门限电压读取方法、装置、电子设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013094169A1 (ja) * 2011-12-19 2013-06-27 パナソニック株式会社 不揮発性記憶装置及びその製造方法
JP2015500548A (ja) * 2011-12-15 2015-01-05 マイクロン テクノロジー, インク. 相変化メモリの読出しエラーを減少させるための読出しバイアス管理

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2853217B2 (ja) * 1989-11-21 1999-02-03 日本電気株式会社 半導体メモリ
JP4890016B2 (ja) * 2005-03-16 2012-03-07 ルネサスエレクトロニクス株式会社 不揮発性半導体記憶装置
KR20090126587A (ko) 2008-06-04 2009-12-09 삼성전자주식회사 상 변화 메모리 장치 및 그것의 읽기 방법
JP4940287B2 (ja) * 2009-08-06 2012-05-30 株式会社東芝 不揮発性半導体記憶装置
KR101802448B1 (ko) * 2010-10-12 2017-11-28 삼성전자주식회사 상변화 메모리 장치 및 상변화 메모리 장치의 리라이트 동작 방법
KR20140028480A (ko) * 2012-08-29 2014-03-10 에스케이하이닉스 주식회사 가변 저항 메모리 장치 및 그것의 동작 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015500548A (ja) * 2011-12-15 2015-01-05 マイクロン テクノロジー, インク. 相変化メモリの読出しエラーを減少させるための読出しバイアス管理
WO2013094169A1 (ja) * 2011-12-19 2013-06-27 パナソニック株式会社 不揮発性記憶装置及びその製造方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112673429A (zh) * 2018-08-07 2021-04-16 美光科技公司 与写入操作相关联的预读取操作的调整

Also Published As

Publication number Publication date
JP6520576B2 (ja) 2019-05-29
JP2017045493A (ja) 2017-03-02
US11081178B2 (en) 2021-08-03
US20180226125A1 (en) 2018-08-09

Similar Documents

Publication Publication Date Title
WO2017033534A1 (ja) メモリ、情報処理システムおよびメモリの制御方法
US8493770B2 (en) Non-volatile semiconductor storage device with concurrent read operation
JP5853906B2 (ja) 記憶制御装置、記憶装置、情報処理システムおよび記憶制御方法
JP6891817B2 (ja) メモリコントローラ、メモリシステム、および、メモリコントローラの制御方法
WO2016143170A1 (en) Semiconductor storage device
US9208875B2 (en) Resistive nonvolatile memory device having cells programmed to achieve a target resistance value at a target time and writing method thereof
WO2017138235A1 (ja) メモリコントローラ、不揮発性メモリおよびメモリコントローラの制御方法
JP6202576B2 (ja) 不揮発性記憶装置およびその制御方法
WO2016143168A1 (en) Memory device and memory system
CN103578527A (zh) 写入驱动器电路、使用其的半导体装置以及存储系统
US11024376B2 (en) Memory apparatus and method of controlling memory apparatus
US20150261602A1 (en) Resistance change memory
US10318210B2 (en) Memory controller, storage device, information processing system, and method of controlling memory
TWI569270B (zh) 記憶體操作方法及相關的記憶體裝置
US20220199173A1 (en) Simplified Operations to Read Memory Cells Coarsely Programmed via Interleaved Two-Pass Data Programming Techniques
US20140025907A1 (en) Storage control apparatus, storage apparatus, and processing methods thereof
US10310742B2 (en) Memory controller, storage apparatus, information processing system, and method for controlling nonvolatile memory
US9489298B2 (en) Nonvolatile memory apparatus, operating method thereof, and data processing system having the same
US11262936B2 (en) Memory controller, storage device, information processing system, and memory control method
CN106158015A (zh) 阻变式存储器装置、读/写电路单元及其操作方法
US20220199154A1 (en) Reading Memory Cells Coarsely Programmed via Interleaved Two-Pass Data Programming Techniques
WO2017010147A1 (ja) 不揮発メモリ、メモリコントローラ、記憶装置、情報処理システムおよび不揮発メモリの制御方法
JP2014013635A (ja) 記憶制御装置、記憶装置、情報処理システム、および、それらにおける処理方法
JPWO2020031435A1 (ja) 記憶制御装置、記憶装置および記憶制御方法
JPWO2015008438A1 (ja) 不揮発性半導体記憶装置とその書換方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16838881

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 15749624

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 16838881

Country of ref document: EP

Kind code of ref document: A1