WO2016042665A1 - 半導体記憶装置およびそれを用いたストレージ装置 - Google Patents

半導体記憶装置およびそれを用いたストレージ装置 Download PDF

Info

Publication number
WO2016042665A1
WO2016042665A1 PCT/JP2014/074873 JP2014074873W WO2016042665A1 WO 2016042665 A1 WO2016042665 A1 WO 2016042665A1 JP 2014074873 W JP2014074873 W JP 2014074873W WO 2016042665 A1 WO2016042665 A1 WO 2016042665A1
Authority
WO
WIPO (PCT)
Prior art keywords
write
sub
memory cells
data
value
Prior art date
Application number
PCT/JP2014/074873
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
Priority to US15/502,352 priority Critical patent/US20170229176A1/en
Application filed by 株式会社日立製作所 filed Critical 株式会社日立製作所
Priority to PCT/JP2014/074873 priority patent/WO2016042665A1/ja
Priority to JP2016548515A priority patent/JPWO2016042665A1/ja
Publication of WO2016042665A1 publication Critical patent/WO2016042665A1/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
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/02Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
    • G11C11/16Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
    • G11C11/165Auxiliary circuits
    • G11C11/1675Writing 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
    • 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/0061Timing 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/0064Verifying 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/0097Erasing, e.g. resetting, 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/0069Writing or programming circuits or methods
    • G11C2013/0076Write operation performed depending on read result
    • 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
    • G11C2013/0078Write using current through the cell
    • 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
    • G11C2013/0088Write with the simultaneous writing of a plurality of cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2213/00Indexing scheme relating to G11C13/00 for features not covered by this group
    • G11C2213/70Resistive array aspects
    • G11C2213/71Three dimensional array
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2213/00Indexing scheme relating to G11C13/00 for features not covered by this group
    • G11C2213/70Resistive array aspects
    • G11C2213/75Array having a NAND structure comprising, for example, memory cells in series or memory elements in series, a memory element being a memory cell in parallel with an access transistor

