A claim for priority under 35 U.S.C. §119 is made to Korean Patent Application No. 10-2012-0075592 filed Jul. 11, 2012, in the Korean Intellectual Property Office, the entire contents of which are hereby incorporated by reference.
The inventive concepts described herein relate to a semiconductor memory device, and more particularly, to a nonvolatile memory device and a write method thereof.
A semiconductor memory device is a memory device which is fabricated using semiconductors such as silicon (Si), germanium (Ge), gallium arsenide (GaAs), indium phosphide (InP), and the like. Semiconductor memory devices are generally classified as either volatile memory devices or nonvolatile memory devices.
The volatile memory devices are characterized by the loss of stored contents at a power-off condition. Examples of volatile memory devices include certain types of random access memory (RAM) such as a static RAM (SRAM), a dynamic RAM (DRAM), a synchronous DRAM (SDRAM), and the like. In contrast, nonvolatile memory devices are characterized by the retention of stored contents even during power-off condition. Examples of nonvolatile memory devices include a read only memory (ROM), a programmable ROM (PROM), an electrically programmable ROM (EPROM), an electrically erasable and programmable ROM (EEPROM), a flash memory device, a phase-change RAM (PRAM), a magnetic RAM (MRAM), a resistive RAM (RRAM), a ferroelectric RAM (FRAM), and the like.
Example embodiments of the inventive concept provide a nonvolatile memory device that includes a memory cell array including a plurality of memory cells, and a data comparison write unit connected with the memory cell array and configured to support a comparison write operation. The nonvolatile memory device further includes control logic configured to selectively execute the comparison write operation based on a comparison between an access number of the memory cell array and a reference number.
In example embodiments, when the access number is less than the reference number, the control logic performs the comparison write operation.
In example embodiments, during the comparison write operation, the data comparison write unit reads data stored in an addressed memory cell of write data, and compares the read data with the write data.
In example embodiments, during the comparison write operation, the write data is written in the addressed memory cell when the write data does not coincide with the read data, and the write data is not written in the addressed memory cell when the write data coincides with the read data.
In example embodiments, when the access number is equal to or more than the reference number, the control logic performs a rewrite operation and does not perform the comparison write operation.
In example embodiments, during the rewrite operation, the control logic overwrites an addressed memory cell with write data.
In example embodiments, the control logic compares a write unit of the memory cell array with an access unit of the memory cell array, reads data stored in predetermined memory cells among the plurality of memory cells when the write unit is less than the access unit, and overwrites the read data in the predetermined memory cells.
In example embodiments, the predetermined memory cells correspond to a same memory block as the write data.
In example embodiments, the nonvolatile memory device further includes an access counting unit configured to count a access number of each of a plurality of blocks of the memory cell array.
In example embodiments, the reference number differs according to the blocks of the memory cell array.
In example embodiments, the plurality of memory cells is formed of variable resistance elements.
Example embodiments of the inventive concept provide a nonvolatile memory device which includes a memory cell array including a plurality of memory blocks, each of the memory blocks including a plurality of memory cells, and a data comparison write unit connected with the memory cell array and configured to support a comparison write operation. The nonvolatile memory device further includes control logic configured to, in response to a write command and write data for a memory block among the plurality of memory blocks, selectively execute either the comparison write operation or a rewrite operation based on a comparison between an access number of the memory block and a reference number of the block.
In example embodiments, the comparison write operation is executed when the access number is less than the reference number, and the rewrite operation is executed when the access number is greater than or equal to the reference number.
In example embodiments, the access number is indicative of a number of read accesses of the memory block, and the nonvolatile memory device further includes a counter for counting the number of read accesses of each of the plurality of memory blocks.
In example embodiments, at least two of the memory blocks have a different reference number.
In example embodiments, the memory cell array includes at least one of magnetoresistive random access memory (MRAM), spin transfer torque magnetoresistive random access memory (STT-MRAM), phase change random access memory (PRAM), and resistive random access memory (RRAM)
Example embodiments of the inventive concept provide a write method of a nonvolatile memory device which includes receiving a write command and write data, checking access information of a memory block corresponding to the write data in response to the write command, and performing either one of a comparison write operation and a rewrite operation based on the access information.
In example embodiments, wherein the comparison write operation is performed when an access number of an addressed memory block of the write data is less than a reference number, and the rewrite operation is performed when the access number of the addressed memory block of the write data is equal to or more than the reference number.
In example embodiments, the comparison write operation includes reading data stored in the addressed memory block, comparing the read data with the write data, and overwriting the write data in the memory block when the read data does not coincide with the write data.
In example embodiments, the rewrite operation includes writing the write data in an addressed memory block of the write data, and resetting an access number of the addressed memory block.
The above and other objects and features will become apparent from the detailed description that follows with reference to the accompanying figures, wherein like reference numerals refer to like parts throughout the various figures unless otherwise specified.
Embodiments will be described in detail with reference to the accompanying drawings. The inventive concept, however, may be embodied in various different forms, and should not be construed as being limited only to the illustrated embodiments. Rather, these embodiments are provided as examples so that this disclosure will be thorough and complete, and will fully convey the concept of the inventive concept to those skilled in the art. Accordingly, known processes, elements, and techniques are not described with respect to some of the embodiments of the inventive concept. Unless otherwise noted, like reference numerals denote like elements throughout the attached drawings and written description, and thus descriptions will not be repeated. In the drawings, the sizes and relative sizes of layers and regions may be exaggerated for clarity.
It will be understood that, although the terms “first”, “second”, “third”, etc., may be used herein to describe various elements, components, regions, layers and/or sections, these elements, components, regions, layers and/or sections should not be limited by these terms. These terms are only used to distinguish one element, component, region, layer or section from another region, layer or section. Thus, a first element, component, region, layer or section discussed below could be termed a second element, component, region, layer or section without departing from the teachings of the inventive concept.
Spatially relative terms, such as “beneath”, “below”, “lower”, “under”, “above”, “upper” and the like, may be used herein for ease of description to describe one element or feature's relationship to another element(s) or feature(s) as illustrated in the figures. It will be understood that the spatially relative terms are intended to encompass different orientations of the device in use or operation in addition to the orientation depicted in the figures. For example, if the device in the figures is turned over, elements described as “below” or “beneath” or “under” other elements or features would then be oriented “above” the other elements or features. Thus, the exemplary terms “below” and “under” can encompass both an orientation of above and below. The device may be otherwise oriented (rotated 90 degrees or at other orientations) and the spatially relative descriptors used herein interpreted accordingly. In addition, it will also be understood that when a layer is referred to as being “between” two layers, it can be the only layer between the two layers, or one or more intervening layers may also be present.
The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the inventive concept. As used herein, the singular forms “a”, “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises” and/or “comprising,” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof. As used herein, the term “and/or” includes any and all combinations of one or more of the associated listed items. Also, the term “exemplary” is intended to refer to an example or illustration.
It will be understood that when an element or layer is referred to as being “on”, “connected to”, “coupled to”, or “adjacent to” another element or layer, it can be directly on, connected, coupled, or adjacent to the other element or layer, or intervening elements or layers may be present. In contrast, when an element is referred to as being “directly on,” “directly connected to”, “directly coupled to”, or “immediately adjacent to” another element or layer, there are no intervening elements or layers present.
Unless otherwise defined, all terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this inventive concept belongs. It will be further understood that terms, such as those defined in commonly used dictionaries, should be interpreted as having a meaning that is consistent with their meaning in the context of the relevant art and/or the present specification and will not be interpreted in an idealized or overly formal sense unless expressly so defined herein.
The memory system 1000 may support a comparison write operation. Thus, the memory system 1000 may minimize a number of write operations and prevent deterioration of a memory cell otherwise caused by iterative write operations. The memory system 1000 may include the data comparison write unit 1300 to support the comparison write operation.
A read operation may be performed prior to execution of the comparison write operation. This may mean that data is corrupted by read disturbance not only in a case in which a conventional read operation is performed but also in a case in which a write operation is performed. To prevent data from being corrupted by the read disturbance, the memory system 1000 may include the rewrite managing unit 1400.
The controller 1100 may be electrically connected to the storage device 1200, and may provide a command CMD and an address ADDR to the storage device 1200. The controller 1100 may transmit and receive data to and from the storage device 1200. In example embodiments, the controller 1100 may be configured the same or substantially the same as a DRAM controller, and may exchange signals and data with the storage device 1200 through a DRAM interface.
For example, if a write operation is performed, the controller 1100 may provide a write command and write requested data to the storage device 1200. In this case, the controller 1100 may provide an address corresponding to the write requested data to the storage device 1200 together with the write command and the write requested data.
If a read operation is carried out, the controller 1100 may provide the storage device 1200 with a read command and an address corresponding to a read requested area. The storage device 1200 may perform the write operation or the read operation in response to a request from the controller 1100.
The data comparison write unit 1300 may perform a comparison write operation on the write requested data. Herein, the comparison write operation may mean an operation in which write data that is requested to be written (herein, “write requested data”) at a write operation is compared with data stored at a memory cell, and data is selectively written according to a comparison result.
In detail, if write requested data is different from data stored at a memory cell, the data comparison write unit 1300 may write the write requested data at the memory cell. On the other hand, if write requested data is the same as data stored at a memory cell, the data comparison write unit 1300 may not write the write requested data at the memory cell.
The rewrite managing unit 1400 may control the comparison write operation of the data comparison write unit 1300. For example, in the event that the rewrite managing unit 1400 receives a write command from the controller 1100, it may check an access number indicative of a number of times in which the controller 1100 accesses the storage device 1200. The rewrite managing unit 1400 may determine whether to perform the comparison write operation of the data comparison write unit 1300 according to the number of accesses.
For example, if an access number is less than a predetermined reference number, the rewrite managing unit 1200 may control the data comparison write unit 1300 such that the comparison write operation is performed. On the other hand, if an access number is more than a predetermined reference number, the rewrite managing unit 1200 may control the data comparison write unit 1300 such that the comparison write operation is not performed. In the case where the comparison write operation is not performed, the rewrite managing unit 1400 may control the data comparison write unit 1300 to perform a rewrite operation at which write requested data is written at a memory cell regardless of whether the write requested data is the same as data stored at the memory cell.
As described with reference to
Referring to
A data comparison write unit 1300 in
The memory cell array 1210 may be electrically connected with the decoder 1250 through a plurality of word lines WL. The memory cell array 1210 may be connected with the write and sense circuit 1235 through a plurality of bit lines BL. The memory cell array 1210 may include a plurality of blocks BLK1 to BLKn, each of which has a plurality of memory cells each storing data.
In example embodiments, the memory cell array 1210 may be implemented by variable resistance elements. For example, memory cells of the memory cell array 1210 may be implemented by spin-transfer torque magnetoresistive random access memory (STT-MRAM) cells.
In the event that memory cells are formed of STT-MRAM cells, they may include magnetic tunnel junction elements (hereinafter, referred to as variable resistance elements) each having a magnetic material. This will be more fully described with reference to
The write driver 1220 may be connected with the memory cell array 1210 through the bit lines BL. At a write operation, the write driver 1220 may supply a write current corresponding to write requested data to the memory cell array 1210 through a bit line. At a read operation, the write driver 1220 may supply a read current through a bit line.
The sense amplifier 1230 may be connected with the memory cell array 1210. At a read operation, the sense amplifier 1230 may receive a data voltage through a bit line to amplify the received data voltage. The sense amplifier 1230 may include a plurality of sense amplifier circuits to sense and amplify data voltages, respectively. For example, each sense amplifier circuit may compare a data voltage with a reference voltage to output a digital data signal as a comparison result.
The write driver 1220 and the sense amplifier 1230 may be implemented by a module, which is referred to as the write and sense circuit 1235.
The data comparison write unit 1240 may be connected with the write and sense circuit 1235. The data comparison write unit 1240 may receive data from a controller 1100 (refer to
For example, at the comparison write operation, the data comparison write unit 1240 may control the write driver 1220 and the sense amplifier 1230 to perform a read operation on a memory cell at which write requested data is to be stored. Hereinafter, such a read operation may be referred to as a pre-read operation.
If the write requested data is the same as data stored at the memory cell, the data comparison write unit 1240 may maintain the data stored at the memory cell without overwriting the memory cell. If the write requested data is not equal to data stored at the memory cell, the data comparison write unit 1240 may control the write driver 1220 such that the write requested data is overwritten at the memory cell.
At the rewrite operation, the data comparison write unit 1240 may control the write and sense circuit 1235 such that the write requested data is written at the memory cell regardless of the data stored at the memory cell. For example, at the rewrite operation, the data comparison write unit 1240 may control the sense amplifier 1230 not to perform the pre-read operation and the write driver 1220 to overwrite the write requested data at the memory cell.
The decoder 1250 may be connected with the memory cell array 1210 through the word line WL. The decoder 1250 may receive an address ADDR from the controller 1100. The decoder 1250 may decode the address ADDR to decide a memory cell to be selected by a word line and a bit line.
The block counter 1260 may receive a block address BLK_ADDR from the controller 1100. The block counter 1260 may count and manage an access number of each block BLK1˜BLKn. Herein, the access number may mean the number of read and comparison write operations executed with respect to a block. Since the comparison write operation includes a pre-read operation, the access number may mean the number of read operations and pre-read operations.
When a read operation or a pre-read operation is requested with respect to a first block BLK1, the block counter 1260 may increase a count value of the first block BLK1 by ‘1’ and manage block counting information of the first block BLK1. Likewise, when a read operation or a pre-read operation is requested with respect to a second block BLK2, the block counter 1260 may increase a count value of the second block BLK2 by ‘1’ and manage block counting information of the second block BLK2. The block counting information managed by the block counter 1260 may be stored at the memory cell array 1210 (e.g., a predetermined region of the blocks BLK1 to BLKn).
The control logic 1270 may receive a write command W_CMD or a read command R_CMD from the controller 1100. The control logic 1270 may control an overall write or read operation of the storage device 1200 in response to the write command W_CMD or the read command R_CMD.
The control logic 1270 may receive a reference number from the controller 1100. Herein, this reference number is referred to as a “disable number.” The control logic 1270 may compare the disable number with access information managed by the block counter 1260. Under the control of the control logic 1270, the comparison write operation or the rewrite operation on a write requested block may be performed according to a comparison result.
For example, if an access number on the write requested block is less than the disable number, the control logic 1270 may control an overall operation of the storage device 1200 such that the comparison write operation is performed with respect to the write requested block.
If an access number on the write requested block is more than the disable number, the control logic 1270 may control an overall operation of the storage device 1200 such that the rewrite operation is performed with respect to the write requested block.
As described in
For example, in the event that an access number exceeds a predetermined number (i.e., a disable number), data stored at an access requested block may be corrupted by read disturbance. Thus, it is possible to prevent data from being corrupted by read disturbance by performing the rewrite operation when an access number exceeds a predetermined number.
Referring to
The variable resistor element VR may be implemented by a variety of elements. For example, the variable resistor element VR may be implemented by an
STT-MRAM element. As another example, the variable resistor element VR may be implemented by a phase change random access memory (PRAM) using a phase change material, a resistive random access memory (RRAM) using a variable resistance material of a complex metal oxide, or a magnetoresistive random access memory (MRAM) using a ferromagnetic material.
A gate of the cell transistor CT may be connected with a word line. The cell transistor CT may be switched on or off by a signal provided through the word line. A drain of the cell transistor CT may be connected to the variable resistance element VR and a source thereof may be connected to a source line SL.
For example, all sources of the cell transistors CT of the memory cells MC may be connected with the same source line. As another example, sources of the cell transistors CT of the memory cells MC may be connected with different source lines.
As illustrated in
The memory cell MC may include a variable resistance element VR and a cell transistor CT. A gate of the cell transistor CT may be connected with a word line (e.g., a first word line WL1). One electrode of the cell transistor CT may be connected with a bit line (e.g., a first bit line BL1) via the variable resistance element VR, and the other electrode thereof may be connected with a source line (e.g., a first source line SL1).
The variable resistance element VR may include a pinned layer 13, a free layer 11, and a tunnel layer 12 interposed between the pinned layer 13 and the free layer 11. A magnetization direction of the pinned layer 13 may be fixed, and a magnetization direction of the free layer 11 may be identical to or opposite to that of the pinned layer 13 according to a condition. An anti-ferromagnetic layer (not shown) may be further provided to fix a magnetization direction of the pinned layer 13, for example.
Data stored at the variable resistance element VR may be determined according to a resistance value measured under a bias condition in which a logic-high voltage is applied to the word line WL1 to turn on the cell transistor CT and a read current is provided in a direction from the bit line BL1 to a source line.
To execute a write operation of the STT-MRAM, a logic-high voltage may be applied to the word line WL1 to turn on the cell transistor CT, and a write current is provided between the bit line BL1 and the source line.
A resistance value of a variable resistance element VR may vary according to a magnetization direction of a free layer 11. If a read current I is provided to the variable resistance element VR, a data voltage corresponding to a resistance value of the variable resistance element VR may be output. Since an intensity of the read current I is less than that of a write current, a magnetization direction of the free layer 11 may not be varied by the read current I.
Referring to
Referring to
In
Referring to
If the second write current WC2 is provided, free electrons having a spin direction opposite to that of the pinned layer 13 may apply a torque to the free layer 11. In this case, the free layer 11 may be magnetized to be anti-parallel with the pinned layer 13. That is, a magnetization direction of the free layer 11 may be changed by a spin transfer torque (STT).
Referring to
The free layer 21 may include a material having a variable magnetization direction. A magnetization direction of the free layer 21 may be changed by an electric/magnetic factor provided from an interior and/or exterior of a memory cell.
The free layer 21 may include a ferromagnetic material including at least one of Co, Fe, or Ni. For example, the free layer 24 may include at least one selected from a group of FeB, Fe, Co, Ni, Gd, Dy, CoFe, NiFe, MnAs, MnBi, MnSb, CrO2, MnOFe2O3, FeOFe2O3, NiOFe2O3, CuOFe2O3, MgOFe2O3, EuO, and Y3Fe5O12.
The tunneling layer 22 may have a thickness thinner than a spin diffusion distance. The tunnel layer 22 may include a non-magnetic material. As an example, the tunnel layer 22 may include at least one selected from a group of Mg, Ti, Al, a compound of MgZn and MgB, and a nitride of Ti and V.
The pinned layer 23 may have a magnetization direction fixed by the anti-ferromagnetic layer 24. The pinned layer 23 may include a ferromagnetic material. For example, the pinned layer 23 may include at least one selected from a group of CoFeB, Fe, Co, Ni, Gd, Dy, CoFe, NiFe, MnAs, MnBi, MnSb, CrO2, MnOFe2O3, FeOFe2O3, NiOFe2O3, CuOFe2O3, MgOFe2O3, EuO, and Y3Fe5O12.
The anti-ferromagnetic layer 24 may include an anti-ferromagnetic material. For example, the anti-ferromagnetic layer 24 may include at least one selected from a group of PtMn, IrMn, MnO, MnS, MnTe, MnF2, FeCl2, FeO, CoCl2, CoO, NiCl2, NiO, and Cr.
Referring to
At this time, a magnetization direction of the first ferromagnetic layer 33_1 and a magnetization direction of the second ferromagnetic layer 33_3 may be different and fixed. The coupling layer 33_2 may include Ru.
A resistance value may become small when a magnetization direction of the free layer 41 and a magnetization direction of the pinned layer 43 are parallel, and may become large when a magnetization direction of the free layer 41 and a magnetization direction of the pinned layer 43 are anti-parallel. Data may therefore be stored according to a resistance value.
To implement a variable resistance element VR in which magnetization directions are vertical, it is desirable to form the free and pinned layers 41 and 43 using a material having a large magnetic anisotropy energy. The material with the large magnetic anisotropy energy may include an amorphous rare-earth element alloy, a multi-layer thin film such as (Co/Pt)n or (Fe/Pt)n, and a material having an L10 crystal structure.
For example, the free layer 41 may be an ordered alloy, and may include at least one of Fe, Co, Ni, Pa, or Pt. For example, the free layer 41 may include at least one of Fe—Pt alloy, Fe—Pd alloy, Co—Pd alloy, Co—Pt alloy, Fe—Ni—Pt alloy, Co—Fe—Pt alloy, or Co—Ni—Pt alloy. The alloys may be Fe5OPt50, Fe50Pd50, Co50Pd50, Co50Pt50, Fe30Ni20Pt50, Co30Fe20Pt50, or Co30Ni20Pt50.
The pinned layer 43 may be an ordered alloy, and may include at least one of Fe, Co, Ni, Pa, or Pt. For example, the pinned layer 43 may include at least one of Fe—Pt alloy, Fe—Pd alloy, Co—Pd alloy, Co—Pt alloy, Fe—Ni—Pt alloy, Co—Fe—Pt alloy, or Co—Ni—Pt alloy. The alloys may be Fe50Pt50, Fe50Pd50, Co50Pd50, Co50Pt50, Fe30Ni20Pt50, Co30Fe20Pt50, or Co30Ni20Pt50.
Referring to
If a magnetization direction of the first pinned layer 51 and a magnetization direction of the second pinned layer 55 are fixed in an opposite direction, magnetic forces of the first and second pinned layers 51 and 55 may be offset. Thus, the dual variable resistance element may be written using a current that is less in amount than a typical variable resistance element.
Since the dual variable resistance element provides a larger resistance value by the second tunnel layer 54 at a read operation, it is possible to accurately obtain a data value.
Referring to
If a magnetization direction of the first pinned layer 61 and a magnetization direction of the second pinned layer 65 are fixed in an opposite direction, magnetic forces of the first and second pinned layers 61 and 65 may be offset. Thus, the dual variable resistance element 60 may be written using a current that is less in amount than a typical variable resistance element.
As described with reference to
In a memory system in which a variable resistance element is used as a storage element, there may be a relatively high probability that data is corrupted by read disturbance. Further, since a memory system 1000 according to an embodiment of the inventive concept supports a comparison write operation, the probability that data is corrupted by read disturbance may become higher.
To prevent corruption of data, the memory system 1000 according to an embodiment of the inventive concept may selectively perform a comparison write operation or a rewrite operation based on an access number of a write requested block.
First, a comparison write operation according to an embodiment of the inventive concept will be described with reference to
In operation S110, a write command and write data may be received. For example, as illustrated in
In operation S120, a pre-read operation may be performed. For example, data bits respectively stored at the first to fourth memory cells MC1 to MC4 may be read out. For example, as illustrated in
In operation S130, the write data may be compared with the core data. If the write data coincides with (i.e., is the same as) the core data, an event ‘0’ may be generated. If the write data does not coincide with the core data, an event ‘1’ may be generated.
For example, as illustrated in
In operation S140, a data write operation may be performed with respect to memory cells storing code data bits different from write data bits. That is, a data write operation may not be performed with respect to a memory cell corresponding to an event ‘0’, while a data write operation may be performed with respect to a memory cell corresponding to an event ‘1’.
For example, as illustrated in
As described with reference to
In operation S210, a storage device 1200 may receive a write command, write data, and a disable number. Also, the storage device 1200 may receive an address of a memory cell at which write requested data is to be stored and a block address indicating a block including the memory cell to be programmed.
In operation S220, control logic 1270 may check access information managed by a block counter 1260. For example, the control logic 1270 may check an access number of a block at which the write data is to be stored, through the block counter 1260. Herein, an access to a block may mean a comparison write operation or a read operation on the block, and an access number of the block may indicate a sum of the number of comparison write operations on the block and the number of read operations on the block.
In operation S230, the control logic 1270 may compare an access number (i.e., a block counting number) of the block with the disable number to determine whether the access number is less than the disable number.
If the access number is less than the disable number, operations S231 to S234 may be performed. That is, if the access number is less than the disable number, the control logic 1270 may control a write driver 1220, a sense amplifier 1230, and a data comparison write unit 1240 to perform a comparison write operation.
In operation S231, a pre-read operation may be performed. In operation S232, the write data may be compared with core data. In operation S233, write data different from the core data may be written at memory cells. These operations S231 to S233 may be the same as those described with reference to
On the other hand, in operation S230, if the access number is equal to or more than the disable number, the control logic 1270 may control the storage device 1200 to perform a rewrite operation.
In operation S240, the control logic 1270 may control the comparison write unit 1240 such that the comparison write operation is disabled or not performed. Afterwards, in operation S250, the control logic 1270 may compare a write unit with a block unit.
That the write unit is less than the block unit may mean that a block corresponding to the write data includes memory cells besides a memory cell corresponding to the write data. For example, as described with reference to
In operation S251, the control logic 1270 may control the storage device 1200 such that the write data is written at corresponding memory cells. In this case, the control logic 1270 may control the storage device 1200 such that the write data is written at corresponding memory cells without a pre-read operation.
In operation S252, the control logic 1270 may perform a read operation on a block corresponding to the write data and an operation in which the read data is again written at the block. In this case, for example, the control logic 1270 may perform read and write operations (operation S251) except for memory cells at which the write data is written. As another example, the control logic 1270 may perform read and write operations (operation S251) including a block at which the write data is written.
In operation S253, the control logic 1270 may reset an access number of a block, corresponding to the write data, from among access information managed by the block counter 1260.
If the write unit is equal to the block unit, in operation S261, the control logic 1270 may control the storage device 1200 such that the write data is written at corresponding memory cells. Afterwards, in operation S262, the control logic 1270 may reset an access number of a block, corresponding to the write data, from among access information managed by the block counter 1260.
As described in
In example embodiments, the disable number may be variously set by a designer. For example, the disable number may be variously adjusted according to physical characteristics of memory cells of a memory cell array 1210 (refer to
Also, the disable number may be set to be changed according to the number of read operations. For example, it is assumed that a disable number of a block is set to 10. Afterwards, it is assumed that a comparison write operation or a read operation is iteratively performed with respect to the block.
With this assumption, memory cells of the block may be deteriorated by iterative execution of the comparison write operation or the read operation. This may mean that the memory cells of the block are easily affected by the read disturbance. In this case, for example, a memory system according to an embodiment of the inventive concept may prevent data from being corrupted by the read disturbance by changing the disable number from 10 to 2.
Below, embodiments of the inventive concept in which a disable number is adjusted will be more fully described with reference to
The memory system 2000 may be configured to adjust a disable number according to an access number. Compared with the memory system 1000, the memory system 2000 may further include an access counting unit 2500 and a disable number managing unit 2600.
The access counting unit 2500 may count an access number by which a storage device 2200 is accessed by a controller 2100. For ease of description, below, it is assumed that the access number means a sum of the number of comparison write operations and the number of read operations. However, the inventive concept is not limited thereto. For example, the access number may mean the number of comparison write operations (i.e., the number of pre-read operations) or the number of read operations.
The access counting unit 2500 may count an access number by which the storage device 2200 is accessed by the controller 2100, and may send the counted access number to the disable number managing unit 2600. The disable number managing unit 2600 may provide the storage device 2200 with a disable number adjusted according to a total access number.
For example, the access counting unit 2500 may count a total access number of the storage device 2000 regardless of a block accessed, and may provide the counted total access number to the disable number managing unit 2600. In this case, the disable number managing unit 2600 may adjust a disable number according to the total access number, and may provide the adjusted disable number to the storage device 2200. This will be more fully described with reference to
In other example embodiments, the access counting unit 2500 may count an access number of each block to provide it to the disable number managing unit 2600. In this case, the disable number managing unit 2600 may adjust disable numbers of blocks to provide them to the storage device 2200. This will be more fully described with reference to
In still other example embodiments, the access counting unit 2500 may count access numbers of blocks, and may provide an access number corresponding to the worst block of the blocks to the disable number managing unit 2600. In this case, the disable number managing unit 2600 may adjust a disable number to provide it to the storage device 2200. This will be more fully described with reference to
Compared with the storage device 1200 in shown
Referring to
As illustrated in
Compared with the storage device 1200 shown in
Referring to
For ease of description, it is assumed that reference numbers of first to fourth blocks BLK1 to BLK4 are set to ‘100’, ‘300’, ‘500’, and ‘100’, respectively. A reference number of each block may be variously set according to a physical characteristic of each block.
As illustrated in
As another example, referring to
As described with reference to
Referring to
Unlike the memory system 1000 shown in
In the event that a write operation is requested by a host, the rewrite managing unit 3400 may check an access number by which the storage device 3200 is accessed by the controller 3100. Afterwards, the rewrite managing unit 3400 may select a comparison write operation or a rewrite operation according to an access number such that the storage device 3200 performs the selected operation. It is possible to prevent data from being corrupted by read disturbance by performing the comparison write operation and the rewrite operation selectively.
Referring to
For example, the access counting unit 4600 may count a total access number of the storage device 4200 or a total access number of each block. The access counting unit 4600 may provide counting information to the disable number managing unit 4400 and the rewrite managing unit 4500.
The disable number managing unit 4400 may adjust a disable number to provide the adjusted disable number to the rewrite managing unit 4500. The rewrite managing unit 4500 may select a comparison write operation or a rewrite operation according to the adjusted disable number or the counting information, and may provide the storage device 4200 with a command associated with the selected operation.
Thus, it is possible to prevent data from being corrupted by read disturbance by performing the comparison write operation and the rewrite operation selectively.
Referring to
Nonvolatile memory chips in each group may be configured to communicate with the controller 5100 through one common channel. In
The memory system 6100 may be electrically connected with the components 6400, 6600, 6700, and 6800 through a system bus 6500. Data provided through the user interface 8800 or processed by the CPU 6600 may be stored at the memory system 6100. The memory system 6100 may include a controller 6200 and a nonvolatile memory device 6300.
In example embodiments, the computing system 6000 may be configured to include memory systems 1000, 2000, 3000, 4000, and 5000 described with reference to
While the inventive concept has been described with reference to exemplary embodiments, it will be apparent to those skilled in the art that various changes and modifications may be made without departing from the spirit and scope of the present invention. Therefore, it should be understood that the above embodiments are not limiting, but illustrative.
Number | Date | Country | Kind |
---|---|---|---|
10-2012-0075592 | Jul 2012 | KR | national |