1. Field of the Invention
Embodiments relate to a semiconductor memory device and an associated method. More particularly, embodiments relate to a semiconductor memory device having an error correction function and a method of correcting errors in a semiconductor memory device.
2. Description of the Related Art
There are two typical methods to correct errors of input data in a semiconductor memory device according to operation modes.
The first method is to detect and correct errors in a normal mode, which includes a read mode and a write mode. In a write mode, parity is calculated from the input data. The input data is stored in a data cell array and the parity is stored in a parity cell array. In a read mode, the data stored in the data cell array and the parity stored in the parity cell array are compared with each other, and an error bit is detected. Then, the error bit is corrected and corrected data is output.
The second method is to detect and correct errors in a self-refresh mode. In a self-refresh mode, all bits of data stored in the data cell array are read, parity is calculated from the read data, and the parity is stored in a parity cell array. The data stored in the data cell array and the parity stored in the parity cell array are compared to detect one or more error bits, the error bits are corrected, and the corrected bits are written back to the data cell array.
When correcting errors in a normal mode, the write time and/or the read time may be long. When correcting errors in a self-refresh mode, time for entering and/or exiting time from the refresh mode may be long.
The two methods mentioned above may be used according to applications used in the semiconductor memory device. If the application permits a long self-refresh period, errors may be corrected in the self-refresh mode. In this case, the semiconductor memory devices, particularly for a portable electronic product, need to have reduced power consumption in the self-refresh mode.
Embodiments are therefore directed to a semiconductor memory device having an error correction function and an error correcting method, which substantially overcome one or more problems due to limitations and disadvantages of the related art.
It is therefore a feature of an embodiment to increase the refresh period.
It is therefore another feature of an embodiment to decrease power consumption in a refresh mode.
Some example embodiments of the present invention provide a semiconductor memory device having an error correction function and capable of adjusting a self-refresh period to reduce power consumption.
Some example embodiments of the present invention also provide a method of correcting errors in a semiconductor memory device capable of adjusting a self-refresh period to reduce power consumption.
In some embodiments of the present invention, a semiconductor memory device includes a parity generating circuit, a memory cell array, an error calculating circuit and an error corrector.
The parity generating circuit may generate at least one parity having different number of bits based on input data according to types of a partial array self-refresh mode, and selects one of the parities to output a first parity. The memory cell array may store the input data and the first parity.
The error calculating circuit may calculate an error based on a first data corresponding to the input data and a second parity corresponding to the first parity, generate at least one error data having different number of bits according to the types of the partial array self-refresh mode, and select one of the error data to output a first error data. The input data and the first parity may be received from the memory cell array. The error corrector may correct the first data to generate a second data based on the first data and the first error data.
In some embodiments, the partial array self-refresh mode may be determined by a mode register set signal.
In some embodiments, the parity generating circuit may include a parity generator and a multiplexer.
The parity generator may generate the parities having different number of bits based on the input data and the mode register set signal. The multiplexer may select one of the parities to output the first parity in response to the mode register set signal.
In some embodiments, the partial array self-refresh mode may include a full array self-refresh mode, a half array self-refresh mode and a quarter array self-refresh mode.
In some embodiments, the parity generator may include a full array parity generator, a half array parity generator and a quarter array parity generator.
The full array parity generator may generate a full array parity having a first number of bits based on the input data and the mode register set signal. The half array parity generator generates a half array parity having a second number of bits based on the input data and the mode register set signal. The quarter array parity generator may generate a quarter array parity having a third number of bits based on the input data and the mode register set signal.
In some embodiments, the first number of bits is eight, the second number of bits is sixteen, and the third number of bits is thirty-two.
In some embodiments, the full array parity generator is activated in the full array self-refresh mode, the half array parity generator is activated in the half array self-refresh mode, and the quarter array parity generator is activated in the quarter array self-refresh mode.
In some embodiments, the error calculator may include a full array error calculator, a half array error calculator and a quarter array error calculator.
The full array error calculator may generate a full array error data having a first number of bits based on the first data, the second parity and the mode register set signal. The half array error calculator generates a half array error data having a second number of bits based on the first data, the second parity and the mode register set signal. The quarter array error calculator generates a quarter array error data having a third number of bits based on the first data, the second parity and the mode register set signal.
In some embodiments, the decoder may include a full decoder, a half decoder and a quarter decoder.
The full decoder decodes the second error data to output the first error data in the full array self-refresh mode in response to the mode register set signal. The half decoder decodes the second error data to output the first error data in the half array self-refresh mode in response to the mode register set signal. The quarter decoder decodes the second error data to output the first error data in the quarter array self-refresh mode in response to the mode register set signal.
In some embodiments, the error correcting circuit may perform an exclusive OR operation on the first data and the first error data to generate the second data.
In some embodiments, the memory cell array may include a data cell array for storing the input data and a parity cell array for storing the parities.
In some embodiments, the parities may be stored in a portion of the memory cell array in which refresh operation is not performed.
At least one of the above and other features and advantages may be realized by providing a method of error correction includes generating at least one parity having different number of bits in response to a partial array self-refresh mode based on input data, selecting one of the parities to output a first parity, storing the input data and the first parity in the memory cell array, calculating an error based on a first data corresponding to the input data and a second parity corresponding to the first parity, generating at least one error data having different number of bits in response to the partial array self-refresh mode, selecting one of the error data to output a first error data, and correcting the first data to generate a second data based on the first data and the first error data.
The above and other features and advantages of the present invention will become more apparent to those of ordinary skill in the art by describing in detail exemplary embodiments thereof with reference to the attached drawings, in which:
Korean Patent Application No. 2007-16584, filed on Feb. 16, 2007, in the Korean Intellectual Property Office, and entitled: “Semiconductor Memory Device Having an Error Correction Function and Method of Error Correction,” is incorporated by reference herein in its entirety.
Example embodiments will now be described more fully hereinafter with reference to the accompanying drawings; however, they may be embodied in different forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art.
It will be understood that, although the terms first, second, etc. may be used herein to describe various elements, these elements should not be limited by these terms. These terms are used to distinguish one element from another. For example, a first element could be termed a second element, and, similarly, a second element could be termed a first element, without departing from the scope of the present invention. As used herein, the term “and/or” includes any and all combinations of one or more of the associated listed items.
It will be understood that when an element is referred to as being “connected” or “coupled” to another element, it can be directly connected or coupled to the other element or intervening elements may be present. In contrast, when an element is referred to as being “directly connected” or “directly coupled” to another element, there are no intervening elements present. Other words used to describe the relationship between elements should be interpreted in a like fashion (e.g., “between” versus “directly between,” “adjacent” versus “directly adjacent,” etc.).
The terminology used herein is for the purpose of describing particular embodiments and is not intended to be limiting of the invention. 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,” “comprising,” “includes” and/or “including,” when used herein, 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.
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 invention 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 will not be interpreted in an idealized or overly formal sense unless expressly so defined herein.
For convenience of description, it is assumed that input data DIN is 128-bit data. The parity generating circuit 110 may generate parities FAPW, HAPW and QAPW having different number of bits (8, 16, and 32 bits, respectively) based on input data DIN according to types of a partial array self-refresh mode (PASR), and select one of the parities FAPW, HAPW, and QAPW to output a first parity WMO. The input data DIN and the first parity WMO may be stored in the memory cell array 120.
The error calculating circuit 130 may calculate an error based on a first data DCO corresponding to the input data DIN and a second parity PCO corresponding to the first parity WMO. The error calculating circuit 130 may also generate error data FAPR, HAPR, and QAPR having different number of bits (8, 16, and 32 bits, respectively) in response to the partial array self-refresh mode, and select one of the error data FAPR, HAPR, and QAPR to output a first error data PERR. The input data DIN and the first parity WMO may be received from the memory cell array 120. The error corrector 140 may correct the first data DCO to generate a second data CDO based on the first data DCO and the first error data PERR.
As illustrated in
The parity generating circuit 110 may include a parity generator 112 and a first multiplexer 114. The parity generator 112 may generate the parities FAPW, HAPW, and QAPW having different number of bits (8, 16, and 32 bits, respectively) based on the input data DIN and the extended mode register set signal EMRS. The first multiplexer 114 may select one of the parities FAPW, HAPW, and QAPW to output the first parity WMO in response to the extended mode register set signal EMRS.
The error calculating circuit 130 may include an error calculator 132, a second multiplexer 134, and a decoder 136. The error calculator 132 may calculate the error in response to the first data DCO and the second parity PCO, and generate the error data FAPR, HAPR, and QAPR having different number of bits (8, 16 and 32 bits, respectively) in response to the extended mode register set signal EMRS. The second multiplexer 134 may select one of the error data FAPR, HAPR, and QAPR, to output second error data RMO in response to the extended mode register set signal EMRS. The decoder 136 may decode the second error data RMO to output the first error data PERR in response to the extended mode register set signal EMRS.
Operation of the semiconductor memory device 100 illustrated in
The input data DIN of 128 bits may be provided to the semiconductor memory device 100. The input data DIN may be stored in the data cell array 122, and provided to the parity generator 112. The parity generator 112 may generate the parities FAPW, HAPW, and QAPW having different number of bits based on the input data DIN and the extended mode register set signal EMRS. The partial array self-refresh mode (PASR) may be determined by the extended mode register set signal (EMRS).
The partial array self-refresh mode may include a full array self-refresh mode, a half array self-refresh mode, and a quarter array self-refresh mode. The parity generator 112 may generate the parity FAPW having eight bits in the full array self-refresh mode, generate the parity HAPW having sixteen bits in the half array self-refresh mode, and generate the parity QAPW having thirty-two bits in the quarter array self-refresh mode. The first multiplexer 114 may select one of the parities FAPW, HAPW and QAPW to output the first parity WMO in response to the extended mode register set signal EMRS. The first parity WMO may be one of the parity FAPW having eight bits, the parity HAPW having sixteen bits, and the parity QAPW having thirty-two bits. The first parity WMO may be stored in the parity cell array 124.
The error calculator 132 may calculate the error in response to the first data DCO and the second parity PCO, and generate the error data FAPR, HAPR and QAPR having different number of bits in response to the extended mode register set signal EMRS. The error calculator 132 may generate the parity FAPR having eight bits in the full array self-refresh mode, the parity HAPR having sixteen bits in the half array self-refresh mode, and the parity QAPR having thirty-two bits in the quarter array self-refresh mode. The second multiplexer 134 may select one of the error data FAPR, HAPR, and QAPR, and output a second error data RMO in response to the extended mode register set signal EMRS. The second error data RMO may be one of the error data FAPR having eight bits, the error data HAPR having sixteen bits, and the error data QAPR having thirty-two bits. The decoder 136 may decode the second error data RMO and output the first error data PERR in response to the extended mode register set signal EMRS.
The semiconductor memory device 100 illustrated in
Accordingly, the semiconductor memory device 100 illustrated in
The full array parity generator 112a may generate a full array parity FAPW having eight bits based on the input data DIN and the extended mode register set signal EMRS. The half array parity generator 112b generates a half array parity HAPW having sixteen bits based on the input data DIN and the extended mode register set signal EMRS. The quarter array parity generator 112c generates a quarter array parity QAPW having thirty-two bits based on the input data DIN and the extended mode register set signal EMRS. In the parity generator 112 illustrated in
The full array error calculator 132a may generate a full array error data FAPR having eight bits based on the first data DCO, the second parity PCO, and the extended mode register set signal EMRS. The half array error calculator 132b may generate a half array error data HAPR having sixteen bits based on the first data DCO, the second parity PCO, and the extended mode register set signal EMRS. The quarter array error calculator 132c may generate a quarter array error data QAPR having thirty-two bits based on the first data DCO, the second parity PCO, and the extended mode register set signal EMRS. In the error calculator 132 illustrated in
The full decoder 136a may decode the second error data RMO to output the first error data PERR in the full array self-refresh mode in response to the extended mode register set signal EMRS. The half decoder 136b may decode the second error data RMO to output the first error data PERR in the half array self-refresh mode in response to the extended mode register set signal EMRS. The quarter decoder 136c may decode the second error data RMO to output the first error data PERR in the quarter array self-refresh mode in response to the extended mode register set signal EMRS.
In the memory cell arrays 200, 300 and 400 illustrated in
In the memory cell array 500 illustrated in
In the memory cell array 600 illustrated in
Referring to the memory cell array 200 illustrated in
Referring to the memory cell array 300 illustrated in
Referring to the memory cell array 400 illustrated in
Referring to the memory cell array 500 illustrated in
Referring to the memory cell array 600 illustrated in
Referring to
In
Referring to
As described above, the semiconductor memory device according to the embodiments may increase the number of parity bits according to a partial array self-refresh mode, and may increase data bits to be corrected by using memory banks in which refresh operation is not performed in a refresh mode. Therefore, the semiconductor memory device according to embodiments may increase the refresh period and may decrease a power consumption in a refresh mode.
Exemplary embodiments of the present invention have been disclosed herein, and although specific terms are employed, they are used and are to be interpreted in a generic and descriptive sense only and not for purpose of limitation. For example, the error correcting of embodiments may be implemented in software, e.g., by an article of manufacture having a machine-accessible medium including data that, when accessed by a machine, cause the machine to generate corrected data. Accordingly, it will be understood by those of ordinary skill in the art that various changes in form and details may be made without departing from the spirit and scope of the present invention as set forth in the following claims.
Number | Date | Country | Kind |
---|---|---|---|
2007-16584 | Feb 2007 | KR | national |