Definitions

  • the present invention relates to a semiconductor memory device and a storage device using the same, and more particularly to an electrically rewritable nonvolatile memory such as a phase change memory, a ReRAM (resistance change type memory), an STT-MRAM (spin injection magnetization reversal type resistance).
  • the present invention relates to a technique effective when applied to a change memory.
  • Patent Document 1 JP 2010-182373 A
  • the problem is that “the program throughput is improved while reducing the total amount of write current.”
  • the memory cell driving circuit writes one memory cell corresponding to N bits into one write. The cycle of the data verify write operation in units of cells is repeated until all the cells pass the verification pass, and at this time, a plurality of verify write operations are executed simultaneously for the operation target memory cells. (See summary).
  • this kind of control is possible because the probability of a pass (program success rate) at the time of verification can be made almost constant in a memory cell having high controllability as shown in FIG. Yes, ”(see paragraph 0061).
  • Patent Document 2 JP-A-2007-188552
  • a semiconductor memory device that executes a write process, executes a batch verify process that collectively performs a verify operation of a plurality of addresses, and repeats the batch verify process and the write process.
  • a detecting unit configured to detect whether or not an unwritten memory cell is included, and at least a part of an address determined not to include an unwritten memory cell in one or more previous verify processes in at least a part of the batch verify process; The verification process is performed with the exception of “.”.
  • Patent Document 3 a technique for manufacturing a large-capacity semiconductor memory device by using a phase change memory as a nonvolatile memory and connecting a plurality of bits in series in a chain shape is known (see, for example, Patent Document 3).
  • This publication states that “in a semiconductor memory in which a diode and a transistor are connected in series, there is a problem that the characteristics of the transistor deteriorate due to carriers entering the transistor from the diode” (see summary).
  • paragraph 0044 states that “a memory cell in which such a transistor and a phase change element are connected in parallel is connected in series, that is, a chain cell, for example, performs the following operation”. Yes.
  • the program success rate of the phase change memory differs depending on the characteristic variation of each cell and the physical arrangement of the cells. . Therefore, it is difficult to use the control method described in Patent Document 1 on the assumption of a substantially constant program success rate.
  • the data is sent from a server to a storage controller device via a storage area network constituted by a fiber channel, and further sent to an SSD (Solid State Drive) via SAS (Serial Attached SCSI).
  • the SSD has an SSD controller and the semiconductor memory device.
  • the data is first sent to the SSD controller and then sent to the semiconductor memory device for storage.
  • the data size transmitted by the server is an integral multiple of the sector size.
  • the sector size is 512B or 4KB. According to the inventor's analysis, the data size used by the server is often less than the sector size.
  • the server performs padding processing to add data with a continuous '0' or '1' to the necessary data. , Sector size, or data converted to an integer multiple of the sector size, and then transmitted. For this reason, data having a continuous portion of “0” or “1” may be sent to the storage controller device or the SSD controller. At this time, by performing appropriate data conversion processing in the storage controller device or the SSD controller device, it becomes possible to write a large amount of continuous “1” data in the semiconductor memory device. On the other hand, if the value of the erase state of the semiconductor memory device is “1” and the value after writing is “0”, the value of the memory element after erasing is “1”.
  • the semiconductor memory device only needs to write “0” to the memory element only when the However, when many “1” values are written and when many “0” values are written, the former has a smaller number of bits actually written to the memory cell, and the write current is smaller. The total was the same despite the small total. In writing, when many '1' values are written, the number of bits to be written to '0' is small, and compared with the case where many '0' values are written, the power consumption in writing is Few.
  • the present application includes a plurality of means for solving the above problems. For example, a plurality of memory cells storing “0” and “1” due to a difference in electric resistance. And a counter circuit that counts the number of '0' bits written in the write unit with a predetermined number of memory cells as one write unit, and writes within a range where the number of '0' bits is less than the predetermined number.
  • a semiconductor memory device is characterized in that one or a plurality of units are selected and data is written in a lump.
  • Another aspect of the present invention is a semiconductor memory device including a memory array composed of a plurality of memory cells, in which data is written (written), erased, and written to a predetermined number (a constant which is a natural number) of memory cells.
  • a plurality of sub-write drivers that perform at least one of the verify writes are provided.
  • Data writing (writing), erasing, verify writing, and the like are similar operations in that the state of a predetermined number of memory cells is changed. Therefore, in this specification, for the sake of simplicity, this means the setting of the state of the memory cells. These are sometimes collectively referred to as “sets”.
  • the memory cell can reversibly change at least two states, and can maintain or change data to be stored by maintaining or changing each state of a predetermined number of memory cells by a set operation.
  • a typical example is one in which a local selection line connected to the gate electrode of a selection transistor of the memory cell is driven by a driver in the memory array. It is not limited to.
  • the two states correspond to, for example, “1” and “0” of data.
  • whether the high resistance state or the low resistance state of the memory cell corresponds to data “1” or “0” is arbitrary. It is also arbitrary whether data “1” and “0” are associated with either the recording state or the erasing state. Further, the present invention can be similarly applied not only to “1” and “0” but also to a memory cell capable of storing a so-called multivalue of three or more values.
  • a typical memory cell there is a configuration in which information is stored by a resistance value that changes due to a micro state change such as a phase change of a material or a spin state change.
  • a phase change memory ReRAM, spin-injection magnetization reversal memory or the like.
  • the state changes among a predetermined number of memory cells set by the sub write driver (usually a constant that is a natural number, but may be different for each sub write driver) for each sub write driver.
  • the number of memory cells (variables that are natural numbers) is counted.
  • the memory cell whose state is changed means a cell in which “0” is changed to “1” or “1” is changed to “0” from the viewpoint of stored data. From the physical point of view, it means that the resistance value of the memory cell changes.
  • the sub write driver is selected so that the total number of memory cells whose states are changed does not exceed a predetermined value (a constant which is a natural number).
  • a predetermined value a constant which is a natural number.
  • One or a plurality of sub-light drivers may be selected.
  • setting is performed simultaneously by the selected sub-write driver.
  • “simultaneously” includes controlling the selected sub-light driver by the same control signal.
  • an upper limit (a constant that is a natural number) may be provided for the number of sub write drivers to be selected.
  • Another aspect of the present invention is a plurality of memory cells capable of setting the first storage state and the second storage state by a difference in electrical resistance, and a predetermined number of memory cells that are a part of the plurality of memory cells.
  • set As a single write unit, when writing (writing), erasing, and verify writing (hereinafter referred to as “set”) to memory cells in the write unit, the storage state is changed in multiple write units.
  • a counter circuit for calculating a certain number. Based on the calculation result of the counter circuit, one or a plurality of write units are selected and the selected one or a plurality of the write units are selected within a range in which the number is less than a predetermined number. Data is set all at once.
  • a plurality of memory cells having a first memory state and a second memory state, and a predetermined number of memory cells as one erase unit due to a difference in electrical resistance, , Having a counter circuit that counts the number of first storage states to be erased, and, based on the calculation result of the counter circuit, one erase unit within a range where the number of first storage states is less than or equal to a predetermined number,
  • a semiconductor memory device is characterized in that a plurality of selected, selected one or a plurality of erase unit data are erased collectively.
  • a plurality of memory cells capable of holding a plurality of storage states and a predetermined number of memory cells among the plurality of memory cells are connected to change a storage state of the predetermined number of memory cells. It has a plurality of possible sub write drivers, an input path for inputting data to the sub write drivers, and a counter.
  • the counter counts the number of sub-write drivers whose storage state should be changed among a predetermined number of memory cells based on the input data. Based on the count result of the counter, the operation timings of the plurality of sub write drivers are controlled.
  • the counter sequentially counts the number of memory cells whose storage state should be changed for each of the plurality of sub-write drivers, adds the count result, and the added count result is n.
  • the nth (n is a natural number) subwrite driver the n-1st subwrite drivers are collectively operated.
  • Nth sub-write drivers are operated in a lump.
  • the nth and subsequent sub write drivers are counted in parallel while the n ⁇ 1th sub write drivers are collectively operated.
  • the driver counting in parallel does not necessarily have to be the n-th driver. If the n-th driver has already been counted, it may be the (n + 1) th driver or later.
  • Another aspect of the present invention is a storage device having a semiconductor memory device and a controller for controlling the semiconductor memory device.
  • the semiconductor memory device is connected to a plurality of memory cells capable of holding a plurality of storage states due to differences in electrical resistance, and a predetermined number of memory cells among the plurality of memory cells, and stores a predetermined number of memory cells.
  • a plurality of sub-write drivers whose state can be changed, an interface for communicating with the controller to input data to the sub-write driver, and a plurality of sub-write drivers based on the input data, a predetermined number of memories It has a counter that counts the number of cells whose memory state should be changed.
  • the controller also includes an I / O unit for communicating with the semiconductor memory device and the host device, and a control unit for controlling at least one of writing, erasing, and verifying data to the semiconductor memory device.
  • the operation timings of the plurality of sub-write drivers are controlled based on the count result.
  • the controller can perform control to invert the first value and the second value of the data received from the host device and reflect them in the memory cell of the semiconductor memory device.
  • the sub-write driver sets all the first values and erases a predetermined number of memory cells that change the state of the predetermined memory cells from the first value to the second value. It is assumed that writing is performed, and the counter controls the operation timing of the sub-write driver by counting the number of memory cells to be changed from the first value to the second value.
  • the sub write driver is correctly changed to the second value among the memory cells to be changed from the first value to the second value.
  • the verify write is performed to change the memory cells that have not been changed to the second value again, and the counter counts the number of memory cells that have not been correctly changed to the second value, and determines the operation timing of the sub write driver. Control.
  • the sub-write driver performs data writing or erasing to change the state of a predetermined memory cell based on the input data, and the counter is based on the current state of the memory cell.
  • the data is compared with the input data, and the number of memory cells to be changed from the first value to the second value is counted in order to write or erase data based on the input data. Controls the operation timing of the write driver.
  • a semiconductor memory device with a high write data rate and low peak current consumption can be realized.
  • FIG. 1 is a block diagram showing a configuration example of a semiconductor memory device 101 according to a first embodiment of the present invention. It is a flowchart which shows the example of a write sequence by Embodiment 1 of this invention. It is a table
  • 1 is a block diagram showing a configuration example of a semiconductor memory device 101 according to a first embodiment of the present invention. 1 is a plan view showing a configuration example of a memory array according to a first embodiment of the present invention.
  • FIG. 3 is a circuit diagram showing a circuit configuration example of a part of the memory array according to the first embodiment of the present invention. It is a table
  • 1 is a schematic cross-sectional view of a part of a memory array according to an example of Embodiment 1 of the present invention; 1 is a schematic plan view of a part of a memory array according to an example of Embodiment 1 of the present invention; It is a graph which shows the example of an operation
  • FIG. 1 is a block diagram showing a configuration example of a semiconductor memory device 101 according to a first embodiment of the present invention. It is a graph which shows the operation example of the memory element by Embodiment 1 of this invention. It is a flowchart which shows the example of an operation
  • notations such as “first”, “second”, and “third” are attached to identify the constituent elements, and do not necessarily limit the number or order.
  • a number for identifying a component is used for each context, and a number used in one context does not necessarily indicate the same configuration in another context. Further, it does not preclude that a component identified by a certain number also functions as a component identified by another number.
  • FIG. 1 is a block diagram showing a configuration example of the semiconductor memory device 101 according to this embodiment.
  • the semiconductor memory device 101 receives the data “0” or “1” and holds the value.
  • Multi-value control can be performed by sending '2' or '3'.
  • Multi-level control has the advantage of improving the data transfer rate.
  • the semiconductor memory device 101 has an erase operation and a write operation will be described below.
  • the erase operation is performed in units of blocks, and the values of all the bits included in the block are set to “1”.
  • the write operation is performed in units of pages smaller than the block, and the value of the bit included in the page may be set to “0” according to the data to be written.
  • the peak current that can be consumed by the semiconductor memory device 101 needs to be limited to a certain amount or less.
  • a power supply device for the semiconductor storage device 101 in the SSD needs to be designed in consideration of the maximum peak current amount described in the data sheet of the semiconductor storage device 101. If the semiconductor memory device 101 consumes a current exceeding the maximum peak current amount described in the data sheet, the power supply voltage is reduced, and not only the semiconductor memory device 101 but also the operation of a storage system in which a plurality of SSDs or SSDs are mounted. It can cause defects.
  • a memory having a large amount of current necessary for bit rewriting such as phase change memory, ReRAM, and STT-RAM
  • most of the current consumed by the semiconductor memory device 101 is consumed by the bit rewriting current. More specifically, since the semiconductor memory device 101 boosts or lowers the power supply voltage, it is necessary to consider not only the current amount but also the viewpoint including power and boost loss. For example, if the amount of current required for bit rewriting is 40 uA (microamperes) per bit, the total amount of current consumption is 1280 uA considering that 32 bits are written simultaneously. If the boosting efficiency is 10%, the power consumption is 12.8 mA. If the peak current consumption of the chip is 25 mA, 51% of the current consumed by the entire chip is required for bit rewriting.
  • the semiconductor memory device 101 of this embodiment sends the same data to the population counter 103 at the same time as sending the value of the data to be written to the memory array 102 stored in the register 107 to the sub write driver WD0.
  • the population counter 103 counts the number of “1” included in the data, and calculates the number of bits for bit inversion from “1” to “0” based on the result. If the number of bits for bit inversion is less than the predetermined number, data is further sent from the register to the next sub-write driver WD1, and the same data is sent to the population counter 103 at the same time. Then, the number of bits for bit inversion from “1” to “0” is calculated by the population counter.
  • the number of bits for bit inversion at the time of writing is limited to a certain number or less, and within that limit, the plurality of sub-write drivers WD are simultaneously driven to the maximum simultaneously, and the number of bits to be simultaneously written is increased. With this configuration, it is possible to improve the write data rate.
  • the population counter 103 is a control part that performs a population count process (which may be described as a hamming weight) that counts the number of bits of “1” included in the data. For example, if the data is 115, that is, 0110011 in binary, the '1' count number of this data is 5.
  • the host When writing to the semiconductor memory device 101, the host sends a write command and data to be written to the semiconductor memory device 101.
  • the semiconductor memory device 101 receives the data via the I / O unit 105 and stores it in the register 107.
  • the data stored in the register 107 is sent to the population counter 103 and the write driver group WDG via the data bus 108, respectively.
  • the write driver group WDG includes a plurality of sub write drivers WD.
  • the population counter has a signal line WD_EN that activates each sub-write driver.
  • the value of the variable n holding the number of sub write drivers WD is set to 0, and the value of the variable S holding the number of write bits S is initialized to 0 (S201).
  • the population counter counts the number of '0' bits in the data and adds the result to S (S203). At this point, the value of S becomes 9. Further, it is determined whether or not the value of S is smaller than 32 which is the maximum number of simultaneously writable bits (S204). If it is smaller, there is a possibility that another sub-light driver can be driven. Next, the sub write driver number is confirmed, and it is confirmed whether it is less than the maximum number of simultaneously driven sub write drivers (4 in the example of FIG. 2) (S205). If it is less than the maximum number of simultaneously driven sub-write drivers, the process proceeds to S206. Further, 1 is added to the sub write driver number n to prepare for the processing of the next sub write driver (S206).
  • the population counter 103 is used to investigate the number of sub-light drivers WD that can be driven simultaneously.
  • the population counter 103 transmits a signal WD_EN for activating the sub write driver WD to the sub write driver WD that can be driven simultaneously (S207).
  • the sub write drivers WD0, WD1, and WD2 are activated.
  • Each sub-write driver WD receives the activation signal WD_EN and performs writing simultaneously (S208).
  • the write time per bit is 10 ns (nanoseconds).
  • the total 96-bit write current application time at the beginning of the page is 10 ns.
  • the '0' bit included in the sub write drivers WD0 to WD2 is written.
  • the bit in which the value of “1” is recorded is rewritten to “0”. It can be seen that the maximum number of simultaneously writable bits is 32, and the number can be controlled below that number.
  • the sub-write driver WDn or later that is, WD3 or later is written (S209). In this way, writing is performed for a page with a data size of 8 KB.
  • the sub-write drivers WD0, 1 and 2 have a write order of 1 and are written simultaneously. Since the total number of '0' bits included in WD0 to WD2 is 23 and the maximum number of simultaneous write bits is 32 or less, simultaneous writing is possible. On the other hand, the total number of '0' bits included in WD0 to WD3 is 38, which exceeds the maximum number of simultaneous write bits 32 and cannot be written simultaneously. Therefore, WD3 is written after writing of WD0 to WD2 is completed.
  • the number of '0' bits included in WD3 is 15 and the maximum number of simultaneous write bits is 32 or less, but the total of 19 '0' bits included in the next WD4 is 34, which is the maximum.
  • the number of simultaneous write bits exceeds 32. Therefore, WD3 and WD4 cannot write at the same time, and in the write order 2, only WD3 is written. The same processing is performed after WD4, and data for one page is written.
  • the peak current of the device can be controlled to a certain value or less by controlling the number of memory cells set simultaneously and the number of sub-write drivers WD driven simultaneously by the function of the counter circuit. it can.
  • the order of the processing of the population counter 103 and the write processing by the sub write driver WD in the example of FIG. 3 will be described with reference to FIG.
  • the horizontal direction is a time axis, and a portion surrounded by a rectangle indicates the processing of the population counter 103 and the write processing by the sub-write driver WD, and the length of the horizontal side of the rectangle indicates the processing time.
  • Tc represents the processing time of the population counter 103
  • Td represents the write time (time when the driver is activated) by the sub-write driver WD.
  • the population counter 103 sequentially processes the 8 KB page data by dividing it into 4 B pieces of data from the top.
  • the time required for the population counter processing of one data piece 401 is, for example, 2.5 ns.
  • By designing the population counter processing time so as to satisfy the following expression (1) it becomes possible to conceal the population counter processing time except for the processing for the first write. Thereby, the semiconductor memory device 101 having a high write data rate can be realized.
  • Write time> Population counter processing time x Maximum number of simultaneously driven sub-write drivers (1) The same relationship holds not only in the write time but also in the erase time and verify write time.
  • the population counter 103 processes the data pieces 401-0, 1, 2, and 3 to determine that the sub write drivers WD0, 1, and 2 can be driven simultaneously, but the WD0, 1, 2, and 3 cannot be driven simultaneously. . Therefore, the population counter activates WDs 0, 1, and 2 to perform a write operation. While the write operations of WDs 0, 1, and 2 are being performed, the population counter 103 processes the next data 401-4 in parallel. As a result, the population counter 103 activates WD3. Next, while the write operation of WD3 is being performed, the population counter 103 performs processing of the next data 401-5, 6, and 7.
  • the processing by the population counter 103 and the write processing by the sub-write driver WD are simultaneously performed, so that the processing time by the population counter can be hidden and the write data rate can be improved. .
  • the memory array 102 corresponds to a row decoder 104, a read circuit 109, an erase circuit 110, and the like.
  • FIG. 6 is a plan view showing details of page 0 of the memory array 102 of FIG.
  • the Y address 0 of the memory chain MC is the 0th bit of the sub write driver WD0 (denoted as WD0-0 in FIG. 6). Since the sub write driver WD can simultaneously write a maximum of 32 bits, WD0-0 to WD0-31 exist for WD0. Next, Y address 1 becomes WD4-0. Further, Y address 2 is WD8-0. The first address of the sub write driver WD0 is a Y address 64. The reason why each bit of WD0 is arranged at a distance is as follows. First, the configuration of the local driver that is a part of the driver that controls the Y address line is simplified, and the chip area of the semiconductor memory device 101 is reduced. This is to increase the area.
  • the bits to be written are set in a part of the area, the area is overheated, a heat load is generated on the bits not to be written around the write bit, and the value of “0” or “1” of the bit is inverted. This is to prevent this from happening. In other words, the heat generated at the time of writing is dispersed by scattering the bits to be written. Note that the above configuration is an example, and if the above merits are ignored, it is possible to write bits in which one sub-write driver WD is arranged.
  • FIG. 7 is an example of a circuit configuration of a part of the memory array 102 of the semiconductor memory device 101 of this embodiment.
  • the memory array 102 is composed of a plurality of memory chains MC.
  • the memory chain MC is configured by connecting a plurality of memory cells CELL in series.
  • the memory chain MC includes eight memory cells CELL.
  • Memory cell CELL is configured by connecting one phase change element PCM and one Z selection element ZMOS in parallel.
  • one phase change element PCM and one Z selection element ZMOS are connected in parallel.
  • one phase change element PCM and a plurality of Z selection elements ZMOS are connected in parallel. It is possible to connect a plurality of phase change elements PCM and one Z selection element ZMOS in parallel, or to connect a plurality of phase change elements PCM and a plurality of Z selection elements ZMOS in parallel. Needless to say.
  • the Z direction is a direction orthogonal to the silicon substrate, and the X direction and the Y direction are preferably orthogonal to the Z direction and orthogonal to each other. By doing so, a plurality of memory cells existing in the Z direction can be collectively formed by a single drilling process, and the manufacturing cost can be reduced.
  • the read bit line is preferably extended in the X direction or the Y direction. In the present embodiment, the description will be made assuming that the read bit line is extended in the X direction and parallel to the Y selection line.
  • the memory chain is stacked in four layers.
  • the number of stacked memory cells is 8 ⁇ 4, 32 layers.
  • the memory capacity can be increased by increasing the number of stacked layers.
  • manufacturing is facilitated by reducing the number of stacked layers.
  • the memory chain of the X address I and the Y address J of the H layer is expressed as MC (H)-(I)-(J).
  • a plurality of read bit lines RBL are assumed to be extended in the X direction.
  • the read bit line of the Y address J of the H layer is shown as RBL (H)-(J).
  • the memory chain MC is selected using the X selection line X and the Y selection line Y.
  • the YMOS that is the Y selection MOS of the memory chain MC0-0-0 is sandwiched between the Y selection line Y0-0 and the Y selection line Y0-1, and the XMOS that is the X selection MOS is It is sandwiched between the X selection line X0-0 and the X selection line X0-1.
  • the X selection line X is connected to the gate electrode of the X selection MOS
  • the Y selection line Y is connected to the gate electrode of the Y selection MOS.
  • the X selection MOS and the Y selection MOS are double gate MOSs, and there are two gate electrodes for each MOS. Further, since the channel thickness of the MOS is thin, the MOS is turned on only when an on-voltage is applied to the two gate electrodes. For example, if the source voltage of the MOS is ⁇ 7.5, an example of the on voltage is 0V and an example of the off voltage is ⁇ 7.5V. In other cases, that is, when an on-voltage is applied to one of the gate electrodes and an off-voltage is applied to the other, or when an off-voltage is applied to the two gate electrodes, the MOS is turned off. The MOS is in a low resistance state when it is on, and is in a high resistance state when it is off.
  • the X selection MOS and the Y selection MOS are connected in series, and when both are turned on, a current flows from the write electrode WR through the memory chain MC to the source line SL. At this time, the memory cell MC in the memory chain MC is written.
  • the X selection lines X0-0, X0-1, Y selection lines Y0-0, Y0-1 are voltages at which the X selection MOS and the Y selection MOS are turned off, for example, If it is -7.5V, the X selection MOS and Y selection MOS of the memory chain MC0-0-0, 0-0-1, 0-1-0, 0-1-1 are turned off, that is, in a high resistance state. , The memory chain is not selected.
  • MC0-0-0 and MC0-0- when an ON voltage, for example, 0V, is applied to the X selection lines X0-0 and X0-1 and the Y selection line Y0-0. 1 X selection MOS is turned on.
  • an ON voltage for example, 0V
  • Y selection MOS for example, an on-voltage is applied to Y0-0 which is the gate electrode on one side, and an off-voltage is applied to Y0-1 of the other gate electrode. At this time, the Y selection MOS is turned off. Therefore, MC0-0-0 is not selected.
  • the ON voltage is applied to the Y selection lines Y0-1 as shown in # 3, the ON voltage is applied to the gate electrodes on both sides of the MC selections MC0-0-0 and MC0-1-0.
  • the Y selection MOS is turned on.
  • MC0-0-0 is selected because the X selection MOS is also on.
  • MC0-1-0 is in a non-selected state because the X selection MOS is off.
  • the Y selection line is driven by a local Y driver shown in FIG.
  • a signal for driving the local Y driver is driven by the intermediate Y driver.
  • the intermediate Y driver can convert the drive voltage. For example, at the time of writing, by switching the voltage between 0V and ⁇ 7.5V, a YMOS which is a MOS for performing Y selection is driven.
  • the control signal is also sent from the intermediate Y driver using the voltages of 0V and -7.5V for the local Y driver.
  • the intermediate Y driver receives a control signal from the global Y driver using voltages of 0V and 2.3V. In the intermediate Y driver, signal voltage conversion using a level shifter circuit is performed.
  • the local Y driver and the intermediate Y driver are preferably located in the memory array.
  • the global Y driver is preferably located outside the memory array. Further, it is desirable to increase the number of intermediate Y drivers as compared to the number of global Y drivers. By doing so, it is possible to reduce the power loss for transmitting the control signal, and the semiconductor memory device 101 with low power consumption can be realized.
  • FIG. 9 shows a partial cross-sectional view of the memory array 102.
  • FIG. 10 shows a partial plan view of the memory array 102.
  • the memory chain MC is arranged at 2F intervals.
  • the X selection destination is extended in the Y direction.
  • FIG. 9 shows a schematic cross-sectional view of the cross section D-D ′ of FIG. A part of the memory chain MC is shown.
  • a plurality of Z selection elements ZMOS and a phase change element PCM are formed in the semiconductor elements of FIGS.
  • the Z selection element ZMOS and the phase change element PCM include a silicon oxide film 906, a gate oxide film 903, a silicon channel 904, a phase change material 905, a Z selection transistor gate electrode 901, and an interlayer insulating film 902.
  • the Z selection element ZMOS is preferably a vertical GAA-NMOSFET (Gate All Around n-channel MOSFET). By using an NMOSFET having a higher current driving capability than a PMOSFET, the number of phase change elements PCM included in the memory chain MC can be increased, and a large-capacity semiconductor memory device 101 can be realized.
  • a PMOS can be used. Since the size of the transistor can be reduced by using the vertical MOSFET as compared with the case of using 4F2 and the planar MOS, the capacity can be increased. By using the GAA structure, it becomes possible to widen the gate width as compared with the case where a planar MOS is used, improving the driving power of the MOS, and increasing the number of memory cells CELL included in the phase change chain MC. , The capacity can be increased.
  • the PMOS the voltage applied to the gate electrode of the non-selected Z selection transistor can be made lower than when the NMOS is used. Therefore, the gate breakdown voltage of the Z selection MOS can be reduced, and the reliability of the semiconductor memory device 101 Has the effect of improving.
  • a chalcogenide material particularly a GeSbTe alloy (germanium-antimony-tellurium alloy) can be used.
  • the chalcogenide material can take two metastable states, an amorphous state (amorphous state) and a crystalline state, and the electric resistance values in the respective states are different. That is, the resistance is high in the case of amorphous and low resistance in the crystalline state.
  • the values “0” and “1” can be stored.
  • the amorphous case is ‘0’ and the crystalline state is ‘1’.
  • Rewriting from “0” to “1” is erasing, and rewriting from “1” to “0” is writing.
  • Rewriting is performed by causing a current to flow through the phase change element PCM and generating Joule heat.
  • the phase change element is crystallized by holding it at a temperature equal to or higher than the crystallization temperature for a certain period of time.
  • it is made amorphous (vitrified) by heating above the melting point and quenching rapidly.
  • the phase change element PCM can take a value of three or more.
  • the phase change element is described by taking a crystal-amorphous phase change as an example.
  • a crystal A-crystal B phase change can be used.
  • the crystal A and the crystal B are crystals having different crystal structures.
  • a case where a phase change element is used as a storage element will be described as an example.
  • ReRAM Spin injection type MRAM
  • a charge storage type memory for example, a floating gate type memory is used.
  • a charge trap memory can be used.
  • ReRAM ReRAM with a small rewrite current
  • the number of memory elements included in one memory chain MU can be increased, and there is an effect that a large-capacity semiconductor memory device 101 can be realized.
  • the semiconductor memory device 101 having a large write data rate can be realized by using the STT-MRAM having a high rewrite speed.
  • a phase change element is used as a memory element is described.
  • Writing and erasing are performed by generating Joule heat by supplying a write current to the phase change element PCM.
  • the write current is 40 uA, for example, and the erase current is 20 uA, for example. Note that it is logically possible to perform writing or erasing by generating Joule heat by passing a current through an adjacent Z selection MOS.
  • a write current for example, 40 uA flows through the selected memory chain MC. On the other hand, almost no current flows through the non-selected memory chain MC.
  • a highly reliable semiconductor memory device 101 can be realized by bundle erasing. Furthermore, when a plurality of memory chains are erased at once, it is possible to heat adjacent memory chains using heat generated from one memory chain, or to reduce heat escape. The semiconductor memory device 101 that can be erased at high speed can be realized. The reason why heat escape can be reduced is that the memory chain adjacent to a certain memory chain is heated to reduce the temperature difference between the memory chains, and the heat flux density is proportional to the temperature difference.
  • the heat flux between the chains is reduced. Furthermore, it is desirable to perform an erasing operation by flowing a current mainly through the Z selection MOS and generating heat by the Joule heat during bundle erasing. Even when current flows mainly through the Z selection element ZMOS, the phase change element has high resistance, and even when a high voltage is required to generate heat, the Z selection element ZMOS can generate heat to erase. The required voltage can be reduced, and more stable heat generation during erasing can be realized.
  • phase change element PCM In order to select the phase change element PCM, by turning off the Z selection element ZMOS of the same memory cell CELL, a current flows through the phase change element instead of the Z selection element.
  • the selected memory cell is a memory cell CELL including the Z selection MOSZ0-1 of the memory chain MC0-0-0.
  • the breakdown voltage between the gate and source of the Z selection MOS is, for example, 7.7V.
  • the Y selection line not shown in FIG. 11 is controlled, so that the Y selection MOS is turned on, and a write current, for example, 40 uA flows through the memory chain MC0-0-0.
  • the voltage of the Z selection line Z0-7 is set to 0V.
  • the Y selection line not shown in FIG. 11 is controlled, so that the Y selection MOS is turned on, and the erase current, for example, 20 uA is the memory chain MC0-0-0. It is desirable that the temperature of the phase change element heated by the Joule heat is lower than the temperature of the phase change element during writing.
  • a current is passed between the source and drain of the Z selection transistor ZMOS, and Joule heat is generated there (bundle erasure). That is, Joule heat is generated in the channel of the Z selection transistor, and this heat is transferred to the phase change element PCM to crystallize the phase change element PCM.
  • the gate-source voltage of the Z selection transistor ZTr is 4.5V.
  • the Z selection transistor ZTr is not completely turned on. As a result, Joule heat generated by the Z selection transistor ZTr can be increased for the same source-drain current.
  • the Z selection potential is controlled more finely for each layer than the write, and the gate voltage of the Z selection transistor is set using a potential of at least five levels or more. It is desirable to control. Compared with the case of FIG. 5, since the gate voltage is low, it is possible to control the gate voltage of five levels or more with power saving, and the power saving semiconductor memory device 101 can be realized.
  • Bundle erasing can erase the phase change elements of multiple memory cells at once. It is desirable to erase the entire memory chain simultaneously. This is because if only a part of the memory chain is to be erased, the memory cells adjacent to the erase region are likely to be mistakenly erased. Furthermore, it is desirable to erase a plurality of memory chains at once. This makes it possible to heat adjacent memory chains using heat generated from one memory chain or reduce thermal escape, reduce electrical energy required for erasing, and enable erasing at high speed.
  • the semiconductor memory device 101 can be realized. The reason why heat escape can be reduced is that the memory chain adjacent to a certain memory chain is heated to reduce the temperature difference between the memory chains, and the heat flux density is proportional to the temperature difference. This is because the heat flux between the chains is reduced.
  • the voltage of the selected bit lines RBL0-0 at the time of erasing is a positive voltage. For example, 2.7V.
  • the reason is that, for example, if 2.7 to 3.6 V is supplied as the power supply voltage VDD, 2.7 V which is the minimum voltage of the power supply voltage VDD is used for erasing, so that the selected bit line VBL at the time of erasing is used. Since the voltage applied to -S can be supplied without using a booster circuit, and the power loss in the booster circuit can be eliminated, the number of memory chains that can be simultaneously erased can be increased to 512, for example. It is. Thereby, the erasing speed can be improved to, for example, 400 MB / s.
  • the selected bit line RBL0-0 voltage at the time of reading is positive. For example, 1V.
  • a positive voltage By using a positive voltage, it becomes possible to supply power without using a booster circuit, and lead power consumption can be reduced. Thereby, a semiconductor memory device 601 with low power consumption can be provided.
  • the bit line potential at the time of erasing or reading is as low as 2.7 V or 1.0 V, the high-speed semiconductor memory device 101 can be realized.
  • the configuration of the local driver LDG will be described with reference to FIG.
  • the local driver LDG is composed of a plurality of sub-local drivers LD.
  • One of the sub-local drivers LD is shown in FIG.
  • the Y selection line Y0-0 which is one of the local Y selection lines, is generated by an AND signal of the intermediate Y main selection line mainY0 and the intermediate Y sub selection line subY0. That is, Y0-0 becomes 'H' when both mainY0 and subY0 become 'H', and Y0-0 becomes 'L' when mainY0 or subY0 becomes 'L'.
  • a part of the Y address signal is decoded by the global Y driver outside the memory array and sent to the sub-local driver.
  • Full decoding is performed by the sub-local driver LD, and the local Y selection line Y is driven.
  • the circuit area of the sublocal driver LD can be reduced as compared with the case of full decoding by the sublocal driver LD, and the chip area can be reduced.
  • MC (H) -8j-8k, MC (H) -8j- (8k + 7), MC (H)-(8j + 7) -8k, MC (H)-(8j + 7)-(8k + 7) are erased units. Assume that an area (bundle erase area) included in a rectangle having four sides is erased collectively.
  • H, j, and k are arbitrary integers. For example, areas included in a rectangle having four sides of MC0-0-0, MC0-0-7, MC0-7-0, and MC0-7-7 are erased collectively. The number of bits included in this bundle erase area is 512 bits.
  • FIG. 13 shows an example of the write bit for each write step.
  • a plurality of memory cells to be written in units of write are distributed and arranged in locations not adjacent to each other in the memory array.
  • FIG. 13 shows a change in the write target of the memory chain MC constituting one page (8 KB) surrounded by a dotted line.
  • a black circle is a light target, and a white circle is not a light target. It can be seen that a plurality of memory chains MC are simultaneously written and that adjacent bits are not simultaneously written. It is shown that MC0-0-0 and the like are written in write step 0 and the next MC0-0-1 is written in write step 1 which is the next 10 ns.
  • MC0-0-0 and MC0-0-1 are both examples in which “0” data is a bit to be written. Depending on the write data, only some of the above bits may be written. Needless to say.
  • One write step requires 10 ns, for example. It is desirable that the reset pulse application time is 8 ns and the time required for selecting the Y address is 2 ns. By shortening the write step to about 10 ns, the semiconductor memory device 101 having a high write data rate can be realized.
  • FIG. 14 shows the state of the mainY and subY signal lines when the write bit is selected. For example, it is shown that in order to write the memory chain MC0-0-0, it is only necessary to turn on mainY0, subY0, and 1. Also, in order to erase the bundle erase area including the memory chain MC0-0-0 (rectangular area with MC0-0-0, MC0-7-0, MC0-0-7, MC0-7-7 as four sides). Shows that mainY0 and subY0-7 may be turned on.
  • An OR circuit 1201 is provided for a circuit that drives the local Y selection line Y0-8.
  • the OR circuit 1201 is used to erase the memory chain MC between the group of local Y selection lines controlled by the intermediate main Y selection line mainY0 and the group of local Y selection lines controlled by the intermediate main Y selection line mainY1.
  • MainY0 for erasing the bundle erase area (rectangular area having MC0-0-0, MC0-7-0, MC0-0-7, MC0-7-7 as four sides) including the memory chain MC0-0-0 , And subY0-7 are turned on, Y0-0 to Y0-8 can be selected and bundle erasure can be performed.
  • FIG. 15 shows a circuit diagram of the local driver when the above-described OR circuit 1201 is not provided for comparison. Even if mainY0 and subY0-7 are turned on, only Y0-0 to Y0-7 can be selected, so MC0-0-7 and MC0-7-7 cannot be erased. For this reason, there is an area where data cannot be erased or written.
  • the OR circuit 1201 eliminates an area where data cannot be erased or written, and the capacity of the semiconductor memory device 101 can be increased.
  • NAND logic can be used instead of AND logic.
  • inverted values are input to the intermediate Y main selection line mainY and the intermediate Y sub selection line subY.
  • the Y selection line between the sub-local drivers can be driven using a signal generated by using an OR circuit for the signal of the adjacent sub-local driver.
  • the semiconductor memory device 101 of the present invention performs addressing with the local X selection line X and performs addressing and designation of “0” write data with the local Y selection line Y. In this way, it is possible to reduce the number of signal lines compared to a method in which addressing is performed by the local X selection line X and the local Y selection line Y and “0” write data is designated by the data line. Thus, the chip area of the semiconductor memory device 101 can be reduced.
  • FIG. 16 shows a semiconductor memory device 101 having a plurality of memory arrays 102.
  • the semiconductor memory device 101 is connected to the controller 1600 using the pad portion.
  • the X address is selected by the row decoder.
  • Such a storage device can be equipped with a plurality of (for example, N) semiconductor memory devices 101 each composed of one chip. These semiconductor memory devices are controlled by the control unit 1601 via the bus and the I / O unit 1602 of the controller 1600.
  • the controller 1600 is connected to a host device (not shown) via the I / O unit 1602.
  • the host device transmits data to be recorded and commands such as writing, reading, verifying, and erasing, and the controller 1600 controls the semiconductor memory device 101 in accordance with the command.
  • the controller 1600 can also perform control to invert the value “1” and the value “0” of the data received from the host device and record it in the semiconductor memory device 101. In this way, the number of memory cells whose state is substantially rewritten can be reduced. For example, it is assumed that in the erased state in which all the memory cells are “1”, the host device instructs to record “0” data in all. At this time, the controller 1600 inverts the value “1” and the value “0” of the data so that “1” corresponds to the recording state and “0” corresponds to the erased state in the memory cell. In this case, the substantial recording operation need not be performed.
  • control such that a relatively large value of “1” is sent to the semiconductor memory device 101 as compared with “0”.
  • This control is performed by counting the value of “1” and “0” of the data inside the controller 1600, and if the number of “0” is large, the data can be reversed and executed. It can be a control.
  • phase change element PCM The writing and erasing of the phase change element PCM will be described with reference to FIG.
  • Writing is performed by causing a reset pulse to flow through the phase change element PCM and generating Joule heat.
  • the phase change element PCM is heated to the melting point or more by the reset pulse, and is brought into an amorphous state by being rapidly cooled.
  • the reset pulse application time is, for example, 8 ns.
  • Erasing is performed by causing a set pulse to flow through the ZMOS, which is a Z selection MOS, to generate Joule heat.
  • the phase change element PCM is held at a temperature equal to or higher than the crystallization temperature for a certain time, for example, 500 ns by the set pulse.
  • phase change element PCM enters a crystalline state.
  • the crystalline state has a lower resistance than the amorphous state, and by utilizing the difference in resistance, information can be recorded by setting the low resistance state to '1' and the high resistance state
  • This control method is particularly suitable for a memory in which the amount of write current required for bit rewriting is large and the write data rate is limited by the amount of write current.
  • the write current amount required for rewriting bits is small, and the write data rate is not limited by the write current amount.
  • this control method is suitable for phase change memory, STT-RAM, and ReRAM because the write data rate is limited by the write current amount.
  • FIG. 18 is a flowchart showing an example of an operation sequence according to the second embodiment of the present invention.
  • a write error In the semiconductor memory device 101 using a memory element in which a write error may occur, In a page write that writes for one page, first, after a write operation for one page is attempted, the data in the area where the write operation is attempted is read to check whether the write is successful. If it has failed, it is desirable to perform the write process again. By doing so, a write error may occur, but a memory element that can be developed in a short time can be used, and the development of the semiconductor memory device 101 in a short period can be realized.
  • the first write operation attempt is the first write
  • the data read of the area where the write operation is attempted is the verify read
  • the rewrite when the write fails is the verify write.
  • the phase change memory performs a write operation by heating above the melting point as shown in FIG.
  • the temperature reached will vary depending on the characteristics of the phase change element, for example, the film thickness.
  • one phase change element PCM is heated to an appropriate temperature, but in another phase change element PCM, the phase change material has a thin film thickness, greatly exceeds the melting point, and the temperature at which the memory cell CELL is destroyed.
  • the film thickness of the phase change material is so thick that the melting point is not reached and the writing may fail.
  • the variation in film thickness is particularly thick or thin at a specific location or a specific page of the chip.
  • the ratio of the change element PCM further increases.
  • the verify read is performed, and when there is a write error, the number of write error bits is calculated using a population counter. If the number of error bits is less than the maximum number of simultaneous write bits, writing is performed in one write step. If the number of error bits is greater than the maximum number of simultaneous write bits, write is performed in multiple write steps.
  • one page is written for the first time (S1801).
  • the number of times of switching between writing and reading can be reduced, the switching time can be shortened, and the write data rate can be increased.
  • this method is effective because the switching time between writing and reading is long. is there.
  • the verify write is performed after the initial write of a part of the page, and the initial write is possible for the remaining part.
  • the first write ⁇ verify read ⁇ verify write is performed for X address 0
  • the first write ⁇ verify read ⁇ verify write is performed for X address 1, thereby reducing the number of X address selections.
  • the X address selection time can be shortened and the semiconductor memory device 101 having a high write data rate can be realized.
  • verify read is performed (S1802), and it is determined whether there is a write error by comparing the read value with the value to be written stored in the register (S1803). If there is an error, the number of error bits is counted by the population counter (S1804). At this time, it is preferable to count the number of error bits included in the simultaneously writable area. For example, in the sub-local driver LD of FIG. 12, for example, MC0-0-4 and MC0-0-10 cannot be written at the same time due to the restriction of the write bit designation by the predecode method. Therefore, these bits should be counted separately for the number of error bits.
  • This control method is not a memory that can not expect an almost constant write success rate especially in writing, for example, a charge storage type that can gradually inject charges, but the temperature drops to near room temperature after writing, and at the time of rewriting It is suitable for phase change type memory that requires heating from about room temperature again, memory that uses magnetization reversal, filament formation that causes a large resistance change due to slight movement of atoms, and extinction type memory. That is, it is suitable for phase change memory, STT-RAM, and ReRAM. Furthermore, this control method is particularly suitable for a memory in which the amount of write current required for rewriting bits is large and the write data rate is limited by the amount of write current.
  • the write current amount required for rewriting bits is small, and the write data rate is not limited by the write current amount.
  • this control method is suitable for phase change memory, STT-RAM, and ReRAM because the write data rate is limited by the write current amount.
  • the semiconductor memory device 101 with a high write data rate can be realized by shortening the time required for the verify write while limiting the peak current to a certain value or less.
  • a plurality of memory cells having the first storage state and the second storage state, and a predetermined number of memory cells as one write (or set) unit The verification of stored data after data writing is performed, and verify write is assumed when there is an error.
  • a range having a counter circuit that counts the number of first storage states that are verified and written in units of verify writing, and the number of first storage states is less than or equal to a predetermined number based on the calculation result of the counter circuit Thus, one or a plurality of write units are selected, and data of the selected one or a plurality of verify write units are collectively written.
  • FIG. 19 is a flowchart showing an operation sequence example according to the third embodiment of the present invention.
  • a case where a ReRAM capable of direct overwriting is used will be described as an example.
  • a ReRAM that can be directly overwritten when a bit is written or erased, a value recorded in a peripheral bit hardly changes.
  • an external controller that controls the semiconductor memory device 101 such as an SSD controller, can issue a write command to the semiconductor memory device 101 without performing an erase command. It is desirable that the value “0” or “1” recorded in the semiconductor memory device 101 can be rewritten to either “0” or “1” by an external controller. This eliminates the need for the external controller to issue an erasure command, thereby realizing a storage system capable of high-speed data write processing.
  • an erase operation for rewriting data from “0” to “1” and a write operation for rewriting data from “1” to “0” are performed.
  • the data of the page to be written is first read, the bit that needs to be written or erased is checked, and only that bit is written or erased. It is desirable. By doing so, the number of bits to be written or erased can be reduced, and the semiconductor memory device 101 having a high write data rate can be realized.
  • page read is performed first.
  • the population counter compares the read data with the data to be written, and from “1” to “0”.
  • the number of bits to be written is counted, and as many sub-write drivers WD as possible are driven in a range where the number of bits is equal to or less than the maximum number of simultaneous write bits.
  • the same control can be performed for the erase operation.
  • the population counter compares the read data with the data to be written, counts the number of bits to be erased from “0” to “1”, and the number of bits is within the maximum number of simultaneous erase bits. To drive as many sub-erasure drivers WD as possible.
  • page read is performed (S1901).
  • the number of bits required for writing is counted using a population counter (S1902), and writing is performed by driving as many sub-write drivers WD as possible within the range allowed in view of the maximum peak current (S208). ).
  • erasure is performed (S1903), and the remaining writing and erasure of the page are performed (S1904).
  • the data can be held in the register by ternary storage without "0" write, "1" erase, and "2" value change. In this way, the data size of the register can be reduced to 3/4, compared to the case where two registers including a register for holding a read value and a binary register for holding a value to be written are provided.
  • the present invention is not limited to the above-described embodiment, and includes various modifications.
  • a part of the configuration of one embodiment can be replaced with the configuration of another embodiment, and the configuration of another embodiment can be added to the configuration of one embodiment.

