[go: up one dir, main page]

WO2016143170A1 - Semiconductor storage device - Google Patents

Semiconductor storage device Download PDF

Info

Publication number
WO2016143170A1
WO2016143170A1 PCT/JP2015/076374 JP2015076374W WO2016143170A1 WO 2016143170 A1 WO2016143170 A1 WO 2016143170A1 JP 2015076374 W JP2015076374 W JP 2015076374W WO 2016143170 A1 WO2016143170 A1 WO 2016143170A1
Authority
WO
WIPO (PCT)
Prior art keywords
memory
memory cell
address
error
area
Prior art date
Legal status (The legal status 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 status listed.)
Ceased
Application number
PCT/JP2015/076374
Other languages
French (fr)
Inventor
Yoshiaki Osada
Katsuhiko Hoya
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to CN201580077296.XA priority Critical patent/CN107430558B/en
Priority to RU2017130617A priority patent/RU2682387C1/en
Publication of WO2016143170A1 publication Critical patent/WO2016143170A1/en
Priority to US15/692,971 priority patent/US10102062B2/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3037Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a memory, e.g. virtual memory, cache
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1048Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
    • G06F11/106Correcting systematically all correctable errors, i.e. scrubbing
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1068Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C17/00Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards
    • G11C17/14Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards in which contents are determined by selectively establishing, breaking or modifying connecting links by permanently altering the state of coupling elements, e.g. PROM
    • G11C17/16Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards in which contents are determined by selectively establishing, breaking or modifying connecting links by permanently altering the state of coupling elements, e.g. PROM using electrically-fusible links
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C17/00Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards
    • G11C17/14Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards in which contents are determined by selectively establishing, breaking or modifying connecting links by permanently altering the state of coupling elements, e.g. PROM
    • G11C17/18Auxiliary circuits, e.g. for writing into memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/38Response verification devices
    • G11C29/42Response verification devices using error correcting codes [ECC] or parity check
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/44Indication or identification of errors, e.g. for repair
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/44Indication or identification of errors, e.g. for repair
    • G11C29/4401Indication or identification of errors, e.g. for repair for self repair
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/52Protection of memory contents; Detection of errors in memory contents
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/78Masking faults in memories by using spares or by reconfiguring using programmable devices
    • G11C29/785Masking faults in memories by using spares or by reconfiguring using programmable devices with redundancy programming schemes
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/81Threshold
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/88Monitoring involving counting
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C2029/0409Online test
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C2029/0411Online error correction
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C2029/4402Internal storage of test result, quality data, chip identification, repair information

Definitions

  • the present embodiment relates to a semiconductor storage device.
  • a magnetoresistive random access memory is a memory device wherein a memory cell for storing information employs a magnetic element having a magnetoresistive effect.
  • the MRAM receives attention as a next-generation memory device featuring a high-speed operation, a large storage capacity, and non-volatility.
  • DRAM dynamic random access memory
  • SRAM static random access memory
  • the MRAM should desirably operate on the same specifications as the DRAM and SRAM.
  • FIG. 1 is a block diagram showing an exemplary
  • FIG. 2 is a circuit diagram showing an exemplary configuration of a memory cell array of the memory system of the embodiment .
  • FIG. 3 illustrates a basic configuration of a memory cell of the memory system of the embodiment.
  • FIG. 4 is a state diagram illustrating the memory system of the embodiment .
  • FIG. 5 is a flowchart illustrating a scrub operation of the memory system of the embodiment.
  • FIG. 6 is a waveform chart illustrating the scrub operation of the memory system of the embodiment.
  • FIG. 7 is a waveform chart illustrating the scrub operation of the memory system of the embodiment.
  • a memory system includes:
  • control circuit which replaces the first memory cell with the second memory cell if the number of times an error in the first memory cell is successfully corrected reaches a first value.
  • Each of the function blocks can be implemented in the form of hardware, computer software or a combination of them. In order to clarify what are specifically meant by the function blocks, the blocks will be explained below in terms of their functions. Whether the functions are
  • the present embodiment will be described, referring to the case where an MRA is applied to a memory cell array.
  • ⁇ 1-1> Configuration of Memory System A schematic description will be given with reference to FIG. 1 of the basic configuration of a memory system according to the embodiment.
  • the memory system 1 comprises a memory controller 100 and a memory device 200.
  • the memory controller 100 of the embodiment receives commands from a host 2. In accordance with the commands, the memory controller 100 reads data from the memory device 200 and writes data in the memory device 200.
  • the memory controller 100 is provided with a host interface (host I/F) 110, a data buffer 120, a status register 130, a central processing unit (CPU) 140, a device interface (I/F) 150, an error correcting code (ECC) circuit 160, a fuse controller 170, and an address counter 180.
  • host I/F host interface
  • data buffer 120 data buffer
  • status register 130 a status register
  • CPU central processing unit
  • I/F device interface
  • ECC error correcting code
  • the host interface 110 is connected to the host
  • (external apparatus) 2 such as a personal computer, and is further connected to the bus 190 of the memory controller 100. Through the host interface 110, data are transmitted and received between the host 2 and the memory system 1.
  • the data buffer 120 is connected to the host interface 110 and further to the bus 190.
  • the data buffer 120 is connected to the host interface 110 and further to the bus 190.
  • the data buffer 120 temporarily stores data which are to be transmitted from the memory system 1 to the host 2 by way of the host interface 110.
  • the data buffer 120 may be either a volatile memory or a nonvolatile memory.
  • the CPU 140 controls the overall operations of the memory system 1.
  • the CPU 140 performs predetermined
  • processing for the memory device 200 in accordance with commands received from the host 2 , for example .
  • the status register 130 is, for example, a volatile memory, and stores setting information, commands executed by the CPU 140, and status signals.
  • the status register 130 may be either a volatile memory or a nonvolatile memory.
  • the device interface 150 interfaces the memory
  • the controller 100 and the memory device 200 and enables various kinds of signals to be transmitted and received between them.
  • the device interface 150 is connected to the ECC circuit 160, the address counter 180 and the bus 190.
  • the ECC circuit 160 receives write data received from the host 2, by way of the data buffer 120.
  • the ECC circuit 160 adds an error correcting code to the write data.
  • the ECC circuit 160 supplies the write data, including the error correcting code added thereto, to either the data buffer 120 or the device interface 150.
  • the ECC circuit 160 receives data supplied from the memory device 200, by way of the device interface 150.
  • the data are data stored in a memory cell group of the memory cell array 210.
  • the memory cell group is a set of memory cells MC and corresponds to a read unit at the time of read operations .
  • the ECC circuit 160 determines whether the data received from the memory device 200 contains an error. If the received data contains an error, the ECC circuit performs error correction for the received data, using the error correcting code.
  • the ECC circuit 160 supplies the data subjected to the error correction to the data buffer 120, the device interface 150, etc. If it is determined that data read from the memory device 200 contains an error, the ECC circuit 160 supplies an error notification signal "Error" to the fuse controller 170.
  • the ECC circuit 160 supplies a notification signal "No_Error" to the host 2.
  • the fuse controller 170 generates redundancy address information (by which the memory cells used for storing the data are replaced with redundancy cells) and a fuse program voltage generating signal in accordance with the number of times an error occurs (in the present embodiment, the number of times is equal to the number of times an error is successfully corrected by the ECC circuit 160) .
  • the fuse controller 170 comprises a fail address register 170a, an address comparator 170b, a fail count register 170c, a fuse address generator 170d and a fuse program voltage generator 17Oe.
  • the fail address generator 170a stores, as fail address information, address information representing the memory cell array 210 in which an error is detected by the ECC circuit 160.
  • address information representing the memory cell array 210 in which an error is detected by the ECC circuit 160.
  • the address of the memory cell array 210 may be referred to simply as the "address" in the description of the present embodiment.
  • the "address” is information representing where the memory cell MC of the memory cell array 210 or the memory cell group is located.
  • the fail address register 170a can store a
  • the fail address register 170a may be either a volatile memory or a nonvolatile memory.
  • the address comparator 170b compares an address which the ECC circuit 160 determines as containing an error with the address stored in the fail address register 170a. To be more specific, the address comparator 170b receives an address representing the location of an error from the address counter 180, if it receives error notification signal "Error" from the ECC circuit 160. Subsequently, the address comparator 170b determines whether the received address information is stored in the fail address register 170a.
  • the fail count register 170c stores data representing the number of times an error occurs at the defective address stored in the fail address register 170a (the number of times is equal to the number of times the error is successfully corrected) . Upon detection of an error by the ECC circuit 160, the fail count register 170c increases the number of times an error is repeated at the address corresponding to the error. When the number of times an error occurs (the number of times the error is successfully corrected) is increased and reaches a threshold stored in the fail counter register 170c, the fail count register 170c transmits signal "Err_max" to the fuse address
  • the fail count register 170c may be either a volatile memory or a nonvolatile memory.
  • the fuse address generator 170d generates redundancy address
  • the fuse address register 170d upon reception of signal "Err_max" from the fail count register 170c, the fuse address register 170d generates a fuse address (redundancy address
  • the fuse address generator 170d may be configured to generate a fuse address or addresses in such a manner that a memory cell group is replaced with a redundancy cell group or a single memory cell is replaced with a redundancy cell. In connection with the present embodiment, reference was made to the case where the memory system 1 replaces a memory cell with a redundancy cell.
  • the fuse program voltage generator 170e If it is determined that the number of times the error occurs at the defective address has reached the threshold, the fuse program voltage generator 170e generates a fuse program voltage generating signal. Upon receipt of the fuse program voltage generating signal, the internal voltage generator 260 of the memory device 200 generates a voltage on which a fuse programming operation is performed for the column fuse 212 and/or the row fuse 214.
  • the fuse controller 170 may comprises a controller which controls the fail address register 170a, the address comparator 170b, the fail count register 170c, the fuse address generator 170d and the fuse program voltage generator 170e.
  • the address counter 180 stores address information used for the scrub operation mentioned later.
  • the memory device 200 of the embodiment comprises a memory cell array (which may be referred to simply as a "cell array") 210, a sense amplifier/write driver 211, a column fuse 212, a row decoder 213, a row fuse 214, an array controller 215, a DQ circuit 230, a controller 240, a command/address circuit 250, and an interval voltage generator 260.
  • the memory cell array 210 is an MRAM comprising a plurality of memory cells arranged in a two-dimensional matrix pattern.
  • the memory cell array 210 comprises an ordinary cell array (which may be referred to as an
  • the ordinary cell array 210a and the redundancy cell array 210b include a plurality of memory cells MC.
  • the ordinary cell array 210a and the redundancy cell array 210b are the same in terms of the structure of the memory cells MC.
  • the ordinary cell array 210a is a basic memory area used for a normal read operation or a normal write operation.
  • the redundancy cell array 210b is a memory area for remedying a defect of the ordinary cell array 210a. For example, let us assume that the ordinary cell array 210a has an inherent defect and this defect is found in the test operation of the memory system 1
  • the memory cell MC where an error occurs is replaced with a memory cell of the redundancy cell array 210b.
  • the inherently defective memory cell MC is prevented from being used.
  • the replacement of a defective memory cell may be performed in a scrub operation performed after the shipping of the memory system 1. Where redundancy information corresponding to an address to be accessed is stored in the column fuse 212 and/or row fuse 214, the redundancy cell array 210b is accessed. Where redundancy information corresponding to the address to be accessed is not stored in the column fuse 212 or row fuse 214, the ordinary cell array 210a is accessed.
  • a memory cell MC provided in the ordinary cell array 210a is referred to as an ordinary cell as well, and a memory cell provided in the redundancy cell array 210b is referred to as a redundancy cell array as well.
  • the specific configuration of the memory cell array 210 will be described later.
  • the sense amplifier/write driver (which is also referred to as a bit line controller) 211 is arranged to extend in the bit line direction of the memory cell array 210.
  • the sense amplifier/write driver 211 includes a sense amplifier and a write driver.
  • the sense amplifier is connected to bit lines BL, and reads data from a memory cell MC when it detects a current flowing through the memory cell MC connected to a selected word line WL.
  • the write driver is connected to the bit lines BL, and writes data in the memory cell MC when it supplies a current to the memory cell MC connected to a selected word line WL.
  • the sense/write driver 211 controls the bit line BL and the source line SL based on control signals supplied from the array controller 215.
  • the data exchange between the sense amplifier/write driver 211 and an external input/output terminal (also referred to as a data line) DQ (not shown) is performed through the data bus 220 and the DQ circuit 230.
  • the column fuse 212 is an electrically programmable nonvolatile storage such as an anti-fuse or an electric fuse, and stores column redundancy information on the memory cell array 210.
  • the column fuse 212 supplies, for example, the column redundancy information to the array controller 215 and the sense amplifier/write driver 211.
  • the array controller 215 accesses the corresponding redundancy cell.
  • the column redundancy information includes bit line pair information (i.e., information on a bit line and a source line), column information, etc. If a defective memory cell is found in a test before shipping in a method described below, the column redundancy information is stored in the column fuse 212.
  • the row decoder 213 is arranged to extend in the word line direction of the memory cell array 210 and is
  • the row decoder 213 decodes the address of the command address signal CAi supplied from the command/address circuit 250, and selects a word line based on a word line selection signal.
  • the row fuse 214 is an electrically programmable nonvolatile storage such as an anti-fuse or an electric fuse, and stores row redundancy information on the memory cell array 210.
  • the row fuse 214 supplies the row
  • the row redundancy information includes word line information, row information, etc. If a defective memory cell is found in a test before shipping in a method described below, the row redundancy information is stored in the row fuse 214.
  • the column fuse 212 and the row fuse 214 may be provided as a single fuse (storage area) . If the column redundancy information and the row redundancy information need not be discriminated from each other, they will be referred to simply as redundancy information.
  • the array controller 215 functions as a column decoder and controls the bit lines BL and the source lines SL.
  • the DQ circuit 230 enables data to be exchanged between the memory controller 100 and the memory device 200 by way of an external input/output terminal DQ (also referred to as a data line) , not shown.
  • DQ external input/output terminal
  • the controller 240 receives various external control signals (such as a chip select signal CS, a clock signa'l CK, a clock enable signal CKE, etc.) supplied by way of the device interface 150 of the memory controller 100.
  • the controller 240 controls the command address circuit 250 and discriminates addresses and commands from each other.
  • the controller 240 performs the overall control of the memory device 200 and controls the access to the memory cell array 210 described later.
  • the command address circuit 250 receives a command address signal CAi supplied thereto by way of the device interface 150 of the memory controller 100.
  • the command address circuit 250 transfers the command address signal DCAi to the row decoder 213 and array controller 215.
  • the internal voltage generator 260 generates an internal voltage (e.g., a boosted voltage higher than a power supply voltage) required for each operation of the memory device 200. Controlled by the controller 240, the internal voltage generator 260 performs a voltage boost operation and generates a required voltage. Upon receipt of the fuse program voltage generating signal, the internal voltage generator 260 generates a voltage on which
  • redundancy information can be written in the column fuse 212 and the row fuse 214.
  • the memory cell array 210 comprises a plurality of memory cells arranged in a two-dimensional matrix pattern.
  • the word lines WL extending in the row direction and the bit lines BL extending in the column direction intersect each other.
  • the adjacent two bit lines BL form a pair, and a memory cell MC is provided at the intersection between word line WL and the bit line pair (in the present embodiment, the bit line pair will be referred to as bit line BL and source line SL for
  • the memory cell array 210 comprises a plurality of word lines WLO to WLi-1, a plurality of bit lines BL0 to BLj-1 and a plurality of source lines SL0 to SLj-1.
  • One of the rows of the memory cell array is connected to one word line WL, and one of the columns of the memory cell array is connected to one pair formed by one bit line BL and one source line SL.
  • Each memory cell MC includes a magnetic tunnel junction (MTJ) element 20 and a selection transistor 21.
  • the selection transistor 21 is formed of an N-channel MOSFET, for example.
  • One end of the MTJ element 20 is connected to bit line BL, and the other end thereof is connected to the drain of the selection transistor 21.
  • the gate of the selection transistor 21 is connected to word line L, and the source thereof is connected to source line SL.
  • the ordinary cell array 210a and the redundancy cell array 210b have substantially the same basic configuration as described above, although the differences between them were not mentioned.
  • FIG. 3 A schematic description will be given with reference to FIG. 3 of the configuration of a memory cell according to the embodiment .
  • one end of the MTJ element 20 of the memory cell MC of the embodiment is connected to bit line BL, and the other end of the MTJ element 20 is
  • the MTJ element 20 utilizing the tunneling magnetoresistive (TMR) effect has a stack structure
  • the MTJ element stores digital data by utilization of variations in the magnetic resistance caused by a spin-polarized tunneling effect.
  • the MTJ element 20 can be set in a low-resistance state or a high-resistance state in accordance with the magnetic orientations of the two ferromagnetic layers F and P. For example, if the low-resistance state is defined as data "0" and the high-resistance state is defined as data "1", l ⁇ bit data can be recorded in the MTJ element 20.
  • the low-resistance state may be defined as data "1” and the high-resistance state may be defined as data " 0 " .
  • the MTJ element is formed, for example, by stacking a fixing layer (pin layer) P, a tunnel barrier layer B and a recording layer (free layer) F in the order mentioned.
  • The. pin layer P and the free layer F are made of a
  • the pin layer P is a layer in which the magnetic orientation is fixed, while the free layer F is a layer in which the magnetic orientation is variable and which stores data utilizing the magnetic orientation.
  • FIG. 4 A description will be given with reference to FIG. 4 of the state transition of the memory system according to the embodiment.
  • thin arrows indicate how the state of the MRAM transitions when a command is received from the host 2.
  • thick arrows indicate how the state of the MRAM transitions automatically, without any command received from the host 2, at the end of a
  • the memory system 1 transitions to the power-on state (state 1) .
  • the memory system 1 transitions to a resetting state (state 2) .
  • the host 2 can supply the resetting command to the memory system 1 when this memory system is either in the power-on state and or in the idle state .
  • the memory system 1 transitions to a scrubbing state (state 4) .
  • the host 2 can supply the scrub command to the memory system 1 when this memory system is in the idle state (state 3) .
  • the details of the scrubbing operation will be described later.
  • the memory system 1 transitions to an active state (state 5) .
  • the host 2 can supply the activate command to the memory system 1 when this memory system is in the idle state (state 3) .
  • the memory system automatically transitions to the active state (state 5) .
  • MRR/MRW mode register reading/writing command
  • the host 2 can supply the mode register reading/writing command to the memory system 1 when this memory system is in the active state (state 5) .
  • the “mode register reading” is reading data from the status register 130.
  • the “mode register writing” is writing data in the status register 130.
  • the status register 130 stores data representing the operating state etc. of the memory device 200. For example, the status register 130 stores data representing the kind of a burst, the length of the burst, the latency period, etc.
  • the memory system 1 transitions to a preactivating state (state 8) .
  • the host 2 can supply the preactive command to the memory system 1 when this memory system is either in the active state (state 5) and or in the idle state (state 3) .
  • the state transition diagram shown in FIG. 4 is an example, and the state transition may be performed in a different way.
  • a scrub command can be supplied to a system other than the DDRX system or LPDDRx system when that system is in the idle state, and a scrub
  • the scrub operation is an operation the memory
  • controller 100 performs when the user is not performing the ordinary read/write operation.
  • the memory cells MC of the ordinary cell array 210a are
  • the memory controller 100 corrects the error and stores the correct data in the memory cell MC.
  • a current is supplied to the MTJ element 20 when data is written in the memory cell MC. Therefore, the MTJ elements 20 may deteriorate with time in accordance with an increase in the number of times a write operation is performed. For example, the memory cell MC which undergoes an error many times (which undergoes successful error correction by the same number of times) is very likely to be a cell that becomes defective with time. Even if correct data is written back into such a memory cell MC, it may not be properly written.
  • the memory cell MC which undergoes an error more than a threshold (which undergoes successful error correction by the same number of times) is treated as a secondary defective cell.
  • Such a memory cell MC should be desirably replaced with a redundancy cell MC.
  • the host 2 can issue a scrub command to the memory system 1 when this memory system is in the idle state. Upon receipt of the scrub command from the host 2 , the memory system 1 starts the scrub operation.
  • the device Upon receipt of the scrub command, the device
  • interface 150 reads address n of the memory cell array 210 from the address counter 180.
  • the device interface 150 issues address n and a read command to the memory device 200.
  • the memory device 200 reads data from the address n of the memory cell based on the received address n and the read command. Then, the memory device 200 supplies the read data d to the memory controller 100 through the data bus 220, DQ circuit 230 and data line DQ (not shown) . As a result, the device interface 150 receives data d by way of the data line DQ.
  • the device interface 150 supplies data d to the ECC circuit 160, for error detection of data d.
  • the ECC circuit 160 determines whether the received data d contains an error. If an error is detected in data d, the ECC circuit 160 performs error correction for data d,. using an error correcting code.
  • the ECC circuit 160 supplies an error notification signal "Error" to the fuse controller 170.
  • the address comparator 170b receives address n from the address counter 180, if it receives error notification signal
  • the address comparator 170b determines whether address n is stored in the fail address register 170a. In other words, the address comparator 170b
  • the address comparator 170b determines that address n is not stored in the fail address register 170a (No in Step S1004) , the address comparator 170b stores the
  • the fail count register 170c increases the count M corresponding to address n by one (count M: the number of times an error occurs or the number of times the error is successfully corrected) .
  • the fail count register 170c determines whether count M corresponding to address n has reached threshold Mmax. This threshold Mmax can be determined in any desirable way. The threshold Mmax is stored, for example, in the fail count register 170c.
  • the memory cell MC corresponding to address n is regarded as having deteriorated with time and being incapable of storing accurate data. It is therefore desired that such a memory cell should not be used and a memory cell MC of the redundancy cell array 210b should be used instead. A more specific description will be given on this point .
  • the fail count register 170c determines that count M corresponding to address n has reached threshold Mmax (YES in Step S1007) , the fail count register 170c supplies signal "Err_max" to the fuse address generator 170d and the fuse program voltage generator 170e.
  • the fuse address generator 170d Upon receipt of signal "Err_max", the fuse address generator 170d generates fuse addresses designating the column fuse 212 and the row fuse 214, based on address n. The fuse address generator 170d supplies the generated fuse addresses (redundancy address information) to the memory device 200 by way of the device interface 150.
  • the fuse program voltage generator 17Oe Upon receipt of signal "Err_max", the fuse program voltage generator 17Oe generates a signal that causes the internal voltage generator to generate a voltage used for a fuse program (namely, a fuse program voltage generating signal) .
  • the fuse program voltage generator 170e supplies the generated fuse program voltage generating signal to the memory device 200 by way of the device interface 150.
  • the controller 24 of the memory device 200 Upon receipt of the fuse address and the fuse program voltage generating signal, the controller 24 of the memory device 200 executes a fuse program for the column fuse 212 and the row fuse 214. As a result, redundancy information is written in the column fuse 212 and the row fuse 214, thereby enabling access to the memory cell MC of the redundancy cell array 210b, not to the memory cell MC of the ordinary cell array, when address n should be accessed.
  • the memory cell MC of the ordinary cell array is treated as a memory cell MC which should not be used, like an inherently defective cell.
  • Replacing address n with redundancy cell array 210b as above may be referred to as replacement processing.
  • embodiment enables remedying secondary defective cells which become defective with time.
  • the ECC circuit 160 After the end of the fuse program in Step S1008 or if the fail register 170c determines that count M of address n has not reached threshold Mmax (No in Step S1007) , the ECC circuit 160 transmits error- corrected data de to the device interface 150.
  • the device interface 150 supplies the error- corrected data de, address n and a write command to the memory device 200.
  • the controller 240 Upon receipt of the write command and address n, the controller 240 writes data de received through the DQ circuit 230 back into the memory cell array 210. As a result, error-corrected accurate data is written in the memory cell array 210.
  • the related data is written in the memory cell MC of the redundancy cell array 210b.
  • the ECC circuit 160 supplies a notification signal "No_Error" to the host 2.
  • the device interface 150 determines whether address n stored in the address counter 180 is the predetermined one. If the device interface 150 determines that address n stored in the address counter 180 is predetermined address nmax, the scrub operation is ended (YES in Step S1011) .
  • Step S1011 the memory system 1 automatically transitions to the idle state. If the CPU 140 determines that address n stored in the address counter 180 is not predetermined address nmax (NO in Step S1011) , the flow returns to Step S1001.
  • the address nmax can be determined in any desirable way. To determine address nmax is to define the number of addresses that starts the error detection in the scrub operation. The larger the number of addresses is, the longer the time required for the scrub operation becomes. Where the time required for the scrub operation is
  • address nmax may be properly changed.
  • the scrub operation may be interrupted in response to a request made by the user.
  • the scrub operation may be performed for a single address by entering a scrub command only once, instead of performing error detection for a plurality of addresses in the scrub operation.
  • FIG. 6 A description will be given with reference to FIG. 6 of a specific example of an operation which the memory- system of the embodiment performs when an error is not generated.
  • the memory system 1 starts the scrub operation upon receipt of a scrub command from the host 2 (corresponding to Step S1001) .
  • Step S1003 data is supplied to the ECC circuit 160, and the ECC circuit 160 starts an error detection operation (corresponding to Step S1003).
  • Step S1003 If the ECC circuit 160 determines that the data contains no error, it notifies the host 2 at time T3 that there is no error (No_Error) (corresponding to Step S1003) . [Time T4]
  • the device interface 150 increases the address of the address counter 180 by one to determine the address for which error detection is performed next (corresponding to Steps S1010 and S1011) . Then, the device interface 150 determines whether address n stored in the address counter 180 is the predetermined one.
  • the host 2 becomes ready to receive a scrub command at time T5.
  • the period between the time when the scrub command is input and the time when the next scrub command can be input is defined as tSCRIl.
  • the host 2 can issue the next scrub command to the memory system 1 when period tSCRIl elapses after the host issues the first scrub command.
  • the memory system 1 After the host 2 receives a scrub command at time T5 or if the address of the address counter 180 is increased by one at time T4 and determination is made that the predetermined address has not yet been reached, the memory system 1 performs operations similar to those executed at times Tl to T3.
  • FIG. 7 A description will be given with reference to FIG. 7 of a specific example of an operation performed when an error is generated.
  • the memory system 1 performs similar operations to those executed at times TO to T2. [Time T13]
  • the ECC circuit 160 Upon detection of an error in data, the ECC circuit 160 transmits error notification signal "Error" indicative of an error to the fuse controller 170 (corresponding to Step S1003) .
  • the memory system 1 performs similar
  • the memory system 1 If the number of times an error occurred in the past (the number of times the error was successfully corrected) with respect to the address for which an error currently occurs is smaller than a threshold, the memory system 1 writes data whose error is corrected by the ECC circuit 160 in the memory cell array 210 at time T14 (corresponding to Step S1009) .
  • the memory system 1 performs similar operations to those executed at times T4 to T7.
  • the time tSCRI2 required in the case where an error occurs and replacement is not performed is longer than the time tSCRIl required in the case where an error does not occur. This is because error-corrected data has to be written in the case where an error occurs and replacement is not performed.
  • the memory system 1 performs a similar operation to that executed at time T13. [Time T20]
  • the fuse control circuit 170 issues signal "Err_max" (corresponding to Step S1007) .
  • a fuse program address is issued based on signal "Err_max" and the address where the error has occurred (corresponding to Step S1008) .
  • a fuse program voltage generating signal is generated based on signal "Err_max" (corresponding to Step S1008) .
  • a fuse program operation is performed in the memory device 200 (corresponding to Step S1008) .
  • the memory system 1 stands by until the end of the fuse program operation and then performs a similar
  • the memory system 1 performs similar operations to those executed at times T4 and T5.
  • the time tSCRI3 required in the case where an error occurs and replacement is performed is longer than the time tSCRI2 required in the case where an error occurs and replacement is not performed. This is because the fuse program operation has to be performed in the case where an error occurs and replacement is performed.
  • the memory system performs a scrub operation if the user does not request an ordinary read/write operation.
  • the memory system performs an error check with respect to the memory cells MC of the memory cell array. If an error is detected in data, the address information corresponding to the error and the number of times an error occurred in the past at the same address are stored in the memory controller. If the number of times an error occurs in the past reaches a setting value determined by the user, the memory cell in question is replaced with the redundancy cell array.
  • the MRAM may deteriorate with time and become incapable of storing accurate data. Continuous use of such a memory cell MC is not desirable in terms of the reliability of the memory system.
  • the memory system records the address where an error occurs and the number of times the error occurs (the number of times the error is successfully corrected) at the same address .
  • the memory system 1 can detect a memory cell that becomes incapable of storing accurate data due to the characteristic deterioration with time.
  • the memory system 1 replaces the memory cell incapable of storing- accurate data with a redundancy cell. Accordingly, the memory system of the present embodiment is very reliable in operation.
  • a defective cell can be dynamically replaced with a redundancy cell even after shipping.
  • the memory cell array 210 having a potentially defective cell i.e., a cell having poor quality
  • the memory system need not be subjected to strict screening before it is shipped.
  • the stress imposed on the memory system at the time of screening can be reduced. Accordingly, the memory system does not deteriorate before it is used actually, and a memory system that ensures a reliable operation is realized.
  • the storage is an MRAM.
  • the storage may be realized as another type of resistance change memory having similar structural elements to those described above, such as a phase change random access memory (PCRAM) or a resistive random access memory (ReRAM) .
  • PCRAM phase change random access memory
  • ReRAM resistive random access memory
  • the memory system 1 described above may be applicable to a DRAM instead of an MRAM.
  • bit line pair was described as having bit line BL and source line SL for descriptive purposes.
  • bit line pair may be made up of a first bit line and a second bit line.
  • the column fuse 212 and the row fuse 214 are used to access a redundancy cell, but this structure is merely an example.
  • one of the column fuse 212 and the row fuse 214 is sufficient to access the redundancy cell, and an operation similar to that described above can be performed in this case as well.
  • the memory system 1 is designed to connect one memory device 200 to the memory controller 100.
  • this is merely an example.
  • the memory system 1 may be designed to connect a plurality of memory devices 200 to the memory controller 100.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Abstract

According to one embodiment, a memory system includes: a first memory cell area where a first memory cell is provided; a second memory cell area where a second memory cell is provided; an ECC circuit which corrects an error of data stored by the first memory cell; and a control circuit which replaces the first memory cell with the second memory cell if the number of times an error is successfully corrected in the first memory cell reaches a first value.

Description

D E S C R I P T I O N
SEMICONDUCTOR STORAGE DEVICE CROSS-REFERENCE TO RELATED APPLICATIONS This application is based upon and claims the benefit of priority from prior U.S. Provisional Application No. 62/130,484, filed March 9, 2015, the entire contents of which are incorporated herein by reference .
FIELD
The present embodiment relates to a semiconductor storage device.
BACKGROUND
A magnetoresistive random access memory (MRAM) is a memory device wherein a memory cell for storing information employs a magnetic element having a magnetoresistive effect. The MRAM receives attention as a next-generation memory device featuring a high-speed operation, a large storage capacity, and non-volatility. In the meantime, researches and developments are being made to replace a dynamic random access memory (DRAM) and a static random access memory (SRAM) with the MRAMs . In order to lower the development cost and enable easy replacement, the MRAM should desirably operate on the same specifications as the DRAM and SRAM.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a block diagram showing an exemplary
configuration of a memory system according to an
embodiment . FIG. 2 is a circuit diagram showing an exemplary configuration of a memory cell array of the memory system of the embodiment .
FIG. 3 illustrates a basic configuration of a memory cell of the memory system of the embodiment.
FIG. 4 is a state diagram illustrating the memory system of the embodiment .
FIG. 5 is a flowchart illustrating a scrub operation of the memory system of the embodiment.
FIG. 6 is a waveform chart illustrating the scrub operation of the memory system of the embodiment.
FIG. 7 is a waveform chart illustrating the scrub operation of the memory system of the embodiment.
DETAILED DESCRIPTION
In general , according to one embodiment , a memory system includes:
a first memory cell area where a first memory cell is provided;
a second memory cell area where a second memory cell is provided;
an ECC circuit which corrects an error of data stored by the first memory cell; and
a control circuit which replaces the first memory cell with the second memory cell if the number of times an error in the first memory cell is successfully corrected reaches a first value.
A description will now be given of embodiments. In the description below, structural elements having substantially the same functions and configurations will be denoted by the same reference symbols, and a repetitive description will be given only where necessary. Each of the embodiments described below merely shows an exemplary apparatus and method that implement the technical ideas of the
embodiments . The technical ideas of the embodiments are not limited to the element materials, shapes, structures, arrangements etc. described below. The technical ideas of the embodiments may be varied within the range defined in the claims.
Each of the function blocks can be implemented in the form of hardware, computer software or a combination of them. In order to clarify what are specifically meant by the function blocks, the blocks will be explained below in terms of their functions. Whether the functions are
implemented as hardware or software is a matter of specific implementation or depends upon design restrictions imposed on the entire system. Those skilled in the art can
implement the functions in various ways for each of the embodiments, and how to implement the functions is within the range of the embodiments .
(Embodiment)
<1> Configuration
The present embodiment will be described, referring to the case where an MRA is applied to a memory cell array. <1-1> Configuration of Memory System A schematic description will be given with reference to FIG. 1 of the basic configuration of a memory system according to the embodiment. The memory system 1 comprises a memory controller 100 and a memory device 200.
<l-2> Configuration of Memory Controller
The memory controller 100 of the embodiment receives commands from a host 2. In accordance with the commands, the memory controller 100 reads data from the memory device 200 and writes data in the memory device 200.
The memory controller 100 is provided with a host interface (host I/F) 110, a data buffer 120, a status register 130, a central processing unit (CPU) 140, a device interface (I/F) 150, an error correcting code (ECC) circuit 160, a fuse controller 170, and an address counter 180.
The host interface 110 is connected to the host
(external apparatus) 2, such as a personal computer, and is further connected to the bus 190 of the memory controller 100. Through the host interface 110, data are transmitted and received between the host 2 and the memory system 1.
The data buffer 120 is connected to the host interface 110 and further to the bus 190. The data buffer 120
receives, by way of the host interface 110, data
transmitted from the host 2 to the memory system 1, and temporarily stores the data. Also, the data buffer 120 temporarily stores data which are to be transmitted from the memory system 1 to the host 2 by way of the host interface 110. The data buffer 120 may be either a volatile memory or a nonvolatile memory.
The CPU 140 controls the overall operations of the memory system 1. The CPU 140 performs predetermined
processing for the memory device 200 in accordance with commands received from the host 2 , for example .
The status register 130 is, for example, a volatile memory, and stores setting information, commands executed by the CPU 140, and status signals. The status register 130 may be either a volatile memory or a nonvolatile memory.
The device interface 150 interfaces the memory
controller 100 and the memory device 200 and enables various kinds of signals to be transmitted and received between them. The device interface 150 is connected to the ECC circuit 160, the address counter 180 and the bus 190.
The ECC circuit 160 receives write data received from the host 2, by way of the data buffer 120. The ECC circuit 160 adds an error correcting code to the write data. The ECC circuit 160 supplies the write data, including the error correcting code added thereto, to either the data buffer 120 or the device interface 150.
The ECC circuit 160 receives data supplied from the memory device 200, by way of the device interface 150. The data are data stored in a memory cell group of the memory cell array 210. The memory cell group is a set of memory cells MC and corresponds to a read unit at the time of read operations . The ECC circuit 160 determines whether the data received from the memory device 200 contains an error. If the received data contains an error, the ECC circuit performs error correction for the received data, using the error correcting code. The ECC circuit 160 supplies the data subjected to the error correction to the data buffer 120, the device interface 150, etc. If it is determined that data read from the memory device 200 contains an error, the ECC circuit 160 supplies an error notification signal "Error" to the fuse controller 170. If it is
determined that data read from the memory device 200 does not contain an error, the ECC circuit 160 supplies a notification signal "No_Error" to the host 2.
The fuse controller 170 generates redundancy address information (by which the memory cells used for storing the data are replaced with redundancy cells) and a fuse program voltage generating signal in accordance with the number of times an error occurs (in the present embodiment, the number of times is equal to the number of times an error is successfully corrected by the ECC circuit 160) .
The fuse controller 170 comprises a fail address register 170a, an address comparator 170b, a fail count register 170c, a fuse address generator 170d and a fuse program voltage generator 17Oe.
The fail address generator 170a stores, as fail address information, address information representing the memory cell array 210 in which an error is detected by the ECC circuit 160. For the sake of simplicity, the address of the memory cell array 210 may be referred to simply as the "address" in the description of the present embodiment. The "address" is information representing where the memory cell MC of the memory cell array 210 or the memory cell group is located. The fail address register 170a can store a
plurality of pieces of defective address information. The fail address register 170a may be either a volatile memory or a nonvolatile memory.
The address comparator 170b compares an address which the ECC circuit 160 determines as containing an error with the address stored in the fail address register 170a. To be more specific, the address comparator 170b receives an address representing the location of an error from the address counter 180, if it receives error notification signal "Error" from the ECC circuit 160. Subsequently, the address comparator 170b determines whether the received address information is stored in the fail address register 170a.
The fail count register 170c stores data representing the number of times an error occurs at the defective address stored in the fail address register 170a (the number of times is equal to the number of times the error is successfully corrected) . Upon detection of an error by the ECC circuit 160, the fail count register 170c increases the number of times an error is repeated at the address corresponding to the error. When the number of times an error occurs (the number of times the error is successfully corrected) is increased and reaches a threshold stored in the fail counter register 170c, the fail count register 170c transmits signal "Err_max" to the fuse address
generator 170d and the fuse program voltage generator 170e. The fail count register 170c may be either a volatile memory or a nonvolatile memory.
If the number of times the error occurs at the
defective address (i.e., the number of times the error is successfully corrected) reaches the threshold, the fuse address generator 170d generates redundancy address
information by which the memory cell MC corresponding to the defective address is replaced with a redundancy cell. More specifically, upon reception of signal "Err_max" from the fail count register 170c, the fuse address register 170d generates a fuse address (redundancy address
information) of a column fuse 212 and/or a row fuse 214 so that the corresponding address is replaced with the address of a redundancy cell. The fuse address generator 170d may be configured to generate a fuse address or addresses in such a manner that a memory cell group is replaced with a redundancy cell group or a single memory cell is replaced with a redundancy cell. In connection with the present embodiment, reference was made to the case where the memory system 1 replaces a memory cell with a redundancy cell.
If it is determined that the number of times the error occurs at the defective address has reached the threshold, the fuse program voltage generator 170e generates a fuse program voltage generating signal. Upon receipt of the fuse program voltage generating signal, the internal voltage generator 260 of the memory device 200 generates a voltage on which a fuse programming operation is performed for the column fuse 212 and/or the row fuse 214.
The fuse controller 170 may comprises a controller which controls the fail address register 170a, the address comparator 170b, the fail count register 170c, the fuse address generator 170d and the fuse program voltage generator 170e.
The address counter 180 stores address information used for the scrub operation mentioned later.
<l-3> Configuration of Memory Device
The memory device 200 of the embodiment comprises a memory cell array (which may be referred to simply as a "cell array") 210, a sense amplifier/write driver 211, a column fuse 212, a row decoder 213, a row fuse 214, an array controller 215, a DQ circuit 230, a controller 240, a command/address circuit 250, and an interval voltage generator 260.
The memory cell array 210 is an MRAM comprising a plurality of memory cells arranged in a two-dimensional matrix pattern. The memory cell array 210 comprises an ordinary cell array (which may be referred to as an
ordinary memory area as well) 210a, and a redundancy cell array (which may be referred to as a redundancy memory area as well) 210b. Each of the ordinary cell array 210a and the redundancy cell array 210b includes a plurality of memory cells MC. The ordinary cell array 210a and the redundancy cell array 210b are the same in terms of the structure of the memory cells MC. The ordinary cell array 210a is a basic memory area used for a normal read operation or a normal write operation. The redundancy cell array 210b is a memory area for remedying a defect of the ordinary cell array 210a. For example, let us assume that the ordinary cell array 210a has an inherent defect and this defect is found in the test operation of the memory system 1
performed before shipping. In this case, the memory cell MC where an error occurs is replaced with a memory cell of the redundancy cell array 210b. By this replacement, the inherently defective memory cell MC is prevented from being used. As will be described later, the replacement of a defective memory cell may be performed in a scrub operation performed after the shipping of the memory system 1. Where redundancy information corresponding to an address to be accessed is stored in the column fuse 212 and/or row fuse 214, the redundancy cell array 210b is accessed. Where redundancy information corresponding to the address to be accessed is not stored in the column fuse 212 or row fuse 214, the ordinary cell array 210a is accessed. In the specification, a memory cell MC provided in the ordinary cell array 210a is referred to as an ordinary cell as well, and a memory cell provided in the redundancy cell array 210b is referred to as a redundancy cell array as well. The specific configuration of the memory cell array 210 will be described later.
The sense amplifier/write driver (which is also referred to as a bit line controller) 211 is arranged to extend in the bit line direction of the memory cell array 210. The sense amplifier/write driver 211 includes a sense amplifier and a write driver. The sense amplifier is connected to bit lines BL, and reads data from a memory cell MC when it detects a current flowing through the memory cell MC connected to a selected word line WL. The write driver is connected to the bit lines BL, and writes data in the memory cell MC when it supplies a current to the memory cell MC connected to a selected word line WL. The sense/write driver 211 controls the bit line BL and the source line SL based on control signals supplied from the array controller 215. The data exchange between the sense amplifier/write driver 211 and an external input/output terminal (also referred to as a data line) DQ (not shown) is performed through the data bus 220 and the DQ circuit 230.
The column fuse 212 is an electrically programmable nonvolatile storage such as an anti-fuse or an electric fuse, and stores column redundancy information on the memory cell array 210. The column fuse 212 supplies, for example, the column redundancy information to the array controller 215 and the sense amplifier/write driver 211. When the column fuse 212 supplies the column redundancy information to the array controller 215, the array controller 215 accesses the corresponding redundancy cell. The column redundancy information includes bit line pair information (i.e., information on a bit line and a source line), column information, etc. If a defective memory cell is found in a test before shipping in a method described below, the column redundancy information is stored in the column fuse 212.
The row decoder 213 is arranged to extend in the word line direction of the memory cell array 210 and is
connected to the word lines of the memory cell array 210. The row decoder 213 decodes the address of the command address signal CAi supplied from the command/address circuit 250, and selects a word line based on a word line selection signal.
The row fuse 214 is an electrically programmable nonvolatile storage such as an anti-fuse or an electric fuse, and stores row redundancy information on the memory cell array 210. The row fuse 214 supplies the row
redundancy information to the row decoder 213. When the row fuse 214 supplies the row redundancy information to the row decoder 213, the row decoder 213 accesses the corresponding redundancy cell. The row redundancy information includes word line information, row information, etc. If a defective memory cell is found in a test before shipping in a method described below, the row redundancy information is stored in the row fuse 214.
The column fuse 212 and the row fuse 214 may be provided as a single fuse (storage area) . If the column redundancy information and the row redundancy information need not be discriminated from each other, they will be referred to simply as redundancy information.
The array controller 215 functions as a column decoder and controls the bit lines BL and the source lines SL.
The DQ circuit 230 enables data to be exchanged between the memory controller 100 and the memory device 200 by way of an external input/output terminal DQ (also referred to as a data line) , not shown.
The controller 240 receives various external control signals (such as a chip select signal CS, a clock signa'l CK, a clock enable signal CKE, etc.) supplied by way of the device interface 150 of the memory controller 100. The controller 240 controls the command address circuit 250 and discriminates addresses and commands from each other. The controller 240 performs the overall control of the memory device 200 and controls the access to the memory cell array 210 described later.
The command address circuit 250 receives a command address signal CAi supplied thereto by way of the device interface 150 of the memory controller 100. The command address circuit 250 transfers the command address signal DCAi to the row decoder 213 and array controller 215.
The internal voltage generator 260 generates an internal voltage (e.g., a boosted voltage higher than a power supply voltage) required for each operation of the memory device 200. Controlled by the controller 240, the internal voltage generator 260 performs a voltage boost operation and generates a required voltage. Upon receipt of the fuse program voltage generating signal, the internal voltage generator 260 generates a voltage on which
redundancy information can be written in the column fuse 212 and the row fuse 214.
<l-4> Memory Cell Array
A description will be given with reference to FIG. 2 of the configuration of the memory cell array according to the embodiment. As described above, the memory cell array 210 comprises a plurality of memory cells arranged in a two-dimensional matrix pattern. The word lines WL extending in the row direction and the bit lines BL extending in the column direction intersect each other. The adjacent two bit lines BL form a pair, and a memory cell MC is provided at the intersection between word line WL and the bit line pair (in the present embodiment, the bit line pair will be referred to as bit line BL and source line SL for
descriptive purposes) . More specifically, the memory cell array 210 comprises a plurality of word lines WLO to WLi-1, a plurality of bit lines BL0 to BLj-1 and a plurality of source lines SL0 to SLj-1. One of the rows of the memory cell array is connected to one word line WL, and one of the columns of the memory cell array is connected to one pair formed by one bit line BL and one source line SL.
Each memory cell MC includes a magnetic tunnel junction (MTJ) element 20 and a selection transistor 21. The selection transistor 21 is formed of an N-channel MOSFET, for example.
One end of the MTJ element 20 is connected to bit line BL, and the other end thereof is connected to the drain of the selection transistor 21. The gate of the selection transistor 21 is connected to word line L, and the source thereof is connected to source line SL.
The ordinary cell array 210a and the redundancy cell array 210b have substantially the same basic configuration as described above, although the differences between them were not mentioned.
<l-5> Memory Cell
A schematic description will be given with reference to FIG. 3 of the configuration of a memory cell according to the embodiment .
As shown in FIG. 3, one end of the MTJ element 20 of the memory cell MC of the embodiment is connected to bit line BL, and the other end of the MTJ element 20 is
connected to one of the current path of the cell transistor 21. The other end of the cell transistor 21 is connected to source line SL. The MTJ element 20 utilizing the tunneling magnetoresistive (TMR) effect has a stack structure
comprising two ferromagnetic layers F and P and one
nonmagnetic layer (a tunnel insulation film) B sandwiched between the ferromagnetic layers F and P. The MTJ element stores digital data by utilization of variations in the magnetic resistance caused by a spin-polarized tunneling effect. The MTJ element 20 can be set in a low-resistance state or a high-resistance state in accordance with the magnetic orientations of the two ferromagnetic layers F and P. For example, if the low-resistance state is defined as data "0" and the high-resistance state is defined as data "1", l^bit data can be recorded in the MTJ element 20.
Needless to say, the low-resistance state may be defined as data "1" and the high-resistance state may be defined as data " 0 " .
The MTJ element is formed, for example, by stacking a fixing layer (pin layer) P, a tunnel barrier layer B and a recording layer (free layer) F in the order mentioned. The. pin layer P and the free layer F are made of a
ferromagnetic material, and the tunnel barrier layer B is an insulating film (such as Al203 or MgO) . The pin layer P is a layer in which the magnetic orientation is fixed, while the free layer F is a layer in which the magnetic orientation is variable and which stores data utilizing the magnetic orientation.
When a current flows in the direction of arrow Al in a write operation, the magnetic orientation of the free layer F becomes anti-parallel (AP state) with respect to the magnetic orientation of the pin layer P. As a result, a high-resistance state (data "1") is created. When a current flows in the direction of arrow A2 in a write operation, the magnetic orientation of the free layer F becomes parallel (P state) with respect to the magnetic orientation of the pin layer P. As a result, a low-resistance state
(data "0") is created. As can be seen, different data can be written in the MTJ element by changing the direction of a current flow.
<2> Operation
<2-l> State Transition
A description will be given with reference to FIG. 4 of the state transition of the memory system according to the embodiment. In FIG. 4, thin arrows indicate how the state of the MRAM transitions when a command is received from the host 2. In FIG. 4, thick arrows indicate how the state of the MRAM transitions automatically, without any command received from the host 2, at the end of a
predetermined operation.
[State 1] Power On
As shown in FIG. 4, when power is supplied to the memory system 1 from the host 2, the memory system 1 transitions to the power-on state (state 1) .
[State 2] Resetting
When a resetting command is supplied to the memory system 1 from the host 2, the memory system 1 transitions to a resetting state (state 2) . The host 2 can supply the resetting command to the memory system 1 when this memory system is either in the power-on state and or in the idle state .
[State 3] Idle After the resetting processing, the scrub operation or the preactivating operation ends, the memory system 1 automatically transitions to the idle state (state 3) . In the idle state, the memory system 1 is ready to start up (ON state) .
[State 4] Scrubbing
When a scrub command is supplied to the memory system
1 from the host 2, the memory system 1 transitions to a scrubbing state (state 4) . The host 2 can supply the scrub command to the memory system 1 when this memory system is in the idle state (state 3) . The details of the scrubbing operation will be described later.
[State 5] Active
When an activate command is supplied to the memory system 1 from the host 2, the memory system 1 transitions to an active state (state 5) . The host 2 can supply the activate command to the memory system 1 when this memory system is in the idle state (state 3) . When the read/write operation or the mode register read/write operation ends, the memory system automatically transitions to the active state (state 5) .
[State 6] Reading/Writing
When a reading/writing command (RD/WR) is supplied to the memory system 1 from the host 2 , the memory system 1 transitions to a reading/writing state (state 6) . The host
2 can supply the reading/writing command to the memory system 1 when this memory system is either in the active state (state 5) and or in the reading/writing state (state 6) .
[State 7] Mode register reading/writing
When a mode register reading/writing command (MRR/MRW) is supplied to the memory system 1 from the host 2, the memory system 1 transitions to a mode register
reading/writing state (state 7) . The host 2 can supply the mode register reading/writing command to the memory system 1 when this memory system is in the active state (state 5) .
The "mode register reading" is reading data from the status register 130. The "mode register writing" is writing data in the status register 130. The status register 130 stores data representing the operating state etc. of the memory device 200. For example, the status register 130 stores data representing the kind of a burst, the length of the burst, the latency period, etc.
[State 8] Preactivating
When a preactive command is supplied to the memory system 1 from the host 2, the memory system 1 transitions to a preactivating state (state 8) . The host 2 can supply the preactive command to the memory system 1 when this memory system is either in the active state (state 5) and or in the idle state (state 3) .
The state transition diagram shown in FIG. 4 is an example, and the state transition may be performed in a different way. For example, a scrub command can be supplied to a system other than the DDRX system or LPDDRx system when that system is in the idle state, and a scrub
operation can be performed in response thereto.
<2-2> Scrub Operation
A description will be given with reference to FIG. 5 of the scrub operation of the memory system according to the embodiment .
The scrub operation is an operation the memory
controller 100 performs when the user is not performing the ordinary read/write operation. By the scrub operation, the memory cells MC of the ordinary cell array 210a are
cyclically checked and a data error is corrected.
In the scrub operation, if the memory controller 100 detects an error occurring in the data stored in a
predetermined memory cell MC, the memory controller 100 corrects the error and stores the correct data in the memory cell MC. As described in <l-5> set forth above, a current is supplied to the MTJ element 20 when data is written in the memory cell MC. Therefore, the MTJ elements 20 may deteriorate with time in accordance with an increase in the number of times a write operation is performed. For example, the memory cell MC which undergoes an error many times (which undergoes successful error correction by the same number of times) is very likely to be a cell that becomes defective with time. Even if correct data is written back into such a memory cell MC, it may not be properly written. Therefore, if the memory cell MC which undergoes an error more than a threshold (which undergoes successful error correction by the same number of times) is treated as a secondary defective cell. Such a memory cell MC should be desirably replaced with a redundancy cell MC. Thus, cells which become defective with time can be
replaced with redundancy cells MC.
The scrub operation mentioned above will be described more specifically.
The host 2 can issue a scrub command to the memory system 1 when this memory system is in the idle state. Upon receipt of the scrub command from the host 2 , the memory system 1 starts the scrub operation.
[Step S1001]
Upon receipt of the scrub command, the device
interface 150 reads address n of the memory cell array 210 from the address counter 180.
[Step S1002]
The device interface 150 issues address n and a read command to the memory device 200. The memory device 200 reads data from the address n of the memory cell based on the received address n and the read command. Then, the memory device 200 supplies the read data d to the memory controller 100 through the data bus 220, DQ circuit 230 and data line DQ (not shown) . As a result, the device interface 150 receives data d by way of the data line DQ.
[Step S1003]
The device interface 150 supplies data d to the ECC circuit 160, for error detection of data d. The ECC circuit 160 determines whether the received data d contains an error. If an error is detected in data d, the ECC circuit 160 performs error correction for data d,. using an error correcting code.
[Step S1004]
If it is determined that data d contains an error (YES in Step S1003) , the ECC circuit 160 supplies an error notification signal "Error" to the fuse controller 170. The address comparator 170b receives address n from the address counter 180, if it receives error notification signal
"Error" from the ECC circuit 160.
Subsequently, the address comparator 170b determines whether address n is stored in the fail address register 170a. In other words, the address comparator 170b
determines whether the fail address register 170a stores the same address information as the address information (address n) corresponding to the error.
[Step S1005]
If the address comparator 170b determines that address n is not stored in the fail address register 170a (No in Step S1004) , the address comparator 170b stores the
information on address n corresponding to the error in the fail address register 170a.
[Step S1006]
If the address comparator 170b determines that address n is stored in the fail address register 170a (Yes in Step S1004) , the fail count register 170c increases the count M corresponding to address n by one (count M: the number of times an error occurs or the number of times the error is successfully corrected) .
If the fail address register 170a stores a new address n, the corresponding count M is 1 (M=l) .
[Step S1007]
The fail count register 170c determines whether count M corresponding to address n has reached threshold Mmax. This threshold Mmax can be determined in any desirable way. The threshold Mmax is stored, for example, in the fail count register 170c.
[Step S1008]
If the number of times an error occurs (the number of times the error is successfully corrected) has reached threshold Mmax, the memory cell MC corresponding to address n is regarded as having deteriorated with time and being incapable of storing accurate data. It is therefore desired that such a memory cell should not be used and a memory cell MC of the redundancy cell array 210b should be used instead. A more specific description will be given on this point .
If the fail count register 170c determines that count M corresponding to address n has reached threshold Mmax (YES in Step S1007) , the fail count register 170c supplies signal "Err_max" to the fuse address generator 170d and the fuse program voltage generator 170e.
Upon receipt of signal "Err_max", the fuse address generator 170d generates fuse addresses designating the column fuse 212 and the row fuse 214, based on address n. The fuse address generator 170d supplies the generated fuse addresses (redundancy address information) to the memory device 200 by way of the device interface 150.
Upon receipt of signal "Err_max", the fuse program voltage generator 17Oe generates a signal that causes the internal voltage generator to generate a voltage used for a fuse program (namely, a fuse program voltage generating signal) . The fuse program voltage generator 170e supplies the generated fuse program voltage generating signal to the memory device 200 by way of the device interface 150.
Upon receipt of the fuse address and the fuse program voltage generating signal, the controller 24 of the memory device 200 executes a fuse program for the column fuse 212 and the row fuse 214. As a result, redundancy information is written in the column fuse 212 and the row fuse 214, thereby enabling access to the memory cell MC of the redundancy cell array 210b, not to the memory cell MC of the ordinary cell array, when address n should be accessed.
As a result, the memory cell MC of the ordinary cell array is treated as a memory cell MC which should not be used, like an inherently defective cell. Replacing address n with redundancy cell array 210b as above may be referred to as replacement processing.
As described above, the memory system 1 of the
embodiment enables remedying secondary defective cells which become defective with time.
[Step S1009]
After the end of the fuse program in Step S1008 or if the fail register 170c determines that count M of address n has not reached threshold Mmax (No in Step S1007) , the ECC circuit 160 transmits error- corrected data de to the device interface 150. The device interface 150 supplies the error- corrected data de, address n and a write command to the memory device 200.
Upon receipt of the write command and address n, the controller 240 writes data de received through the DQ circuit 230 back into the memory cell array 210. As a result, error-corrected accurate data is written in the memory cell array 210.
If replacing processing is executed for address n, the related data is written in the memory cell MC of the redundancy cell array 210b.
[Step S1010]
If it is determined that data d does not contain an error (No jiil' Step S1003), the ECC circuit 160 supplies a notification signal "No_Error" to the host 2.
After notification signal "No_Error" is transmitted to the host 2 or after the write back operation in Step S1009 ends, the device interface 150 increases the count of the address counter 180 by one (address n = n + 1) . As a result, the device interface 150 can access the next address of address n. [Step S1011]
The device interface 150 determines whether address n stored in the address counter 180 is the predetermined one. If the device interface 150 determines that address n stored in the address counter 180 is predetermined address nmax, the scrub operation is ended (YES in Step S1011) .
After the scrub operation is ended, the memory system 1 automatically transitions to the idle state. If the CPU 140 determines that address n stored in the address counter 180 is not predetermined address nmax (NO in Step S1011) , the flow returns to Step S1001.
The address nmax can be determined in any desirable way. To determine address nmax is to define the number of addresses that starts the error detection in the scrub operation. The larger the number of addresses is, the longer the time required for the scrub operation becomes. Where the time required for the scrub operation is
variable, address nmax may be properly changed.
In connection with the above-mentioned embodiment, reference was made to the case where the scrub operation is continued until address n becomes equal to predetermined address nmax. However, this does not impose any limitation.
For example, the scrub operation may be interrupted in response to a request made by the user.
In addition, the scrub operation may be performed for a single address by entering a scrub command only once, instead of performing error detection for a plurality of addresses in the scrub operation.
<2-3> Specific Example of Operation That Does Not Cause Error
A description will be given with reference to FIG. 6 of a specific example of an operation which the memory- system of the embodiment performs when an error is not generated.
[Time TO]
At time TO, the memory system 1 starts the scrub operation upon receipt of a scrub command from the host 2 (corresponding to Step S1001) .
[Time Tl]
At time Tl, data is read and supplied from the memory device 200 to the memory controller 100 by way of the DQ line (not shown) (corresponding to Step S1002) .
[Time T2]
At time T2 , data is supplied to the ECC circuit 160, and the ECC circuit 160 starts an error detection operation (corresponding to Step S1003).
[Time T3]
If the ECC circuit 160 determines that the data contains no error, it notifies the host 2 at time T3 that there is no error (No_Error) (corresponding to Step S1003) . [Time T4]
At time 4, the device interface 150 increases the address of the address counter 180 by one to determine the address for which error detection is performed next (corresponding to Steps S1010 and S1011) . Then, the device interface 150 determines whether address n stored in the address counter 180 is the predetermined one.
[Time T5]
If the scrub operation is to be performed for a single address by entering a scrub command only once, the host 2 becomes ready to receive a scrub command at time T5.
In this case, the period between the time when the scrub command is input and the time when the next scrub command can be input is defined as tSCRIl. In other words, the host 2 can issue the next scrub command to the memory system 1 when period tSCRIl elapses after the host issues the first scrub command.
[Time T6 to Time T8]
After the host 2 receives a scrub command at time T5 or if the address of the address counter 180 is increased by one at time T4 and determination is made that the predetermined address has not yet been reached, the memory system 1 performs operations similar to those executed at times Tl to T3.
<2-4> Specific Example of Operation That Causes Error
A description will be given with reference to FIG. 7 of a specific example of an operation performed when an error is generated.
[Time T10 to Time T12]
The memory system 1 performs similar operations to those executed at times TO to T2. [Time T13]
Upon detection of an error in data, the ECC circuit 160 transmits error notification signal "Error" indicative of an error to the fuse controller 170 (corresponding to Step S1003) . The memory system 1 performs similar
operations to those executed in Steps S1004 to S1007 described above .
[Time T14]
If the number of times an error occurred in the past (the number of times the error was successfully corrected) with respect to the address for which an error currently occurs is smaller than a threshold, the memory system 1 writes data whose error is corrected by the ECC circuit 160 in the memory cell array 210 at time T14 (corresponding to Step S1009) .
[Time T15 to Time T18]
The memory system 1 performs similar operations to those executed at times T4 to T7.
The time tSCRI2 required in the case where an error occurs and replacement is not performed is longer than the time tSCRIl required in the case where an error does not occur. This is because error-corrected data has to be written in the case where an error occurs and replacement is not performed.
[Time T19]
The memory system 1 performs a similar operation to that executed at time T13. [Time T20]
If it is determined that the number of times an error occurred in the past (the number of times the error was successfully corrected) with respect to the address for which an error currently occurs has reached a predetermined number of times, the fuse control circuit 170 issues signal "Err_max" (corresponding to Step S1007) .
[Time T21J
At time T21, a fuse program address is issued based on signal "Err_max" and the address where the error has occurred (corresponding to Step S1008) .
[Time T22]
At time T22, a fuse program voltage generating signal is generated based on signal "Err_max" (corresponding to Step S1008) .
[Time T23]
At time T23, a fuse program operation is performed in the memory device 200 (corresponding to Step S1008) .
[Time T24]
The memory system 1 stands by until the end of the fuse program operation and then performs a similar
operation to that executed at time T14.
[Time T25 and Time T26]
The memory system 1 performs similar operations to those executed at times T4 and T5.
The time tSCRI3 required in the case where an error occurs and replacement is performed is longer than the time tSCRI2 required in the case where an error occurs and replacement is not performed. This is because the fuse program operation has to be performed in the case where an error occurs and replacement is performed.
<3> Advantages
According to the embodiment described above, the memory system performs a scrub operation if the user does not request an ordinary read/write operation. In the scrub operation, the memory system performs an error check with respect to the memory cells MC of the memory cell array. If an error is detected in data, the address information corresponding to the error and the number of times an error occurred in the past at the same address are stored in the memory controller. If the number of times an error occurs in the past reaches a setting value determined by the user, the memory cell in question is replaced with the redundancy cell array.
As described above, the MRAM may deteriorate with time and become incapable of storing accurate data. Continuous use of such a memory cell MC is not desirable in terms of the reliability of the memory system.
According to the embodiment described above, the memory system records the address where an error occurs and the number of times the error occurs (the number of times the error is successfully corrected) at the same address . By virtue of this, the memory system 1 can detect a memory cell that becomes incapable of storing accurate data due to the characteristic deterioration with time. The memory system 1 replaces the memory cell incapable of storing- accurate data with a redundancy cell. Accordingly, the memory system of the present embodiment is very reliable in operation.
According to the present embodiment, a defective cell can be dynamically replaced with a redundancy cell even after shipping. In other words, the memory cell array 210 having a potentially defective cell (i.e., a cell having poor quality) can be properly remedied. For this reason, the memory system need not be subjected to strict screening before it is shipped. As a result, the stress imposed on the memory system at the time of screening can be reduced. Accordingly, the memory system does not deteriorate before it is used actually, and a memory system that ensures a reliable operation is realized.
(Modifications)
The above embodiment was described referring to the case where the storage is an MRAM. However, the storage may be realized as another type of resistance change memory having similar structural elements to those described above, such as a phase change random access memory (PCRAM) or a resistive random access memory (ReRAM) . In addition, the memory system 1 described above may be applicable to a DRAM instead of an MRAM.
In connection with the above embodiment, the bit line pair was described as having bit line BL and source line SL for descriptive purposes. However, the bit line pair may be made up of a first bit line and a second bit line.
In the memory system of the above embodiment, the column fuse 212 and the row fuse 214 are used to access a redundancy cell, but this structure is merely an example. For example, one of the column fuse 212 and the row fuse 214 is sufficient to access the redundancy cell, and an operation similar to that described above can be performed in this case as well.
In the embodiment described above, the memory system 1 is designed to connect one memory device 200 to the memory controller 100. However, this is merely an example. For example, the memory system 1 may be designed to connect a plurality of memory devices 200 to the memory controller 100.
While certain embodiments have been described, these embodiments have been presented by way of example only, and are not intended to limit the scope of the claims. Indeed, the novel methods and systems described herein may be embodied in a variety of other forms; furthermore, various omissions, substitutions and changes in the form of the methods and systems described herein may be made without departing from the spirit of the embodiments. The
accompanying claims and their equivalents are intended to cover such forms or modifications as would fall within the scope and spirit of the embodiments.

Claims

C L A I M S
1. A memory system comprising:
a first memory cell area where a first memory cell is provided;
a second memory cell area where a second memory cell is provided;
an ECC circuit which corrects an error of data stored by the first memory cell; and
a control circuit which replaces the first memory cell with the second memory cell if a number of times an error is corrected in the first memory cell reaches a first value .
2. The memory system of Claim 1, wherein
the first memory cell is assigned with an address, and the control circuit stores the address where an error is successfully corrected by the ECC circuit.
3. The memory system of Claim 2, wherein
the control circuit stores a number of times the error is successfully corrected at the address, and determines whether the number of times the error is corrected in the first memory cell reaches the first value.
4. The memory system of Claim 3, further comprising a third memory area that stores first information used for replacing the first memory cell with the second memory cell .
5. The memory system of Claim 4, wherein the control circuit generates an address of the third memory area to replace the first memory cell with the second memory cell, and further generates a voltage at which data is written in the third memory area.
6. The memory system of Claim 2, further comprising an address counter that counts an address each time the first memory cell area is accessed,
wherein the ECC circuit performs an error check with respect to the first memory area until the address stored in the address counter reaches a first address .
7. The memory system of Claim 2, wherein the control circuit determines whether an address where an error occurs is identical to an address stored in the control circuit, and stores an address where the error occurs if the address is identical to the address stored in the control circuit.
8. The memory system of Claim 1, wherein the control circuit writes a corrected data in the address where the error occurs if a number of times the error is successfully corrected in the first memory cell has not reached the first value, and writes the corrected data in the second memory cell if the number of times the error is
successfully corrected in the first memory cell has reached the first value.
9. The memory system of Claim 4 , wherein the third memory area is a nonvolatile area.
10. The memory system of Claim 4, wherein the third memory area is formed by a metal or a semiconductor.
11. The memory system of Claim 4, wherein the second memory area is a redundancy area and is accessible in accordance with the first information.
12. The memory system of Claim 1, wherein the first memory cell and the second memory cell include a resistance change element capable of storing data.
13. The memory system of Claim 1, wherein the first memory area and the second memory area are made of one of a magnetoresistive random access memory (MRAM) , a
ferroelectric random access memory (FeRaM) , a phase change random access memory (PCRAM) or a resistive random access memory (ReRaM) .
14. The memory system of Claim 1, wherein
the first memory area and the second memory area are DRA s .
15. A memory system comprising:
a first memory cell area where a first memory cell is provided;
a second memory cell area where a second memory cell is provided;
an ECC circuit which detects an error of data stored by the first memory cell; and
a control circuit which replaces the first memory cell with the second memory cell if a number of times an error occurs in the first memory cell reaches a first value.
16. The memory system of Claim 15, wherein the first memory cell is assigned with an address, and the control circuit stores data on an address where occurrence of an error is determined by the ECC circuit.
17. The memory system of Claim 16, wherein the control circuit stores data on a number of times the error occurs at the address, and determines whether the number of times the error occurs in the first memory cell reaches the first value .
18. The memory system of Claim 17, further comprising a third memory area that stores first information used for replacing the first memory cell with the second memory cell.
19. The memory system of Claim 15, wherein the first memory cell and the second memory cell include a resistance change element capable of storing data.
20. The memory system of Claim 15, wherein
the first memory area and the second memory area are DRAMs .
PCT/JP2015/076374 2015-03-09 2015-09-10 Semiconductor storage device Ceased WO2016143170A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201580077296.XA CN107430558B (en) 2015-03-09 2015-09-10 semiconductor memory device
RU2017130617A RU2682387C1 (en) 2015-03-09 2015-09-10 Semiconductor storage device
US15/692,971 US10102062B2 (en) 2015-03-09 2017-08-31 Semiconductor storage device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201562130490P 2015-03-09 2015-03-09
US62/130,490 2015-03-09

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US15/692,971 Continuation US10102062B2 (en) 2015-03-09 2017-08-31 Semiconductor storage device

Publications (1)

Publication Number Publication Date
WO2016143170A1 true WO2016143170A1 (en) 2016-09-15

Family

ID=56880103

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2015/076374 Ceased WO2016143170A1 (en) 2015-03-09 2015-09-10 Semiconductor storage device

Country Status (5)

Country Link
US (1) US10102062B2 (en)
CN (1) CN107430558B (en)
RU (1) RU2682387C1 (en)
TW (1) TWI587297B (en)
WO (1) WO2016143170A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190048457A (en) * 2017-10-31 2019-05-09 에스케이하이닉스 주식회사 Memory system and operation method thereof
US11437120B2 (en) 2017-10-31 2022-09-06 SK Hynix Inc. Memory system for activating redundancy memory cell and operating method thereof

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102451163B1 (en) * 2018-02-01 2022-10-06 삼성전자주식회사 Semiconductor memory device and repair method thereof
JP7005398B2 (en) * 2018-03-15 2022-02-04 キオクシア株式会社 Semiconductor storage device
JP6612392B1 (en) 2018-06-08 2019-11-27 ウィンボンド エレクトロニクス コーポレーション Semiconductor memory device
CN111863059A (en) * 2019-04-29 2020-10-30 上海磁宇信息科技有限公司 MRAM chip with dynamic redundancy function
CN111951876B (en) * 2019-05-15 2022-06-03 上海磁宇信息科技有限公司 MRAM chip with writing detection function and dynamic redundancy and data reading and writing method thereof
KR102706482B1 (en) * 2019-08-30 2024-09-12 삼성전자주식회사 Method of controlling repair of volatile memory device and storage device performing the same
JP2022006539A (en) 2020-06-24 2022-01-13 キオクシア株式会社 Magnetic storage device and control method of magnetic storage device
KR20220090794A (en) * 2020-12-23 2022-06-30 삼성전자주식회사 Memory device, controller for controlling the same, memory system having the same, and operating method thereof
CN112685213B (en) * 2021-01-06 2022-04-29 长江存储科技有限责任公司 Non-volatile memory and voltage calibration method thereof
WO2022177945A1 (en) * 2021-02-16 2022-08-25 Micron Technology, Inc. Controller for managing multiple types of memory
KR20250055341A (en) * 2023-10-17 2025-04-24 에스케이하이닉스 주식회사 Electronic system for monitoring error of address

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998008166A1 (en) * 1996-08-16 1998-02-26 Tokyo Electron Limited Semiconductor memory device having error detection and correction
US20020080650A1 (en) * 1999-09-17 2002-06-27 Kunihiro Katayama Storage device counting error correction
US20030033567A1 (en) * 2001-08-09 2003-02-13 Hitachi, Ltd. Memory card and memory controller

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04101254A (en) 1990-08-20 1992-04-02 Fujitsu Ltd Alternate memory setting system
JP3130796B2 (en) 1996-06-26 2001-01-31 甲府日本電気株式会社 Control storage device
JPH11214640A (en) * 1998-01-28 1999-08-06 Hitachi Ltd Semiconductor storage element, semiconductor storage device, and control method therefor
US6349390B1 (en) 1999-01-04 2002-02-19 International Business Machines Corporation On-board scrubbing of soft errors memory module
US6240033B1 (en) 1999-01-11 2001-05-29 Hyundai Electronics Industries Co., Ltd. Antifuse circuitry for post-package DRAM repair
JP4129381B2 (en) * 2002-09-25 2008-08-06 株式会社ルネサステクノロジ Nonvolatile semiconductor memory device
US7594135B2 (en) * 2003-12-31 2009-09-22 Sandisk Corporation Flash memory system startup operation
JP5057796B2 (en) 2007-02-14 2012-10-24 株式会社東芝 Semiconductor memory information storage device and its defective part coping method
JP5166074B2 (en) * 2008-02-29 2013-03-21 株式会社東芝 Semiconductor memory device, control method thereof, and error correction system
CN101882472A (en) * 2009-05-05 2010-11-10 建兴电子科技股份有限公司 Flash memory with variable error-correcting code mechanism and control method thereof
KR20130060791A (en) * 2011-11-30 2013-06-10 삼성전자주식회사 Memory system, data storage device, memory card, and ssd including wear level control logic
KR20130136341A (en) * 2012-06-04 2013-12-12 에스케이하이닉스 주식회사 Semiconductor device and operating method thereof
US9312885B2 (en) * 2012-08-15 2016-04-12 Kabushiki Kaisha Toshiba Nonvolatile semiconductor memory system error correction capability of which is improved

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998008166A1 (en) * 1996-08-16 1998-02-26 Tokyo Electron Limited Semiconductor memory device having error detection and correction
US20020080650A1 (en) * 1999-09-17 2002-06-27 Kunihiro Katayama Storage device counting error correction
US20030033567A1 (en) * 2001-08-09 2003-02-13 Hitachi, Ltd. Memory card and memory controller

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190048457A (en) * 2017-10-31 2019-05-09 에스케이하이닉스 주식회사 Memory system and operation method thereof
KR102373315B1 (en) * 2017-10-31 2022-03-14 에스케이하이닉스 주식회사 Memory system and operation method thereof
US11437120B2 (en) 2017-10-31 2022-09-06 SK Hynix Inc. Memory system for activating redundancy memory cell and operating method thereof
US11901032B2 (en) 2017-10-31 2024-02-13 SK Hynix Inc. Memory device and memory system capable of using redundancy memory cells
US12020763B2 (en) 2017-10-31 2024-06-25 SK Hynix Inc. Memory device for selectively operating multiple memory groups in different speeds and memory system including the same
US12020764B2 (en) 2017-10-31 2024-06-25 SK Hynix Inc. Memory device for selectively operating multiple memory groups in different speeds and memory system including the same

Also Published As

Publication number Publication date
CN107430558A (en) 2017-12-01
TW201633300A (en) 2016-09-16
RU2682387C1 (en) 2019-03-19
US20170364407A1 (en) 2017-12-21
CN107430558B (en) 2020-12-01
TWI587297B (en) 2017-06-11
US10102062B2 (en) 2018-10-16

Similar Documents

Publication Publication Date Title
US10102062B2 (en) Semiconductor storage device
US11994948B2 (en) Semiconductor memory devices, memory systems including the same and methods of operating memory systems
US10255989B2 (en) Semiconductor memory devices, memory systems including the same and methods of operating the same
US10198221B2 (en) Methods of operating semiconductor memory devices with selective write-back of data for error scrubbing and related devices
US10156995B2 (en) Semiconductor memory devices and methods of operating the same
US9202585B2 (en) Nonvolatile memory module, memory system including nonvolatile memory module, and controlling method of nonvolatile memory module
US20180074737A1 (en) Memory device
CN105378851A (en) semiconductor memory device
KR20140055737A (en) Memory module, memory system havint the same, and driving method thereof
US9153308B2 (en) Magnetic random access memory device
US9947380B2 (en) Adjustable read reference voltage to reduce errors in memory devices
US10204700B1 (en) Memory systems and methods of operating semiconductor memory devices
JP5694053B2 (en) Semiconductor memory device
US20150261602A1 (en) Resistance change memory
US10658063B2 (en) Semiconductor memory device including a correcting circuit
KR101773660B1 (en) Memory apparatus and system, and memory control method using selective refresh through in-meomry error detection

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: 15884655

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2017130617

Country of ref document: RU

122 Ep: pct application non-entry in european phase

Ref document number: 15884655

Country of ref document: EP

Kind code of ref document: A1