Landscapes

  • Chemical & Material Sciences (AREA)
  • Crystallography & Structural Chemistry (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Read Only Memory (AREA)

Abstract

 半導体記録装置において,ページライト時に'0'ライトを行うビット数が少ない場合においても,'0'ライトを行うビット数が多い場合と同程度のライト時間を要する。 '0'ビットの数をカウントするポピュレーションカウンタを設ける。また,ライトドライバを複数のサブライトドライバに分割する。その上で,'0'ライトビット数が最大同時ライトビット数以下になる範囲で最大限多くのサブライトドライバを駆動する。

Description

半導体記憶装置およびそれを用いたストレージ装置
 本発明は,半導体記憶装置及びそれを用いたストレージ装置に関し,特に電気的に書き換え可能な不揮発性メモリ,例えば相変化メモリ,ReRAM(抵抗変化型メモリ),STT-MRAM(スピン注入磁化反転型抵抗変化メモリ)に適用して有効な技術に関するものである。
 本技術分野の背景技術として、特開2010-182373号公報(特許文献1)がある。この公報には,課題として「トータルの書き込み電流量を減らしながらプログラムスループットを向上する。」とあり,さらに,解決手段として「メモリセルの駆動回路は、Nビットに対応するメモリセルを一つの書き込みセル単位としてデータのベリファイ書き込み動作のサイクルを、全セルが検証パスとなるまで繰り返す。このとき、検証にパスしていないメモリセルを動作対象として、複数のベリファイ書き込み動作を同時に実行する。」と記載されている(要約参照)。さらに「このような制御が可能なことは、図4に示すような制御性の高さをもつメモリセルでは、検証時におけるパスの確率(プログラム成功率)をほぼ一定とすることができるからである。」と記載されている(0061項参照)。
 また,特開2007-188552号公報(特許文献2)がある。この公報には,課題として「一括ベリファイ処理の所要時間を短縮化でき、バッファ書き込みを高速化できる半導体記憶装置を提供する。」とあり,さらに,解決手段として,「アドレス領域内のメモリセルに書き込み処理を実行することと、複数アドレスのベリファイ動作を一括して行なう一括ベリファイ処理を実行することと、一括ベリファイ処理と書き込み処理とを繰り返すこととを行なう半導体記憶装置であって、各アドレスに未書き込みメモリセルを含むか否かを検出する検出手段を備え、一括ベリファイ処理の少なくとも一部において、1回以上前のベリファイ処理で未書き込みメモリセルを含まないと判定されたアドレスの少なくとも一部を除外してベリファイ処理を実行することを特徴とする。」ことが記載されている。
 さらに,相変化メモリを不揮発性メモリとして用い,複数ビットをチェーン状に直列接続することで大容量の半導体記憶装置を作製する技術が知られている(例えば,特許文献3を参照)。この公報には,「ダイオードとトランジスタとを直列接続した半導体メモリにおいて、ダイオードからトランジスタにキャリアが入ることで、トランジスタの特性が劣化する課題がある。」と記載されている(要約参照)。また,段落0044には,「このようなトランジスタと相変化素子が並列接続されたメモリセルが直列に接続されたセル、すなわちチェインセルでは、例えば以下のような動作が行われる」と記載されている。
特開2010-182373号公報 特開2007-188552号公報 特開2012-69830号公報
 発明者らが抵抗変化型メモリ,特に相変化メモリに関して詳細に検討したところ,下記の知見が得られた。特許文献1に記載されたNOR型フラッシュメモリなどの電荷の逐次的注入が可能な電荷蓄積型と異なり,相変化メモリのプログラム成功率はセル毎の特性ばらつきやセルの物理的な配置毎に異なる。従って特許文献1に記載された,ほぼ一定のプログラム成功率を前提とした制御方法を用いることが困難である。
 さらに,発明者らが半導体記憶装置に格納されるデータを詳細に検討したところ,下記の知見が得られた。例えば,サーバーからファイバチャネルにより構成されるストレージエリアネットワークを経由し,ストレージコントローラ装置に送られ,さらにSAS(Serial Attached SCSI)などを経由してSSD(Solid State Drive)に送られる。SSDはSSDコントローラと前記半導体記憶装置を有する。データはまず,SSDコントローラに送られ,次に半導体記憶装置に送られ,格納される。ここで,サーバーが送信するデータサイズは,セクターサイズの整数倍である。セクターサイズは512B,もしくは4KBである。発明者の分析によるとサーバーが使用するデータサイズはセクターサイズ未満であることが多く,その場合,サーバーは必要なデータに,’0’もしくは’1’が連続するデータを追加するパディング処理を行い,セクターサイズ,もしくはセクターサイズの整数倍のデータに変換してから,送信する。そのため,ストレージコントローラ装置,もしくはSSDコントローラには’0’,もしくは’1’の連続した部分を有するデータが送られることがある。このとき,ストレージコントローラ装置,もしくはSSDコントローラ装置において,適切なデータ変換処理を行うことにより,半導体記憶装置に連続した’1’のデータを多く書き込むことが可能になる。一方,半導体記憶装置の消去状態の値を’1’とし,ライト後の値を’0’とすると,消去後の記憶素子の値は’1’であるから,’0’を書き込むよう指示されたときのみ,半導体記憶装置は記憶素子への’0’ライトを行えばよい。ところが,’1’の値が多く書き込まれたときと,’0’の値が多く書き込まれたときのライト速度は,前者の方が実際にメモリセルにライトするビットの数が少なく,ライト電流の合計が少ないにも関わらず同じであった。なお,ライトにおいて,’1’の値が多く書き込まれたときは,’0’にライトするビット数が少なく,’0’の値が多く書き込まれた場合に比べて,ライトにおける消費電力量は少ない。
 すなわち,半導体記憶装置に’1’の値を多くライトするよう制御が可能であるにも関わらず,’1’の値が多く書き込まれる場合においても,’0’の値が多く書き込まれる場合と比べて,ほぼ同程度のライト時間を要する課題がある。
 上記課題を解決するために、本願は上記課題を解決する手段を複数含んでいるが、その一例を挙げるならば、電気抵抗の違いにより,’0’と’1’を記憶する複数のメモリセルと,所定数のメモリセルを一つのライト単位として,ライト単位にライトされる’0’ビットの数をカウントするカウンタ回路を有し,’0’ビットの数が所定数以下になる範囲でライト単位が1個,もしくは,複数個,選択され,データが一括してライトされることを特徴とする半導体記憶装置である。
 本発明の他の側面は、複数個のメモリセルからなるメモリアレイを備える半導体記憶装置であって、所定数(自然数である定数)のメモリセルに対して、データの書き込み(ライト)、消去、および、ベリファイライトのうち少なくとも一つをおこなう、サブライトドライバを複数備える。データの書き込み(ライト)、消去、ベリファイライト等は、所定の個数のメモリセルの状態を変更する点で同様の動作であるため,本明細書では簡略のため,メモリセルの状態の設定という意味で,これらを総称して「セット」ということがある。
 メモリセルは、少なくとも2つの状態を可逆的に変更可能であり、セット動作により所定の個数のメモリセルの其々の状態を維持または変更することにより,記憶するデータを維持または変更することができる。任意のメモリセルの状態を制御するために、典型的な例としては、メモリセルの選択トランジスタのゲート電極に接続されたローカル選択線を,メモリアレイ内のドライバにより駆動するものがあるが,これに限るものではない。
 2つの状態は、例えばデータの”1”と”0”に相当する。メモリセルの例えば高抵抗の状態と低抵抗の状態を、データの”1”と”0”のいずれに対応させるかは任意である。また、データの”1”と”0”を記録状態と消去状態おいずれに対応させるかも任意である。また、本発明は”1”と”0”だけでなく,3値以上のいわゆる多値を格納可能なメモリセルにも同様に適用可能である。
 典型的なメモリセルの例としては、材料の相変化、スピンの状態変化等のミクロの状態変化により、変化する抵抗値によって情報を蓄える構成のものがある。たとえば、相変化メモリ、ReRAM、スピン注入磁化反転型メモリ等と称されるものである。
 データのセットに際しては、サブライトドライバ毎に、サブライトドライバがセットする所定数(通常は自然数である定数だが,サブライトドライバ毎に異なっていてもよい)のメモリセルのうちで、状態が変更されるメモリセルの数(自然数である変数)をカウントする。状態が変更されるメモリセルとは,記憶されるデータの観点からは”0”が”1”に変更されるもの、あるいは、”1”が”0”に変更されるもの等をいう。また、物理的な観点からは,メモリセルの抵抗値が変化すること等をいう。
 次に、状態が変更されるメモリセルの数の合計が所定値(自然数である定数)を超えないように、サブライトドライバを選択する。選択されるサブライトドライバは一つでも複数でもよい。こうして、選択したサブライトドライバにより、同時にセットを行う。ここで同時にとは、同じ制御信号により、選択したサブライトドライバを制御することを含む。また、同時に動作させるサブライトドライバ数に消費電力などから制限がある場合は、選択するサブライトドライバ数に上限(自然数である定数)を設けてもよい。
 本発明の他の一側面は,電気抵抗の違いにより,第1の記憶状態と第2の記憶状態を設定可能な複数のメモリセルと,複数のメモリセルの一部である所定数のメモリセルを一つのライト単位として,ライト単位のメモリセルに書き込み(ライト)、消去、およびベリファイライトの少なくとも一つ(以下「セット」という)を行う際に,複数のライト単位において,記憶状態が変更される個数の数を計算するカウンタ回路を有する。この,カウンタ回路の計算結果を基に,個数の数が所定数以下になる範囲でライト単位が1個,もしくは,複数個,選択され,選択された1個,もしくは,複数個のライト単位のデータが一括してセットされる。
 本発明のさらに他の一側面は,電気抵抗の違いにより,第1の記憶状態と第2の記憶状態を有する複数のメモリセルと,所定数のメモリセルを一つの消去単位として,消去単位において,消去される第1の記憶状態の数をカウントするカウンタ回路を有し,カウンタ回路の計算結果を基に,第1の記憶状態の数が所定数以下になる範囲で消去単位が1個,もしくは,複数個,選択され,選択された1個,もしくは,複数個の消去単位のデータが一括して消去されることを特徴とする半導体記憶装置である。
 なお,本明細書中で第1の記憶状態と第2の記憶状態といった場合には、第3以上の記憶状態を追加することも可能である。
 本発明のさらに他の一側面は,複数の記憶状態を保持可能な,複数のメモリセルと,複数のメモリセルのうち所定数のメモリセルと接続され,所定数のメモリセルの記憶状態を変更可能な複数のサブライトドライバと,サブライトドライバにデータを入力するための入力経路と,カウンタを有する。カウンタは,複数のサブライトドライバが,入力されるデータに基づいて,所定数のメモリセルのうち記憶状態を変更すべき個数をカウントする。そして,カウンタのカウント結果に基づいて,複数のサブライトドライバの動作タイミングを制御する。
 具体的な構成の一例では,カウンタは,複数のサブライトドライバ毎に,順次記憶状態を変更すべきメモリセルの個数をカウントし,カウント結果を加算していき,加算されたカウント結果が,n番目(nは自然数)のサブライトドライバで第1の所定閾値を超えた場合には,n-1番目までのサブライトドライバを一括して動作させる。
 好ましい態様では,加算されたカウント結果が,n番目(nは自然数)のサブライトドライバで第1の所定閾値を超えない場合であっても,nが第2の所定閾値に達した場合には,n番目までのサブライトドライバを一括して動作させる。
 さらに好ましい態様では,前記n-1番目までのサブライトドライバを一括して動作させている間に,n番目以降の前記サブライトドライバについてのカウントを並行して行う。並行してカウントするドライバは必ずしもn番目のドライバである必要はなく,n番目のドライバのカウントが既に終わっているならば,n+1番目以降のドライバでもよい。
 本発明の他の一側面は,半導体記憶装置と,半導体記憶装置を制御するコントローラを有するストレージ装置である。ここで,半導体記憶装置は,電気抵抗の違いにより複数の記憶状態を保持可能な,複数のメモリセルと,複数のメモリセルのうち所定数のメモリセルと接続され,所定数のメモリセルの記憶状態を変更可能な複数のサブライトドライバと,サブライトドライバにデータを入力するためにコントローラとの通信を行うインタフェースと,複数のサブライトドライバが,入力されるデータに基づいて,所定数のメモリセルのうち記憶状態を変更すべき個数をカウントする,カウンタを有する。また,コントローラは,半導体記憶装置および上位装置と通信を行うためのI/O部と,半導体記憶装置へのデータの書き込み,消去,およびベリファイの少なくとも一つを制御する制御部を有し,カウンタのカウント結果に基づいて,複数のサブライトドライバの動作タイミングを制御する。
 好ましい態様では,コントローラは,上位装置から受信したデータの第1の値と第2の値を反転させて,半導体記憶装置のメモリセルに反映する制御を行うことができる。
 更に,上記のストレージ装置の具体的な動作の例としては,以下のものがある。
 データの書き込みにおいて,サブライトドライバは,全て第1の値に設定して消去済の所定数のメモリセルのうち,所定のメモリセルの状態を第1の値から第2の値に変更するデータ書き込みを行うものとし,カウンタは,第1の値から第2の値に変更するメモリセルの個数をカウントして,サブライトドライバの動作タイミングを制御する。
 データ書き込み後に記憶データの検証を行い,誤りがある場合のベリファイライトにおいて,サブライトドライバは,第1の値から第2の値に変更すべきメモリセルのうち,正しく第2の値に変更されていないメモリセルを,再度第2の値に変更するベリファイライトを行うものとし,カウンタは,正しく第2の値に変更されていないメモリセルの個数をカウントして,サブライトドライバの動作タイミングを制御する。
 データの書き込みまたは消去において,サブライトドライバは,入力されたデータに基づいて,所定のメモリセルの状態を変更するデータ書き込みまたは消去を行うものとし,カウンタは,現在のメモリセルの状態に基づいたデータと,入力されたデータを比較し,入力されたデータに基づいてデータ書き込みまたは消去を行うために,第1の値から第2の値に変更するべきメモリセルの個数をカウントして,サブライトドライバの動作タイミングを制御する。
 ライトデータレートが高速で,ピーク消費電流量が低い半導体記憶装置を実現することができる。
 上記した以外の課題、構成、及び効果は、以下の実施形態の説明により明らかにされる。
本発明の実施の形態1による半導体記憶装置101の構成例を示すブロック図である。 本発明の実施の形態1によるライトシーケンス例を示す流れ図である。 本発明の実施の形態1によるサブライトドライバ番号とライト順の例を示す表図である。 本発明の実施の形態1によるポピュレーションカウンタとサブライトドライバの動作シーケンス例を示すシーケンス図である。 本発明の実施の形態1による半導体記憶装置101の構成例を示すブロック図である。 本発明の実施の形態1によるメモリアレイの構成例を示す平面図である。 本発明の実施の形態1によるメモリアレイの一部の回路構成例を示す回路図である。 本発明の実施の形態1によるX,Y選択線の状態とメモリチェーンの選択状態例を示す表図である。 本発明の実施の形態1の例によるメモリアレイの一部の断面模式図である。 本発明の実施の形態1の例によるメモリアレイの一部の平面模式図である。 本発明の実施の形態1による動作シーケンス例を示すグラフ図である。 本発明の実施の形態1による回路構成例を示す回路図である。 本発明の実施の形態1によるライトシーケンス例を示す模式図である。 本発明の実施の形態1による動作とY選択線のオン,オフ状態例を示す表図である。 本発明の実施の形態1と比較するための回路構成例を示す回路図である。 本発明の実施の形態1による半導体記憶装置101の構成例を示すブロック図である。 本発明の実施の形態1による記憶素子の動作例を示すグラフ図である。 本発明の実施の形態2による動作シーケンス例を示す流れ図である。 本発明の実施の形態3による動作シーケンス例を示す流れ図である。
 以下、実施例を図面を用いて説明する。ただし、本発明は以下に示す実施の形態の記載内容に限定して解釈されるものではない。本発明の思想ないし趣旨から逸脱しない範囲で、その具体的構成を変更し得ることは当業者であれば容易に理解される。
 以下に説明する発明の構成において、同一部分又は同様な機能を有する部分には同一の符号を異なる図面間で共通して用い、重複する説明は省略することがある。
 本明細書等における「第1」、「第2」、「第3」などの表記は、構成要素を識別するために付するものであり、必ずしも、数または順序を限定するものではない。また、構成要素の識別のための番号は文脈毎に用いられ、一つの文脈で用いた番号が、他の文脈で必ずしも同一の構成を示すとは限らない。また、ある番号で識別された構成要素が、他の番号で識別された構成要素の機能を兼ねることを妨げるものではない。
 図面等において示す各構成の位置、大きさ、形状、範囲などは、発明の理解を容易にするため、実際の位置、大きさ、形状、範囲などを表していない場合がある。このため、本発明は、必ずしも、図面等に開示された位置、大きさ、形状、範囲などに限定されない。
 本実施例では、ポピュレーションカウンタ103を有する半導体記憶装置101の例を説明する。
 図1は本実施例による半導体記憶装置101の構成例を示すブロック図である。
 半導体記憶装置101は,’0’もしくは’1’のデータを送られ,その値を保持する。’2’や’3’を送ることで多値制御されることも可能である。多値制御の場合,データ転送速度が向上する利点がある。
 ここで,半導体記憶装置101に’1’の値を’0’に比べて相対的に多く送るようにする制御が可能である。もちろん,半導体記憶装置101の中で受信したデータの’1’の値と’0’の値を反転させて,保持することが可能であることは言うまでもない。この場合,半導体記憶装置101を制御する外部制御装置の構成を簡易にすることができる可能性がある利点がある。さらに,値を反転するかを,半導体記憶装置101の中の構成レジスタを書き換えることで制御することもできる。この場合,半導体記憶装置101を制御する外部制御装置の構成に冗長度があり,より多くの制御装置に短時間で対応させることが可能である利点がある。
 半導体記憶装置101が消去動作とライト動作を持つ場合を例にして,以下述べる。消去動作はブロック単位で行い,ブロック中に含まれるすべてのビットの値を’1’にする。一方,ライト動作はブロックより小さいページ単位で行い,ページ中に含まれるビットの値を書き込むデータに応じて’0’にすることがある。
 半導体記憶装置101が消費可能なピーク電流は一定量以下に制限される必要がある。例えばSSDに用いることを想定すると,SSD内の半導体記憶装置101用の電源装置は,半導体記憶装置101のデータシートに記載された最大ピーク電流量を考慮して設計する必要がある。もし,データシートに記載した最大ピーク電流量以上の電流を半導体記憶装置101が消費すると,電源電圧が低下し,半導体記憶装置101だけではなく,SSDや,SSDが複数搭載されたストレージステムの動作不良を引き起こす可能性がある。
 ビットの書き換えに必要な電流量の大きいメモリ,例えば,相変化メモリやReRAM,STT-RAMでは半導体記憶装置101の消費する電流の多くをビットの書き換え電流が消費している。なお,詳細に述べると,半導体記憶装置101で電源電圧の昇圧や降圧を行っているため,電流量の観点だけでなく,電力や昇圧ロスを含めた観点で検討する必要がある。例えば,ビットの書き換えに要する電流量を1ビットあたり40uA(マイクロアンペア)とすると,32ビット同時にライトすることを考えると消費電流量の合計は1280uAになる。昇圧効率を10%とすると電源電流の消費量は12.8mAになる。チップのピーク消費電流量を25mAとすると,チップ全体で消費する電流量の51%をビットの書き換えに要していることになる。
 前述したとおり,半導体記憶装置101に’1’の値を’0’に比べて相対的に多く送るようにする制御が可能である。このときに,’1’の値が多い領域では,ライト動作において,ライト電流を流し,’1’から’0’へのビット反転を行うビットの数が少ない特徴がある。
 そこで,本実施例の半導体記憶装置101は,レジスタ107に格納されたメモリアレイ102に書き込むデータの値をサブライトドライバWD0に送ると同時に,同じデータをポピュレーションカウンタ103に送る。ポピュレーションカウンタ103でデータに含まれる’1’の数を集計するポピュレーションカウントを行い,その結果を基に’1’から’0’へのビット反転を行うビットの数を計算する。ビット反転を行うビットの数が所定数より少ない場合には,さらに次のサブライトドライバWD1にレジスタからデータを送り,同時に同じデータをポピュレーションカウンタ103に送る。そして,ポピュレーションカウンタで’1’から’0’へのビット反転を行うビットの数を計算する。このようにライト時にビット反転を行うビット数を一定数以下に制限し,その制限の中で複数のサブライトドライバWDを最大限同時に駆動し,同時にライトするビットの数を増やす。この構成により,ライトデータレートを向上させることが可能である。
 ポピュレーションカウンタ103はデータに含まれる’1’のビット数をカウントするポピュレーションカウント(ハミングウェイトと記載されることもある)の処理を行う制御部分である。例えば,データが115,すなわち2進数で01110011の場合,このデータの’1’カウント数は5になる。
 半導体記憶装置101にライトするときには,ホストからライトコマンドとライトするデータを半導体記憶装置101に送る。半導体記憶装置101はそのデータをI/O部105を経由して受け取り,レジスタ107に格納する。
 レジスタ107に格納されたデータはデータバス108を経由して,ポピュレーションカウンタ103とライトドライバグループWDGにそれぞれ送られる。ライトドライバグループWDGは複数のサブライトドライバWDからなる。ポピュレーションカウンタは個々のサブライトドライバを活性化させる信号線WD_ENを有する。
 図2を用いて,本実施例の半導体記憶装置101のライトシーケンスを説明する。
 ページ0(ページ構成は後に図5で説明する)にライトする場合を例として説明する。ページ0の領域に接続されたサブライトドライバWDの個数は256個とし,このうち,最大4個,最小1個のサブライトドライバWDを同時に駆動するとする。すなわち,最大同時駆動サブライトドライバ数は4である。1個のサブライトドライバは最大で同時に32ビットのライトが可能であるとする。また,半導体記憶装置101のピーク電流を一定以下に抑えるために,同時にライト可能なビット数が32個以下であるとする。すなわち,最大同時ライト可能ビット数は32。また,ページサイズを8KB,ブロックサイズを128KBとする。ページサイズを2の倍数にするのではなく,ECCや信頼性情報,論理アドレスを格納することが可能な予備領域を付加し,例えば9KBにすることも可能である。この場合,SSDコントローラが半導体記憶装置101にアクセスする回数を低減でき,高速なSSDを提供することが可能である効果がある。
 図2で,ライトシーケンスとしてまず,サブライトドライバWD数を保持する変数nの値を0にし,ライトビット数Sを保持する変数Sの値を0に初期化する(S201)。次にレジスタ107に格納されたデータの冒頭32ビットをポピュレーションカウンタ103とサブライトドライバWD0に送る(S202)。この値が3,346,497,239,すなわち,2進数で11000111011101110111111011010111であるとすると,この32ビットのデータ中には’1’ビットが23個含まれている。データ幅は32ビットであるため,’0’ビットの数は32-23=9個であることがわかる。ポピュレーションカウンタはデータ中の’0’ビットの数をカウントし,その結果をSに加算する(S203)。この時点でSの値は9になる。さらに,Sの値が最大同時ライト可能ビット数である32より小さいかを判定する(S204)。小さい場合は,さらに他のサブライトドライバを駆動できる可能性があるため,S205に進む。次に,サブライトドライバ番号を確認し,最大同時駆動サブライトドライバ数(図2の例では4)未満であるかを確認する(S205)。もし,最大同時駆動サブライトドライバ数未満であれば,S206に進む。さらに,サブライトドライバ番号nに1を加算し,次のサブライトドライバの処理の準備を行う(S206)。
 このようにしてポピュレーションカウンタ103を利用して,同時に駆動できるサブライトドライバWD個数の調査を行う。
 次に,ポピュレーションカウンタ103は同時に駆動可能なサブライトドライバWDに対して,そのサブライトドライバWDを活性化させるための信号WD_ENを送信する(S207)。この例ではサブライトドライバWD0,WD1,WD2を活性化させるとする。各サブライトドライバWDは活性化信号WD_ENを受け取ることで同時にライトを行う(S208)。ビットあたりのライト時間を10ns(ナノ秒)と仮定する。この場合,ページの冒頭の96ビットのライト電流印加時間の合計は10nsである。このようにして,サブライトドライバWD0~2に含まれる’0’ビットのライトが行われる。この例では23ビットについて,’1’の値が記録されたビットを’0’に書き換えたとする。最大同時ライト可能ビット数は32であり,その数以下に制御できていることがわかる。
 さらに,同様にしてサブライトドライバWD n以降,すなわち,WD3以降のライトを行う(S209)。このようにして,データサイズ8KBのページに関して,ライトを行う。
 従来の制御方式とライト電流印加時間を比較する。従来の制御方式ではWD0,1,2と逐次的に駆動するため,ページの冒頭の96ビットのライト電流印加時間の合計が30nsであった。一方,本制御方式を用いることによりライト電流印加時間を例えば1/3に短縮できていることがわかる。すなわち,ライトデータレートが向上していることがわかる。
 図3を用いてサブライトドライバWDの番号と,そのサブライトドライバWDが同時にライト可能な32ビットのデータの中の’1’ビットの数,’0’ビットの数の内訳,さらにポピュレーションカウンタ103が決定したライト順を説明する。
 サブライトドライバWD0,1,2はライト順が1であり,同時にライトされることがわかる。WD0~2に含まれる’0’ビットの数の合計は23個であり,最大同時ライトビット数32以下であるため,同時にライト可能である。一方,WD0~3に含まれる’0’ビットの数の合計は38個になり,最大同時ライトビット数32を上回るため,同時にライトができない。そのため,WD0~2のライトが完了した後に,WD3のライトを行う。
 次に,WD3に含まれる’0’ビットの数は15個で,最大同時ライトビット数32以下だが,次のWD4に含まれる’0’ビット数19個との合計は34個になり,最大同時ライトビット数32を上回る。このため,WD3とWD4は同時にライトができず,ライト順2では,WD3のみのライトとなる。WD4以降も同様に処理し、1ページ分のデータをライトする。
 以上のように,カウンタ回路の機能により,同時にセットされるメモリセルの数や,同時に駆動されるサブライトドライバWDの数を制御することにより,装置のピーク電流を一定値以下に制御することができる。
 図4を用いて,図3の例における,ポピュレーションカウンタ103の処理とサブライトドライバWDによるライト処理の順序について説明する。水平方向は時間軸であり、四角形で囲まれた部分が、ポピュレーションカウンタ103の処理とサブライトドライバWDによるライト処理を示し、四角形の水平方向の辺の長さは処理時間を表す。図中Tcはポピュレーションカウンタ103の処理時間を、TdはサブライトドライバWDによるライト時間(ドライバが活性化している時間)を示している。
 ポピュレーションカウンタ103は8KBのページデータを先頭から4Bずつのデータ片に分けて逐次的に処理する。1つのデータ片401のポピュレーションカウンタ処理に要する時間は例えば2.5nsである。下記の(1)式を満たすようにポピュレーションカウンタ処理時間を定めて設計することにより,ポピュレーションカウンタ処理時間を最初のライト1回分の処理を除き,隠ぺいすることが可能になる。これにより,ライトデータレートの高速な半導体記憶装置101を実現することができる。
ライト時間 > ポピュレーションカウンタ処理時間×最大同時駆動サブライトドライバ数                        (1)
 なお,ライト時間だけでなく,消去時間やベリファイライト時間でも同じ関係が成り立つ。
 ポピュレーションカウンタ103はデータ片401-0,1,2,3を処理することで,サブライトドライバWD0,1,2は同時に駆動可能だが,WD0,1,2,3を同時に駆動できないと判定する。そこで,ポピュレーションカウンタはWD0,1,2を活性化させ,ライト動作を行う。WD0,1,2のライト動作が行われている間にポピュレーションカウンタ103は並列して,次のデータ401-4の処理を行う。この結果,ポピュレーションカウンタ103はWD3を活性化させる。次に,WD3のライト動作が行われている間にポピュレーションカウンタ103は,次のデータ401-5,6,7の処理を行う。
 上記のようにポピュレーションカウンタ103による処理とサブライトドライバWDによるライト処理を同時に行うことにより,ポピュレーションカウンタによる処理時間を隠ぺいすることが可能になり,ライトデータレートを向上させることが可能である。
 次に,さらに詳細な本提案の半導体記憶装置101について示す。
 図5を用いてサブライトドライバWDとメモリセルの物理的な位置関係について説明する。
 メモリアレイ102は128Gb(ギガビット)のメモリセルを有するとする。なお,8ビットは1バイトである。メモリアレイ102は図5に示すようにページ0からページ65,535に分割されている。なお,本実施例のメモリセルはシリコン基板と垂直な方向に32層積層されており,下記の式(2)が成立する。
メモリアレイ容量128Gb
=ページ数65,536×ページサイズ8KB×積層数32層   (2)
 ページ0~8,191はサブライトドライバWD0~255が制御する。また,ページ8,192~16,383はサブライトドライバWD256~511が制御する。上位装置から見たとき、一回のアクセスによるライト動作は,ページ単位で行うことができる。また、一回のアクセスによる消去動作は,複数ページからなるブロック単位で行うことができる。メモリアレイ102には、行デコーダ104,リード回路109,消去回路110等が対応している。
 図6は,図5のメモリアレイ102のページ0の詳細を示す平面図である。
 ページ0に着目すると,メモリチェーンMCのYアドレス0はサブライトドライバWD0の0ビット目(図6中WD0-0と記す)になる。なお,サブライトドライバWDは最大32ビット同時にライト可能であるため,WD0に関して,WD0-0からWD0-31まで存在する。次にYアドレス1はWD4-0となる。さらにYアドレス2はWD8-0となる。サブライトドライバWD0の1ビット目はYアドレス64となる。このようにWD0の各ビットが離れた位置に配置されている理由は,まず,Yアドレス線を制御するドライバの一部であるローカルドライバの構成を簡易にし,半導体記憶装置101のチップ面積を小面積化するためである。次に,ライトするビットが一部の領域に固まり,その領域を加熱しすぎ,ライトビット周辺のライト対象外のビットに熱負荷が生じ,そのビットの’0’もしくは’1’の値が反転することを防ぐためである。すなわち,ライトするビットを散らばらせることにより,ライト時に生じる熱を分散させる。なお、上記構成は一実施例であり、上記メリットを無視すれば、1個のサブライトドライバWDが纏まって配置されたビットをライトすることもできる。
 図7は,本実施例の半導体記憶装置101のメモリアレイ102の一部の回路構成の例である。メモリアレイ102は複数のメモリチェーンMCから構成される。メモリチェーンMCは複数のメモリセルCELLを直列に接続することで構成される。ここではメモリチェーンMCは8個のメモリセルCELLからなるとする。メモリセルCELLは1個の相変化素子PCMと1個のZ選択素子ZMOSを並列に接続することで構成される。ここでは1個の相変化素子PCMと1個のZ選択素子ZMOSが並列に接続されている例で説明するが,1個の相変化素子PCMと複数個のZ選択素子ZMOSを並列に接続することや複数個の相変化素子PCMと1個のZ選択素子ZMOSを並列に接続することや複数個の相変化素子PCMと複数個のZ選択素子ZMOSを並列に接続することが可能であることは言うまでもない。
 Z方向はシリコン基板と直交する方向であり,X方向とY方向はZ方向と直交し,かつ,互いに直交する方向が望ましい。このようにすることでZ方向に複数個存在するメモリセルを1回の穴開け加工により,一括して形成することが可能になり,製造コストを低減することができる。リードビット線はX方向,もしくは,Y方向に延伸されることが望ましい。本実施例ではリードビット線はX方向に延伸され,Y選択線と平行であるとして,説明する。
 メモリチェーンは4層積層されている場合を例にする。この場合,メモリセルの積層数は8個×4層の32層になる。4層より多く積層したり,4層未満の積層数としたりすることが可能であるのは言うまでもない。積層数を多くすることでメモリ容量を大きくすることができるメリットがある。積層数を少なくことで製造が容易になるメリットがある。
 本実施例では第H層のXアドレスI,YアドレスJのメモリチェーンをMC(H)-(I)-(J)と表記する。複数のリードビット線RBLはX方向に延伸されるとする。第H層のYアドレスJのリードビット線をRBL(H)-(J)として示す。
 図8を用いてメモリチェーンMCの選択方法について説明する。
 メモリチェーンMCはX選択線XとY選択線Yを用いて選択される。図7に示すように例えばメモリチェーンMC0-0-0のY選択MOSであるYMOSはY選択線Y0-0とY選択線Y0-1に挟まれており,さらに,X選択MOSであるXMOSはX選択線X0-0とX選択線X0-1に挟まれている。X選択線XはX選択MOSのゲート電極に接続され,Y選択線YはY選択MOSのゲート電極に接続されている。
 X選択MOSとY選択MOSはダブルゲートのMOSとなっており,1つのMOSにつき,2つのゲート電極が存在する。さらに,MOSのチャネル膜厚が薄いため,この2つのゲート電極にともにオン電圧が印加されたときのみMOSがオンする。例えば,MOSのソース電圧を-7.5とすると,オン電圧の例は0Vであり,オフ電圧の例は-7.5Vである。そのほかの場合,すなわち,ゲート電極の一方にオン電圧が印加され,もう一方にオフ電圧が印加された場合や,2つのゲート電極にともにオフ電圧が印加された場合にはMOSはオフする。MOSはオンの場合は低抵抗状態となり,オフの場合は高抵抗状態になる。X選択MOSとY選択MOSは直列に接続されており,両方がオンすることで,ライト電極WRからメモリチェーンMCを通って,電流がソース線SLに流れる。このときにメモリチェーンMC内のメモリセルMCのライトが行われる。
 このときに図8の#1の場合に示すようにX選択線X0-0,X0-1,Y選択線Y0-0,Y0-1がX選択MOSとY選択MOSがオフとなる電圧,例えば-7.5Vであれば,メモリチェーンMC0-0-0,0-0-1,0-1-0,0-1-1のX選択MOSとY選択MOSはオフ,すなわち,高抵抗状態となり,上記メモリチェーンは非選択となる。
 次に,#2に示すようにX選択線X0-0とX0-1,Y選択線Y0-0にオンとなる電圧,例えば0Vが印加されたときにMC0-0-0とMC0-0-1のX選択MOSはオンになる。一方,例えば,MC0-0-0のY選択MOSは片側のゲート電極であるY0-0にオン電圧が印加され,もう一方のゲート電極のY0-1にオフ電圧が印加されている。このときY選択MOSはオフとなる。そのため,MC0-0-0は非選択状態となる。
 さらに,#3に示すようにY選択線Y0-1にオン電圧が印加されると,MC0-0-0とMC0-1-0のY選択MOSは両側のゲート電極にオン電圧が印加され,Y選択MOSがオンとなる。MC0-0-0はX選択MOSもオンであるため,選択状態となる。なお,MC0-1-0はX選択MOSがオフであるため,非選択状態である。
 以降,#4~6に示す電圧配置にすることにより,表に記載された選択状態が得られる。
 Y選択線は図7に示すローカルYドライバにより駆動される。ローカルYドライバを駆動する信号は中間Yドライバにより駆動される。中間Yドライバでは駆動電圧の変換を行うことができる。例えば,ライト時において,0Vと-7.5Vの電圧を切り替えることにより,Y選択を行うMOSであるYMOSを駆動する。ローカルYドライバも0Vと-7.5Vの電圧を用いて制御信号が中間Yドライバから送られる。一方,中間Yドライバは0Vと2.3Vの電圧を用いて制御信号をグローバルYドライバから送られる。中間Yドライバにおいて,レベルシフタ回路を用いた信号電圧変換が行われる。ローカルYドライバと中間Yドライバはメモリアレイ中に位置することが望ましい。一方,グローバルYドライバはメモリアレイ外に位置することが望ましい。また,グローバルYドライバの数に比べて,中間Yドライバの数を多くすることが望ましい。このようにすることで制御信号を伝達するための電力ロスを低減することが可能になり,消費電力の小さい半導体記憶装置101を実現できる。
 図9にメモリアレイ102の一部断面図を示す。
 図10にメモリアレイ102の一部平面図を示す。
 メモリチェーンMCは2F間隔で配置されている。X選択先はY方向に延伸されている。
 図10の断面D-D’の断面模式図を図9に示す。メモリチェーンMCの一部が示されている。
 図9~図10の半導体素子には,複数のZ選択素子ZMOSと相変化素子PCMが形成されている。Z選択素子ZMOSと相変化素子PCMは,シリコン酸化膜906,ゲート酸化膜903,シリコンチャネル904,相変化材料905,Z選択トランジスタゲート電極901,層間絶縁膜902により構成されている。  
 Z選択素子ZMOSは縦型GAA-NMOSFET(Gate All Around n-channel MOSFET)を用いることが望ましい。PMOSFETに比べて電流駆動力の高いNMOSFETを用いることでメモリチェーンMCに含まれる相変化素子PCMの数を増加させ,大容量の半導体記憶装置101を実現することができる。もちろん,PMOSを用いることが可能であることは言うまでもない。縦型MOSFETを用いることでトランジスタの大きさを4F2と平面MOSを用いる場合に比べて小さくすることができるため,大容量化することができる。GAA構造にすることで,平面MOSを用いた場合に比べて,ゲート幅を広くすることが可能になり,MOSの駆動力を向上させ,相変化チェーンMCに含まれるメモリセルCELLの数を増やし,大容量化することができる。PMOSを用いた場合,非選択のZ選択トランジスタのゲート電極に印加する電圧がNMOSを用いた場合に比べて低くできるため,Z選択MOSのゲート耐圧が少なくて済み,半導体記憶装置101の信頼性が向上する効果がある。
 相変化素子PCMの材料の一部として,カルコゲナイド材料,特にGeSbTe合金(ゲルマニウム-アンチモン-テルル合金)を用いることができる。カルコゲナイド材料はアモルファス(非晶質状態)と結晶状態の2つの準安定な状態を取ることが可能であり,それぞれの状態の電気抵抗の値が異なる。すなわち,アモルファスの場合は高抵抗であり,結晶状態の場合は低抵抗となる。その電気抵抗の違いを利用して‘0’と‘1’の値を記憶することができる。アモルファスの場合を‘0’,結晶状態の場合を‘1’とする。‘0’から‘1’に書き換えることを消去,‘1’から‘0’に書き換えることをライトとする。相変化素子PCMに電流を流し,ジュール熱を発生させることで書き換えを行う。消去するためには,結晶化温度以上で一定時間保持することで,相変化素子を結晶化させる。ライトするためには,融点以上に加熱し,急冷することでアモルファス化(ガラス化)させる。相変化素子PCMが3値以上の値を取ることも可能であることは言うまでもない。記憶素子としてすでに製品に適用されている相変化素子を用いることで開発期間を短縮することが可能であり,短期間で半導体記憶装置101を出荷できる効果がある。なお,本実施例では相変化素子として結晶-アモルファスの相変化を行うものを例にして説明するが,結晶A-結晶Bの相変化を行うものを用いることができるのはいうまでもない。ここで,結晶Aと結晶Bは異なる結晶構造を持つ結晶である。なお,本実施例では記憶素子として相変化素子を用いた場合を例にして説明するが,記憶素子としてReRAMやSTT-MRAM(スピン注入型MRAM),電荷蓄積型メモリ,例えば,フローティングゲート型メモリ,チャージトラップ型メモリを用いることが可能であることは言うまでもない。書き換え電流の少ないReRAMを用いることで1個のメモリチェーンMUに含まれる記憶素子の数を増やすことが可能になり,大容量の半導体記憶装置101を実現できる効果がある。また,書き換え速度の速いSTT-MRAMを用いることでライトデータレートの大きな半導体記憶装置101を実現できる効果がある。本実施例では,記憶素子として相変化素子を用いた場合について説明している。
 ライトと消去は相変化素子PCMにライト電流を流すことでジュール熱を発生させることで行う。ライト電流は例えば40uAであり,消去電流は例えば20uAである。なお,ライトもしくは消去について,隣接するZ選択MOSに電流を流すことでジュール熱を発生させることで行うことも論理的には可能である。
ライト時には選択されたメモリチェーンMCにライト電流,例えば40uAが流れる。一方,非選択のメモリチェーンMCには電流がほぼ流れない。
 消去時には複数のメモリチェーンMCについて,メモリチェーンMCに含まれる全ビットを同時に消去すること(バンドル消去)が望ましい。メモリチェーンの一部だけを消去しようとすると,消去領域に隣接するメモリセルを誤って消去してしまうことが生じやすい。バンドル消去により高信頼な半導体記憶装置101を実現できる。さらに,複数のメモリチェーンを一括して消去すると,1本のメモリチェーンからの発熱を用いて,隣接するメモリチェーンを加熱,もしくは,熱逃げを軽減することが可能になり,消去に要する電気エネルギーを削減し,高速に消去が可能な半導体記憶装置101を実現できる。なお,熱逃げを軽減できる理由は,あるメモリチェーンに隣接したメモリチェーンが加熱されることでメモリチェーン間の温度差が少なくなり,熱流束密度と温度差が比例するというフーリエの法則から,メモリチェーン間の熱流束が低減するためである。さらに,バンドル消去時には電流を主にZ選択MOSに流し,そのジュール熱により発熱させ,消去動作を行うことが望ましい。電流を主にZ選択素子ZMOSに流すことで,相変化素子が抵抗が高く,相変化素子自体を発熱させるために高い電圧が必要な場合でも,Z選択素子ZMOSを発熱させることで,消去に要する電圧を低下させ,さらに安定した消去時の熱発生量を実現することができる。
 相変化素子PCMを選択するためには,同じメモリセルCELLのZ選択素子ZMOSをオフにすることで,Z選択素子ではなく相変化素子に電流を流す。
 図11を用いてライト時,消去時,リード時の電圧配置について説明する。選択メモリセルが,メモリチェーンMC0-0-0のZ選択MOSZ0-1を含むメモリセルCELLである場合を例として説明する。Z選択MOSのゲート-ソース間耐圧は例えば7.7Vとする。
 ライト時について説明する。
 時間t1~t2において,図11に記載されていないY選択線が制御されることで,Y選択MOSがオンされ,ライト電流,例えば40uAがメモリチェーンMC0-0-0に流れている。このときにZ選択線Z0-7の電圧を0Vにする。
 次に,消去動作について説明する。
 時間t3~t4において,図11に記載されていないY選択線が制御されることで,Y選択MOSがオンされ,消去電流,例えば20uAがメモリチェーンMC0-0-0である。このジュール熱により加熱される相変化素子の温度がライト時の相変化素子の温度に比べて低いことが望ましい。この例ではZ選択トランジスタZMOSのソース-ドレイン間に電流を流し,そこでジュール熱を発生させている(バンドル消去)。すなわち,Z選択トランジスタのチャネルにおいて,ジュール熱を発生させ,この熱を相変化素子PCMに伝熱させることで,相変化素子PCMを結晶化させている。Z選択トランジスタZTrのゲート-ソース間電圧を4.5Vとしている。Z選択トランジスタZTrは完全にオンしないことが望ましい。これにより,同じソース-ドレイン間電流に対して,Z選択トランジスタZTrで発熱するジュール熱を増加させることができる。ジュール熱の発生量を各メモリセルで均等化させるため,ライトに比べて,Z選択の電位の制御を層ごとに細かく行い,少なくとも5水準以上の電位を用いて,Z選択トランジスタのゲート電圧を制御することが望ましい。図5の場合と比較して,ゲート電圧が低いため,5水準以上のゲート電圧の制御を省電力で行うことが可能であり,省電力な半導体記憶装置101を実現できる。
 バンドル消去により複数のメモリセルの相変化素子を一括して消去することができる。メモリチェーン全体を同時に消去することが望ましい。なぜなら,メモリチェーンの一部だけを消去しようとすると,消去領域に隣接するメモリセルを誤って消去してしまうことが生じやすいためである。さらに,複数のメモリチェーンを一括して消去することが望ましい。これにより,1本のメモリチェーンからの発熱を用いて,隣接するメモリチェーンを加熱,もしくは,熱逃げを軽減することが可能になり,消去に要する電気エネルギーを削減し,高速に消去が可能な半導体記憶装置101を実現できる。なお,熱逃げを軽減できる理由は,あるメモリチェーンに隣接したメモリチェーンが加熱されることでメモリチェーン間の温度差が少なくなり,熱流束密度と温度差が比例するというフーリエの法則から,メモリチェーン間の熱流束が低減するためである。
 ここで,消去時の選択ビット線RBL0-0の電圧は正の電圧であることが望ましい。例えば2.7Vである。その理由は,電源電圧VDDは例えば,2.7~3.6Vが供給されるとすると,この電源電圧VDDの最小電圧である2.7Vを消去に用いることで,消去時の選択ビット線VBL-Sに印加する電圧を昇圧回路を用いずに供給することが可能になり,昇圧回路における電力ロスを無くすことで,同時に消去可能なメモリチェーンの数を例えば512本に増加させることができるためである。これにより,消去の速度を例えば400MB/sに向上させることができる。
 さらにリード動作について説明する。
 リード時の選択ビット線RBL0-0電圧は正であることが望ましい。例えば1Vである。正の電圧を用いることで昇圧回路を用いずに電源供給することが可能になり,リードの消費電力を低減することができる。これにより,低消費電力の半導体記憶装置601を提供することができる。
 また,消去時やリード時のビット線電位が2.7Vや1.0Vと低いため,高速な半導体記憶装置101を実現できる。
 図12を用いてローカルドライバLDGの構成について説明する。ローカルドライバLDGは複数のサブローカルドライバLDからなる。サブローカルドライバLDの1個が図12に示されている。ローカルY選択線の一つであるY選択線Y0-0は中間Yメイン選択線mainY0と中間Yサブ選択線subY0のAND信号により生成されている。すなわち,mainY0とsubY0がともに’H’になったときにY0-0は’H’になり,mainY0,もしくは,subY0が’L’になったときにはY0-0は’L’になる。
 上記のようにYアドレス信号はメモリアレイ外のグローバルYドライバで一部がデコードされ,サブローカルドライバに送られる。サブローカルドライバLDでフルデコードが行われ,ローカルY選択線Yが駆動される。このようにサブローカルドライバLDにプリデコード信号を送り,サブローカルドライバLDでフルデコードを行うことが望ましい。このようにすることでグローバルYドライバにおいてフルデコードする場合と比べて,グローバルYドライバとサブローカルドライバ間の信号本数を削減することが可能になり,チップ面積を縮小することが可能になる。また,サブローカルドライバLDでフルデコードする場合と比べてサブローカルドライバLDの回路面積を小さくすることが可能になり,チップ面積を縮小することが可能になる。
 ここで消去単位について,MC(H)-8j-8k,MC(H)-8j-(8k+7),MC(H)-(8j+7)-8k,MC(H)-(8j+7)-(8k+7)を四辺とする長方形に含まれる領域(バンドル消去領域)を一括して消去すると仮定する。ここで,Hとj,kは任意の整数である。例えば,MC0-0-0,MC0-0-7,MC0-7-0,MC0-7-7を四辺とする長方形に含まれる領域を一括して消去する。このバンドル消去領域に含まれるビット数は512ビットである。次の消去では,MC0-0-8,MC0-0-15,MC0-7-8,MC0-7-15を四辺とする長方形に含まれる領域を一括して消去する。なお,複数のバンドル消去領域を同時に消去することも可能である。本実施例では8個のバンドル消去領域を同時に消去するとして説明する。すなわち,同時に4kビットの消去を行う。
 図13にライトステップごとのライトビットの例について示す。この例では,ライト単位でライトされる複数のメモリセルがメモリアレイ中の互いに隣接していない場所に分散され配置している。図13では,点線で囲まれる1ページ(8KB)を構成するメモリチェーンMCの,ライト対象の変化を示している。黒丸がライト対象であり、白丸はライト対象でない。複数のメモリチェーンMCが同時にライトされていることや,同時に隣接されるビットがライトされていないことが分かる。ライトステップ0でMC0-0-0等がライトされ,次の10nsであるライトステップ1には,その隣のMC0-0-1がライトされていることが示されている。なお,MC0-0-0とMC0-0-1は共に’0’データがライトされるべきビットである場合の例であり,ライトデータによっては上記の一部のビットのみがライトされることがあることは言うまでもない。ひとつのライトステップは例えば10nsを要する。リセットパルス印加時間が8nsで,Yアドレスの選択に要する時間を2nsにすることが望ましい。ライトステップを10ns程度と短くすることでライトデータレートの高速な半導体記憶装置101を実現できる。
 図14にライトビット選択時のmainY,subY信号線の状態を示す。例えば,メモリチェーンMC0-0-0をライトするためには,mainY0とsubY0と1をオンにすれば良いことが示されている。また,メモリチェーンMC0-0-0を含むバンドル消去領域(MC0-0-0,MC0-7-0,MC0-0-7,MC0-7-7を四辺とする長方形の領域)を消去するためにはmainY0とsubY0~7をオンにすれば良いことが示されている。
 図12を再度用いてローカルドライバLDの回路構成について説明する。ローカルY選択線Y0-8を駆動する回路について,OR回路1201が設けられている。OR回路1201は,中間メインY選択線mainY0が制御するローカルY選択線のグループと中間メインY選択線mainY1が制御するローカルY選択線のグループの間のメモリチェーンMCを消去するために用いられる。
 図14を用いてこのときの信号選択を説明する。メモリチェーンMC0-0-0を含むバンドル消去領域(MC0-0-0,MC0-7-0,MC0-0-7,MC0-7-7を四辺とする長方形の領域)を消去するためにmainY0とsubY0~7をオンにすることで,Y0-0からY0-8までを選択し,バンドル消去を行うことができる。
 図15に,比較のために,前述したOR回路1201が無い場合のローカルドライバの回路図を示す。mainY0とsubY0~7をオンにしても,Y0-0からY0-7までしか選択できないため,MC0-0-7やMC0-7-7を消去することができない。そのため,データを消去,ライトすることが出来ない領域が存在することになる。
 すなわち,OR回路1201により,データを消去,ライトすることが出来ない領域を無くし,半導体記憶装置101の容量を増やすことができる。
 なお,AND論理の代わりにNAND論理を用いることが可能であることは言うまでもない。その場合,中間Yメイン選択線mainYと中間Yサブ選択線subYには反転された値を入力する。NAND論理を用いることで回路面積を小さくし,チップ面積の小さい半導体記憶装置101を実現できる利点がある。
 さらに,OR回路の代わりにNAND回路とインバーター回路の組み合わせを用いることが可能であることは言うまでもない。
 なお,サブローカルドライバ間のY選択線を隣接するサブローカルドライバの信号をOR回路を用いて生成した信号を用いて駆動することが可能であることは言うまでもない。この方法により,サブローカルドライバ間の消去ができない領域を無くすことが可能になり,半導体記憶装置101の記録容量を増加させることが出来る。
 さらに,本発明の半導体記憶装置101にはローカルX選択線Xでアドレシングを行い,ローカルY選択線Yでアドレシングと’0’ライトデータの指定を行うことが望ましい。このようにすることでローカルX選択線XとローカルY選択線Yでアドレシングを行い,データ線で’0’ライトデータの指定を行う方法に比べて,信号線の本数を少なくすることが可能になり,半導体記憶装置101のチップ面積を小さくすることができる。
 図16を用いて本実施例の半導体記憶装置101のチップレイアウト、およびこの半導体記憶装置を搭載して構成したストレージ装置の構成を説明する。図16には複数のメモリアレイ102を有する半導体記憶装置101が示されている。パッド部を用いて半導体記憶装置101はコントローラ1600と接続される。また,行デコーダによりXアドレスが選択される。
 このようなストレージ装置(SSD)は、1チップで構成されている半導体記憶装置101を複数個(例えばN個)搭載することができる。これらの半導体記憶装置はバスを通じて,コントローラ1600のI/O部1602を介し,制御部1601により制御される。また、コントローラ1600は,I/O部1602を介して図示しない上位装置と接続されている。上位装置からは,記録すべきデータや,書き込み,読み出し,ベリファイ,消去などのコマンドが送信され,コントローラ1600はこれに従って,半導体記憶装置101を制御することになる。
 また,先にのべたように,コントローラ1600は,上位装置から受信したデータの’1’の値と’0’の値を反転させて,半導体記憶装置101に記録する制御を行うこともできる。このようにすると,実質的に状態を書き換えるメモリセルの個数を少なくすることができる。例えば,メモリセルがすべて”1”の消去状態において、上位装置からはすべてに”0”のデータを記録するように指示があったとする。このとき、コントローラ1600は,データの’1’の値と’0’の値を反転させ,メモリセルにおいては,’1’を記録状態に,’0’を消去状態に対応させる。この場合は,実質的な記録動作は行なわないでよいことになる。このようにして,半導体記憶装置101に対して’1’の値を’0’に比べて相対的に多く送るようにする制御が可能である。この制御は,コントローラ1600の内部で,データの’1’の値と’0’の値をカウントし、’0’が多ければデータを反転して実行できるので,上位装置側からは隠蔽された制御とすることができる。
 図17を用いて,相変化素子PCMのライトと消去について説明する。ライトはリセットパルスを相変化素子PCMに流し,ジュール熱を発生させることで行う。リセットパルスにより相変化素子PCMは融点以上に加熱され,急冷されることでアモルファス状態になる。リセットパルスの印加時間は例えば8nsである。また,消去はセットパルスをZ選択MOSであるZMOSに流し,ジュール熱を発生させることで行う。セットパルスにより相変化素子PCMは結晶化温度以上で一定時間,例えば500ns保持される。相変化素子PCMはこれにより結晶状態になる。結晶状態はアモルファス状態に比べて,抵抗が低く,その抵抗の違いを利用して,例えば,低抵抗状態を’1’,高抵抗状態を’0’として,情報を記録することができる。
 本制御方式は特にビットの書き換えに要するライト電流量が大きく,ライトデータレートが上記ライト電流量に律速されるメモリに適する。例えば,NAND型フラッシュメモリではビットの書き換えに要するライト電流量は小さく,ライトデータレートが上記ライト電流量に律速されない。一方,相変化メモリやSTT-RAM,ReRAMはライトデータレートが上記ライト電流量に律速されるため,本制御方式が適する。
 本実施例では、ライトエラーが発生する可能性のある記憶素子を用いながら,ライトデータレートが高速な半導体記録装置の例説明する。
 図18は本発明の実施例2による動作シーケンス例を示す流れ図である。
 ライトエラーが発生する可能のある記憶素子を用いた半導体記憶装置101においては,
1ページ分のライトを行うページライトにおいて,まず,1ページ分のライト動作を試みた後に,ライト動作を試みた領域のデータをリードし,ライトが成功しているかを確認し,もし,ライトが失敗している場合は,再度,ライトを行う処理を行うことが望ましい。このようにすることで,ライトエラーが発生する可能性はあるが,短期間に開発可能な記憶素子を用いることが可能になり,短期間での半導体記憶装置101の開発を実現できる。
 ここで,最初のライト動作の試みを初回ライト,ライト動作を試みた領域のデータリードをベリファイリード,ライトが失敗している場合の再ライトをベリファイライトとする。
 例えば,相変化メモリは図17に示すように融点以上に加熱することでライト動作を行う。ところが,同じライト電流を相変化素子PCMに流しても,相変化素子の特性,例えば,膜厚により,到達する温度には,ばらつきが生じる。同じライト電流でも,ある相変化素子PCMは適切な温度まで加熱されるが,別の相変化素子PCMでは相変化材料の膜厚が薄く,融点を大幅に越え,メモリセルCELLが破壊される温度になったり,さらに別の相変化素子PCMでは相変化材料の膜厚が厚く,融点に到達せず,ライトに失敗することがある。さらに,例えば,膜厚のばらつきはチップの特定箇所,特定のページで特に厚かったり,薄かったりする。なお,メモリセルCELLの破壊を防ぐためには,半導体記憶装置101全体において,ややライト電流を少なくして初回ライトを実行することが望ましいが,これにより,初回ライトで十分な加熱が得られない相変化素子PCMの割合はさらに増加する。
 本実施例に記載された半導体記憶装置101の概要を説明すると,1ページ分の初回ライトを行った後に,ベリファイリードを行い,ライトエラーが存在した場合,ライトエラービット数をポピュレーションカウンタを用いてカウントし,エラービット数が最大同時ライトビット数以下の場合は,1回のライトステップでライトを行う。エラービット数が最大同時ライトビット数より多い場合は,複数回のライトステップでライトを行う。
 図18を用いて本動作の詳細を説明する。
 まず,1ページ分の初回ライトを行う(S1801)。1ページ分まとめて初回ライトを行うことで,ライトとリードの切り替え回数を減らすことが可能になり,切り替え時間を短縮し,ライトデータレートを高速化することが出来る。特に,ライトでライト電極WRに負電圧を用い,リードでリードビット線にプリチャージする電圧に正の電圧を用いる半導体記憶装置101において,ライトとリードの切り替え時間が長いため,本方式が有効である。
 なお,このときにページの一部の初回ライトを行ったのちにベリファイリードを行い,さらに残りの部分について,初回ライトが可能であることは言うまでもない。例えば,Xアドレス0について,初回ライト→ベリファイリード→ベリファイライトを行い,次に,Xアドレス1について,初回ライト→ベリファイリード→ベリファイライトを行うようにすることで,Xアドレスの選択回数を低減することが可能になり,Xアドレス選択時間を短くし,ライトデータレートの高速な半導体記憶装置101を実現できる。
 次にベリファイリードを行い(S1802),リードした値とレジスタ内に格納されたライトするべき値を比較することによりライトエラーが存在するかを判定する(S1803)。もし,エラーが存在する場合,ポピュレーションカウンタにより,エラービット数をカウントする(S1804)。このとき,同時にライト可能な領域について,その領域に含まれるエラービット数をカウントするのが良い。例えば,図12のサブローカルドライバLDにおいては,プリデコード方式によるライトビット指定の制約により例えば,MC0-0-4とMC0-0-10は同時にライトすることが出来ない。そのため,これらのビットは別々にエラービット数をカウントするのがよい。
 次に,エラービット数と最大同時ライトビット数を比較する。もし,1回のライトステプで電力的に同時にライトが出来るなら,すなわち,エラービット数と最大同時ライトビット数以下であるなら,1回のライトステップでライトを行う。エラービット数が最大同時ライトビット数より大きい場合は,複数回のライトステップでライトを行う。
 本制御方式は特にライトにおいてほぼ一定されたライト成功率を望めないメモリ,例えば,徐々に電荷を注入することが可能な電荷蓄積型ではなく,ライト後に温度が室温近くまで低下し,再ライト時には再びほぼ室温からの加熱が必要な相変化形のメモリや磁化反転を用いるメモリ,わずかな原子の移動が大きな抵抗変化をもたらすフィラメント形成,消滅型のメモリに適する。すなわち,相変化メモリやSTT-RAM,ReRAMに適する。さらに,本制御方式は特にビットの書き換えに要するライト電流量が大きく,ライトデータレートが上記ライト電流量に律速されるメモリに適する。例えば,NAND型フラッシュメモリではビットの書き換えに要するライト電流量は小さく,ライトデータレートが上記ライト電流量に律速されない。一方,相変化メモリやSTT-RAM,ReRAMはライトデータレートが上記ライト電流量に律速されるため,本制御方式が適する。
 本提案方式を用いることで,ピーク電流を一定以下に制限しつつ,ベリファイライトに要する時間を短時間化することで,ライトデータレートの高速な半導体記憶装置101を実現することができる。
 以上のように,実施例3では電気抵抗の違いにより,第1の記憶状態と第2の記憶状態を有する複数のメモリセルと,所定数のメモリセルを一つのライト(あるいはセット)単位として,データ書き込み後の記憶データの検証を行い,誤りがある場合のベリファイライトを想定している。ベリファイライト時に,ライト単位にベリファイライトされる第1の記憶状態の数をカウントするカウンタ回路を有し,カウンタ回路の計算結果を基に,第1の記憶状態の数が所定数以下になる範囲で前記ライト単位が1個,もしくは,複数個,選択され,選択された1個,もしくは,複数個のベリファイライト単位のデータが一括してライトされる。
 本実施例では、ライトデータレートが高速である,消去動作が不要なダイレクトオーバーライト(ビットオルタナティブライトと言われることもある)可能な半導体記録装置の例を説明する。
 図19は本発明の実施例3による動作シーケンス例を示す流れ図である。
 本実施例ではダイレクトオーバーライト可能なReRAMを用いる場合を例にして説明する。ダイレクトオーバーライト可能なReRAMはあるビットについてライト,もしくは,消去したときに,その周辺のビットに記録された値が変化することが少ない。このときに半導体記憶装置101を制御する外部コントローラ,例えばSSDコントローラは半導体記憶装置101に対して,消去命令を行わず,ライト命令を行うことができる。半導体記憶装置101に記録された’0’もしくは’1’の値は,外部コントローラにより,’0’もしくは’1’のどちらにも書き換えることが出来るようにすることが望ましい。このようにすることで外部コントローラが消去命令を行う必要がなくなり,高速なデータライト処理が可能なストレージシステムを実現できる。
 なお,半導体記憶装置101内部では,’0’から’1’にデータを書き換える消去動作と,’1’から’0’にデータを書き換えるライト動作を行う。このときに,ライトする前にライト対象ページのデータをまず読み出し,ライト,もしくは消去が必要なビットを調べ,そのビットのみをライト,もしくは消去し,値の変わらないビットはライトと消去を行わないことが望ましい。このようにすることで,ライト,もしくは消去を行うビット数を低減し,ライトデータレートの高速な半導体記憶装置101を実現できる。
 本提案の実施例の概略を述べると,ページライト時に,まずページリードを行い,例えば,ライトに関しては,ポピュレーションカウンタはリードしたデータとライトするべきデータを比較し,’1’から’0’にライトするビットの数をカウントし,そのビット数が最大同時ライトビット数以下になる範囲で最大限多くのサブライトドライバWDを駆動する。なお,消去動作についても同様の制御が可能であることは言うまでもない。このときは,ポピュレーションカウンタはリードしたデータとライトするべきデータを比較し,’0’から’1’に消去するビットの数をカウントし,そのビット数が最大同時消去ビット数以下になる範囲で最大限多くのサブ消去ドライバWDを駆動する。
 図19を用いて具体的な動作シーケンスを説明する。
 まず,ページリードを行う(S1901)。次に,ポピュレーションカウンタを用いてライトの必要なビット数をカウントし(S1902),最大ピーク電流の観点で許容される範囲で最大限多くのサブライトドライバWDを駆動してライトを行う(S208)。次に,消去を行い(S1903),ページの残りのライトと消去を行う(S1904)。
 レジスタには’0’ライト,’1’消去と’2’の値の変更なしの3値記憶でデータを保持することができる。こうすると,リードした値を保持するレジスタとライトするべき値を保持する2値のレジスタを合わせて2個設ける場合に比べて,レジスタのデータサイズを3/4に小さくすることが出来る。
 本明細書において単数形で表される構成要素は、特段文脈で明らかに示されない限り、複数形を含むものとする。
 本発明は上記した実施形態に限定されるものではなく、様々な変形例が含まれる。例えば、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることが可能である。また、各実施例の構成の一部について、他の実施例の構成の追加・削除・置換をすることが可能である。
101 半導体記録装置
102 メモリアレイ
103 ポピュレーションカウンタ
104 行デコーダ
105 I/O部
107 レジスタ
108 データバス
109 リード回路
110 消去回路
401 ポピュレーションカウンタ処理
901 Z選択トランジスタゲート電極
902 層間絶縁膜
903 ゲート酸化膜
904 シリコンチャネル
905 相変化材料
906 シリコン酸化膜
CELL メモリセル
F 最小加工寸法
Local Y driver Y選択線駆動回路
MC メモリチェーン
mainY 中間Yメイン選択線信号
PCM 相変化素子
RBL リードビット線
SL ソース線
subY 中間Yサブ選択線信号
WD サブライトドライバ
WD_EN サブライトドライバ活性化信号
WDG ライトドライバグループ
WR ライト電極
X ローカルX選択線
XMOS X選択素子
Y ローカルY選択線
YMOS Y選択素子
Z Z選択線
ZMOS Z選択素子

Claims (15)

  1.  電気抵抗の違いにより,第1の記憶状態と第2の記憶状態を設定可能な複数のメモリセルと,
     前記複数のメモリセルの一部である所定数の前記メモリセルを一つのライト単位として,当該ライト単位のメモリセルに書き込み(ライト)、消去、およびベリファイライトの少なくとも一つ(以下「セット」という)を行う際に,複数の前記ライト単位において,前記記憶状態が変更される個数の数を計算するカウンタ回路を有し,
     前記カウンタ回路の計算結果を基に,前記個数の数が所定数以下になる範囲で前記ライト単位が1個,もしくは,複数個,選択され,
     前記選択された1個,もしくは,複数個のライト単位のデータが一括してセットされることを特徴とする半導体記憶装置。
  2.  前記カウンタ回路によるカウントと前記セットが,同時に実行されることを特徴とする請求項1に記載の半導体記憶装置。
  3.  前記カウンタ回路の処理時間が下記の式を満たすことを特徴とする請求項1に記載の半導体記憶装置。
     セット時間 > カウンタ回路の処理時間 × 最大同時駆動セット単位数
  4.  前記ライト単位でセットされる複数の前記メモリセルが,メモリアレイ中の互いに隣接していない場所に分散され配置していることを特徴とする請求項1に記載の半導体記憶装置。
  5.  複数の記憶状態を保持可能な,複数のメモリセルと,
     前記複数のメモリセルのうち所定数のメモリセルと接続され,当該所定数のメモリセルの記憶状態を変更可能な複数のサブライトドライバと,
     前記サブライトドライバにデータを入力するための入力経路と,
     前記複数のサブライトドライバが,前記入力されるデータに基づいて,前記所定数のメモリセルのうち記憶状態を変更すべき個数をカウントする,カウンタを有し,
     前記カウンタのカウント結果に基づいて,前記複数のサブライトドライバの動作タイミングを制御する半導体記憶装置。
  6.  前記カウンタは,前記複数のサブライトドライバ毎に,順次前記記憶状態を変更すべきメモリセルの個数をカウントし,カウント結果を加算していき,
     前記加算されたカウント結果が,n番目(nは自然数)のサブライトドライバで第1の所定閾値を超えた場合には,n-1番目までのサブライトドライバを一括して動作させる請求項5記載の半導体記憶装置。
  7.  前記加算されたカウント結果が,n番目(nは自然数)のサブライトドライバで前記第1の所定閾値を超えない場合であっても,nが第2の所定閾値に達した場合には,n番目までのサブライトドライバを一括して動作させる請求項6記載の半導体記憶装置。
  8.  前記n-1番目までのサブライトドライバを一括して動作させている間に,n番目以降の前記サブライトドライバについてのカウントを並行して行う請求項6記載の半導体記憶装置。
  9.  前記サブライトドライバと接続されている前記所定数のメモリセルは,分散配置されている請求項1記載の半導体記憶装置。
  10.  半導体記憶装置と,前記半導体記憶装置を制御するコントローラを有し,
     前記半導体記憶装置は,
     電気抵抗の違いにより複数の記憶状態を保持可能な,複数のメモリセルと,
     前記複数のメモリセルのうち所定数のメモリセルと接続され,当該所定数のメモリセルの記憶状態を変更可能な複数のサブライトドライバと,
     前記サブライトドライバにデータを入力するために前記コントローラとの通信を行うインタフェースと,
     前記複数のサブライトドライバが,前記入力されるデータに基づいて,前記所定数のメモリセルのうち記憶状態を変更すべき個数をカウントする,カウンタを有し,
     前記コントローラは,
     前記半導体記憶装置および上位装置と通信を行うためのI/O部と,
     前記半導体記憶装置へのデータの書き込み,消去,およびベリファイの少なくとも一つを制御する制御部を有し,
     前記カウンタのカウント結果に基づいて,前記複数のサブライトドライバの動作タイミングを制御するストレージ装置。
  11.  前記カウンタは,
     前記複数のサブライトドライバ毎に,順次前記記憶状態を変更すべきメモリセルの個数をカウントし,カウント結果を加算していき,
     前記加算されたカウント結果が,n番目(nは自然数)のサブライトドライバで第1の所定閾値を超えた場合には,n-1番目までのサブライトドライバを一括して動作させる請求項10記載のストレージ装置。
  12.  前記コントローラは,
     前記上位装置から受信したデータの第1の値と第2の値を反転させて,前記半導体記憶装置の前記メモリセルに反映する制御を行う請求項10記載のストレージ装置。
  13.  データの書き込みにおいて,
     前記サブライトドライバは,全て第1の値に設定して消去済の前記所定数のメモリセルのうち,所定のメモリセルの状態を第1の値から第2の値に変更するデータ書き込みを行うものとし,
     前記カウンタは,前記第1の値から前記第2の値に変更するメモリセルの個数をカウントする請求項10記載のストレージ装置。
  14.  データ書き込み後に記憶データの検証を行い,誤りがある場合のベリファイライトにおいて,
     前記サブライトドライバは,第1の値から第2の値に変更すべきメモリセルのうち,正しく前記第2の値に変更されていないメモリセルを,再度前記第2の値に変更するベリファイライトを行うものとし,
     前記カウンタは,前記正しく第2の値に変更されていないメモリセルの個数をカウントする請求項10記載のストレージ装置。
  15.  データの書き込みまたは消去において,
     前記サブライトドライバは,前記入力されたデータに基づいて,所定のメモリセルの状態を変更するデータ書き込みまたは消去を行うものとし,
     前記カウンタは,現在のメモリセルの状態に基づいたデータと,前記入力されたデータを比較し,前記入力されたデータに基づいてデータ書き込みまたは消去を行うために,第1の値から第2の値に変更するべきメモリセルの個数をカウントする請求項10記載のストレージ装置。
PCT/JP2014/074873 2014-09-19 2014-09-19 半導体記憶装置およびそれを用いたストレージ装置 WO2016042665A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US15/502,352 US20170229176A1 (en) 2014-09-19 2014-09-09 Semiconductor storage device, and storage device using same
PCT/JP2014/074873 WO2016042665A1 (ja) 2014-09-19 2014-09-19 半導体記憶装置およびそれを用いたストレージ装置
JP2016548515A JPWO2016042665A1 (ja) 2014-09-19 2014-09-19 半導体記憶装置およびそれを用いたストレージ装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2014/074873 WO2016042665A1 (ja) 2014-09-19 2014-09-19 半導体記憶装置およびそれを用いたストレージ装置

Publications (1)

Publication Number Publication Date
WO2016042665A1 true WO2016042665A1 (ja) 2016-03-24

Family

ID=55532728

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2014/074873 WO2016042665A1 (ja) 2014-09-19 2014-09-19 半導体記憶装置およびそれを用いたストレージ装置

Country Status (3)

Country Link
US (1) US20170229176A1 (ja)
JP (1) JPWO2016042665A1 (ja)
WO (1) WO2016042665A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102452623B1 (ko) * 2018-02-27 2022-10-07 삼성전자주식회사 기입 레이턴시를 줄일 수 있는 저항성 메모리 장치의 동작 방법
US11670394B2 (en) * 2021-08-18 2023-06-06 Nxp B.V. Temperature exposure detection based on memory cell retention error rate

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07122088A (ja) * 1993-10-25 1995-05-12 Sharp Corp 不揮発性半導体記憶装置
JP2013080537A (ja) * 2011-10-03 2013-05-02 Hitachi Ltd 半導体装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2687926B2 (ja) * 1995-05-24 1997-12-08 日本電気株式会社 符号復号化装置
JP4148210B2 (ja) * 2004-09-30 2008-09-10 ソニー株式会社 記憶装置及び半導体装置
KR101411499B1 (ko) * 2008-05-19 2014-07-01 삼성전자주식회사 가변 저항 메모리 장치 및 그것의 관리 방법
US8327062B2 (en) * 2008-12-09 2012-12-04 Infineon Technologies Ag Memory circuit and method for programming in parallel a number of bits within data blocks
US8570828B2 (en) * 2010-04-12 2013-10-29 Mosaid Technologies Incorporated Memory programming using variable data width
KR102168096B1 (ko) * 2013-03-15 2020-10-20 삼성전자주식회사 불휘발성 메모리 장치 및 그것의 데이터 쓰기 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07122088A (ja) * 1993-10-25 1995-05-12 Sharp Corp 不揮発性半導体記憶装置
JP2013080537A (ja) * 2011-10-03 2013-05-02 Hitachi Ltd 半導体装置

Also Published As

Publication number Publication date
US20170229176A1 (en) 2017-08-10
JPWO2016042665A1 (ja) 2017-04-27

Similar Documents

Publication Publication Date Title
US8625376B2 (en) Semiconductor memory device and method of operation the same
TWI605469B (zh) 具有一記憶體器件之裝置、子區塊停用電路及用於控制至一記憶體器件之存取、指示一記憶體器件中之ㄧ缺陷與擦除一記憶體器件中之記憶體之方法
US8427874B2 (en) Non-volatile memory and method with even/odd combined block decoding
JP5756622B2 (ja) 半導体装置
US9251901B2 (en) Semiconductor memory device with high threshold voltage distribution reliability method
US11749353B2 (en) Managing sub-block erase operations in a memory sub-system
US11321170B2 (en) Memory system, memory controller, and method for operating memory system
US20140078821A1 (en) Complementary decoding for non-volatile memory
US20210240390A1 (en) Memory system, memory controller and method for operating memory system
TWI453757B (zh) Semiconductor memory device and its control method
US11315650B2 (en) Memory system, memory controller, and method of operating memory system
US11474740B2 (en) Memory system and memory controller
WO2016042665A1 (ja) 半導体記憶装置およびそれを用いたストレージ装置
US9570181B2 (en) Memory system
KR20200074872A (ko) 에너지 효율적인 pram 어레이 기입 동작을 수행하는 메모리 장치 및 이를 포함하는 메모리 시스템
US11307777B2 (en) Memory system and operating method thereof
US11474726B2 (en) Memory system, memory controller, and operation method thereof
US11742036B2 (en) Reducing maximum programming voltage in memory programming operations
US11275524B2 (en) Memory system, memory controller, and operation method of memory system
US20230116063A1 (en) Storage device based on daisy chain topology
US11355210B2 (en) Memory system and operating method thereof
US20230230639A1 (en) Method and apparatus to reduce power consumption of page buffer circuitry in a non-volatile memory device
US20240061616A1 (en) Memory device command history management
US20230070208A1 (en) Ganged single level cell verify in a memory device
JP5807103B2 (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: 14902152

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2016548515

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14902152

Country of ref document: EP

Kind code of ref document: A1