Provided herein is a semiconductor memory device. The semiconductor memory device may include a plurality of planes including a plurality of memory cells, read/write circuits coupled to the plurality of planes, respectively, and temporarily storing normal data inputted from an external device, random data, and parity data, and an error correction circuit generating the random data by randomizing the normal data, generating parity data for the random data during a program operation, correcting an error of the random data by using the parity data and de-randomizing the random data during a read operation.
|
1. A semiconductor memory device comprising:
a plurality of planes including a plurality of memory cells;
read/write circuits coupled to the plurality of planes, respectively, and temporarily storing normal data inputted from an external device, random data, and parity data; and
an error correction circuit generating the random data by randomizing the normal data, generating parity data for the random data during a program operation, correcting an error of the random data by using the parity data and de-randomizing the random data during a read operation,
wherein the read/write circuits comprise:
first latches temporarily storing the normal data input from the external device or outputting the normal data de-randomized from the random data to the external device;
second latches exchanging the random data or the normal data de-randomized from the random data, with the error correction circuit; and
third latches exchanging data with selected memory cells during the program operation or the read operation.
19. A semiconductor memory device comprising:
a plurality of planes including a plurality of memory blocks;
page buffer groups coupled to the plurality of planes, respectively, and temporarily storing first data, second data randomized from the first data, or parity data used for an error correction operation;
column selection decoders sequentially transmitting the first data, the second data or the parity data stored in the page buffer groups to global data lines, or sequentially transmitting data loaded on the global data lines to the page buffer groups;
an error correction circuit coupled to the page buffer groups through the global data lines, randomizing the first data to convert the first data into the second data, generating the parity data for the second data, performing the error correction operation, and de-randomizing the second data to convert the second data into the first data; and
a global buffer transmitting data between the page buffer groups,
wherein the page buffer groups comprise:
first latches temporarily storing the first data input from an external device or outputting the second data to the external device;
second latches exchanging the first or second data with the error correction circuit; and
third latches exchanging data with selected memory cells during a program operation or a read operation.
11. A semiconductor memory device comprising:
a plurality of memory blocks including a plurality of memory cells;
a page buffer group coupled to the plurality of memory blocks through bit lines and temporarily storing first data, second data randomized from the first data, or parity data;
a first column selection decoder sequentially transmitting the first data, the second data, or the parity data stored in the page buffer group to a first global data line;
a second column selection decoder sequentially inputting the first data, the second data, or the parity data loaded on a second global data line to the page buffer group; and
an error correction circuit coupled to the page buffer group through the first and second global data lines, randomizing the first data to convert the first data into the second data, generating the parity data, correcting an error of the second data by using the parity data, and de-randomizing the second data to convert the second data into the first data,
wherein the page buffer group comprises:
first latches temporarily storing the first data input from an external device or outputting the second data to the external device;
second latches exchanging the first or second data with the error correction circuit; and
third latches exchanging data with selected memory cells during a program operation or a read operation.
2. The semiconductor memory device according to
3. The semiconductor memory device according to
a main page buffer group temporarily storing the normal data or the random data and performing the program operation or the read operation on a selected page by using the random data;
a spare page buffer group storing the parity data;
a repair page buffer group temporarily storing repair data and performing the program operation or the read operation on the selected page by using the repair data;
column selection decoders generating column selection signals for transmitting the normal data, the parity data or the random data between the main page buffer group, the spare page buffer group or the repair page buffer group and the error correction circuit; and
a column selection control circuit controlling the column selection decoders in response to a column address.
4. The semiconductor memory device according to
the spare page buffer group includes a plurality of spare page buffers, and
the repair page buffer group includes a plurality of repair page buffers.
5. The semiconductor memory device according to
6. The semiconductor memory device according to
7. The semiconductor memory device according to
8. The semiconductor memory device according to
9. The semiconductor memory device according to
data stored in the main page buffer group, the spare page buffer group, or the repair page buffer group is transmitted to the error correction circuit through a global data line, or
data input to the error correction circuit is transmitted to the main page buffer group, the spare page buffer group, or the repair page buffer group through the global data line.
10. The semiconductor memory device according to
12. The semiconductor memory device according to
a main page buffer group storing normal data included in the first or second data; and
a repair page buffer group storing repair data in replacement of a defective bit line of the main page buffer group.
13. The semiconductor memory device according to
14. The semiconductor memory device according to
15. The semiconductor memory device according to
16. The semiconductor memory device according to
17. The semiconductor memory device according to
18. The semiconductor memory device according to
a spare page buffer group for storing the parity data generated in the error correction circuit.
20. The semiconductor memory device according to
main page buffer groups storing normal data included in the first or second data; and
repair page buffer groups storing repair data in replacement of defective bit lines of the main page buffer groups.
21. The semiconductor memory device according to
22. The semiconductor memory device according to
23. The semiconductor memory device according to
24. The semiconductor memory device according to
spare page buffer groups for storing the parity data generated in the error correction circuit.
25. The semiconductor memory device according to
|
The present application claims priority under 35 U.S.C. § 119(a) to Korean patent application number 10-2016-0149522 filed on Nov. 10, 2016, which is herein incorporated by reference in its entirety.
Various embodiments of present invention relate generally to a semiconductor memory device performing a randomization operation and, more particularly, to a semiconductor memory device including a page buffer for temporarily storing parity data.
A memory system includes a semiconductor memory device for storing data and a memory controller for controlling transmission of a command, an address, and data between the semiconductor memory device and a host.
Semiconductor memory devices are classified into volatile memory devices or non-volatile memory devices.
The host may communicate with a semiconductor memory device using an interface protocol such as a peripheral component interconnect-express (PCI-E), an advanced technology attachment (ATA), a serial ATA (SATA), a parallel ATA (PATA), and the like. The interface protocols between the host and the semiconductor memory device are not limited to the above-described examples, but may include other various protocols such as a universal serial bus (USB), a multi-media card (MMC), an enhanced small disk interface (ESDI), or integrated drive electronics (IDE).
Various embodiments of the present invention are directed to a semiconductor memory device capable of reducing a size thereof by temporarily storing parity data used for an error correction operation, in page buffers during a program operation or a read operation.
One embodiment of the present invention provides a semiconductor memory device including a plurality of planes including a plurality of memory cells, read/write circuits coupled to the plurality of planes, respectively, and temporarily storing normal data inputted from an external device, random data, and parity data, and an error correction circuit generating the random data by randomizing the normal data, generating parity data for the random data during a program operation, correcting an error of the random data by using the parity data and de-randomizing the random data during a read operation.
According to an embodiment, a semiconductor memory device may include a plurality of memory blocks including a plurality of memory cells, a page buffer group coupled to the plurality of memory blocks through bit lines and temporarily storing first data, second data randomized from the first data, or parity data, a first column selection decoder sequentially transmitting the first data, the second data, or the parity data stored in the page buffer group to a first global data line, a second column selection decoder sequentially inputting the first data, the second data, or the parity data loaded on a second global data line to the page buffer group, and an error correction circuit coupled to the page buffer group through the first and second global data lines, randomizing the first data to convert the first data into the second data, generating the parity data, correcting an error of the second data by using the parity data, and de-randomizing the second data to convert the second data into the first data.
According to an embodiment, a semiconductor memory device may include a plurality of planes including a plurality of memory blocks, page buffer groups coupled to the plurality of planes, respectively, and temporarily storing first data, second data randomized from the first data, or parity data used for an error correction operation, column selection decoders sequentially transmitting the first data, the second data or the parity data stored in the page buffer groups to global data lines, or sequentially transmitting data loaded on the global data lines to the page buffer groups, an error correction circuit coupled to the page buffer groups through the global data lines, randomizing the first data to convert the first data into the second data, generating the parity data for the second data, performing the error correction operation, and de-randomizing the second data to convert the second data into the first data, and a global buffer transmitting data between the page buffer groups.
The above and other features and advantages of the present invention will become more apparent to those skilled in the art to which the present invention pertains by the following detailed description with reference to the attached drawings in which:
Hereinafter, embodiments of the present invention will be described in greater detail with reference to the accompanying drawings. In the following description, only parts necessary for understanding the operation according to the present invention will be described, and descriptions of other parts will be omitted so as not to obscure the gist of the present invention. In addition, we note that the present invention may be embodied in different other forms and should not be construed as being limited only to the embodiments set forth herein. Rather, these embodiments are provided so that this invention will be thorough and complete, and will fully convey the scope of the example embodiments to those skilled in the art.
Throughout the specification, when an element is referred to as being “coupled” to another element, it can be directly connected or coupled to another element or “be indirectly coupled” to another element with one or more intervening elements interposed therebetween. In addition, throughout the specification, when an element is referred to as “including” a component, this indicates that the element may further include another component instead of excluding another component.
Referring to
The host 2000 may communicate with the memory system 1000 using an interface protocol such as a peripheral component interconnect-express (PCI-E), an advanced technology attachment (ATA), a serial ATA (SATA), a parallel ATA (PATA), or a serial attached SCSI (SAS). In addition, interface protocols between the host 2000 and the memory system 1000 may not be limited to the above-described examples, and may be one of other interface protocols such as universal serial bus (USB), a multi-media card (MMC), an enhanced small disk interface (ESDI) or integrated drive electronics (IDE).
The memory controller 1200 may control all operations of the memory system 1000 and control data exchange between the host 2000 and the semiconductor memory device 1100. For example, the memory controller 1200 may control the semiconductor memory device 1100 to program or read data according to a request from the host 2000. In addition, the memory controller 1200 may store information of main memory blocks and sub-memory blocks included in the semiconductor memory device 1100, and select the main memory blocks or sub-memory blocks in the semiconductor memory device 1100 to perform a program operation on the selected memory block according to the amount of loaded data for the program operation. According to an embodiment, the semiconductor memory device 1100 may include a double data rate synchronous dynamic random access memory (DDR SDRAM), a low power double data rate4 (LPDDR4) SDRAM, a graphics double data rate (GDDR) SDRAM, a low power DDR (LPDDR), a Rambus dynamic random access memory (RDRAM), or a flash memory.
The semiconductor memory device 1100 may perform a program operation, a read operation, or an erase operation under the control of the memory controller 1200. During the program operation, the semiconductor memory device 1100 may randomize data inputted from an external device to generate random data, temporarily store the random data, and program the random data to memory cells. During the read operation, the semiconductor memory device 1100 may perform an error correction operation on data read from the memory cells and de-randomize the error-corrected data into the original data to output the original data.
Referring to
The voltage generation circuit VGC may generate various voltages required for the program, read, or erase operation in response to a voltage generation signal VS received from the control logic C_LOGIC.
The planes PL1 to PLi may each include a plurality of memory cells for storing data. Each of the planes PL1 to PLi may be paired with a corresponding read/write circuit among the plurality of read/write circuits RWC1 to RWCi and a corresponding decoder among the plurality of decoders DEC1 to DECi, respectively, for performing the program, read or erase operation on selected memory cells. For example, the first read/write circuit RWC1 and the first decoder DEC1 may be coupled to the first plane PL1. A second read/write circuit RWC2 and a second decoder DEC2 may be coupled to a second plane PL2. In the same manner, the ith read/write circuit RWCi and the ith decoder DECi may be coupled to the ith plane PLi.
The read/write circuits RWC1 to RWCi may temporarily store data converted by the error correction operation or a randomization operation during the read operation or the program operation on a selected plane from the planes PL1 to PLi, in response to a column address CADD and page buffer control signals PBS output from the control logic C_LOGIC. The read/write circuits RWC1 to RWCi may temporarily store the data input from the external device, the random data, and parity data input from the error correction circuit ECC.
The decoders DEC1 to DECi may be coupled to the voltage generation circuit VGC via global lines GL and may transmit voltages transmitted through the global lines GL to a selected plane during the program or the read operation on the selected plane, in response to a row address RADD output from the control logic C_LOGIC.
The global buffer GB may transmit a command CMD, an address ADD, and data DATA between the external device and the semiconductor memory device 1100. For example, the global buffer GB may be coupled to the external device via input/output lines IO. The external device may be the memory controller (1200 of
The error correction circuit ECC may be coupled to the read/write circuits RWC1 to RWCi via global data Lines GDL. The error correction circuit ECC may perform a randomization operation and a de-randomization operation in addition to the error correction operation in response to error correction signals ECCS received from the control logic C_LOGIC. For example, during the program operation, the error correction circuit ECC may perform the randomization operation using the input data from the external device and transmit the random data generated by performing the randomization operation to the selected read/write circuit. For example, the randomization operation may be performed by calculating the input data and a seed data and generating the random data. The seed data may be stored in a portion of registers included in the error correction circuit ECC or in a separate register provided outside the error correction circuit ECC.
In addition, the error correction circuit ECC may generate parity data for the input data during the program operation. For example, the error correction circuit ECC may divide the input data into a plurality of groups and generate a parity bit for each group. Such parity bits may be referred to as parity data. The parity data may be used to detect and correct errors of the data read during the read operation. For example, the error correction circuit ECC may divide the input data into a plurality of column units and generate a single parity bit for the data included in each column unit. For example, when the data of the selected page corresponds to the first to twentieth columns, respectively, a first parity bit may be generated in the data of the first to fourth columns, a second parity bit may be generated in the data of the fifth to eighth columns, and a fifth parity bit may be generated in the data of the seventeenth to twentieth columns in such a manner. The error correction circuit ECC may transmit the parity data to the read/write circuit when transmitting the random data to the selected read/write circuit. During the read operation, the error correction circuit ECC may receive the parity data together the data read from the selected read/write circuit. For example, the error correction circuit ECC may perform the error correction operation on the read data by using the parity data, de-randomize the error-corrected read data, and transmit the de-randomized data to the selected read/write circuit. For example, during the read operation, the error correction circuit ECC may perform an error checking and correction operation by using a parity bit corresponding to each column unit. For example, the error correction circuit ECC may sequentially receive the read data and the parity data and use the parity bit corresponding to each column unit to perform the error checking and correction operation on the data of the corresponding column unit.
Referring to
Referring to
The string ST may include source select transistors SST, first to nth memory cells F1 to Fn (n is a positive integer) and drain select transistors DST coupled in series in the recited order between the common source line SL and a corresponding bit line BL.
The source select transistor SST may be coupled between the source line SL and a first memory cell F1. The first to nth memory cells F1 to Fn may be coupled in series between the source select transistor SST and the drain select transistor DST. The drain select transistor DST may be coupled between the nth memory cell Fn and the bit line BL. Although not shown in
Gates of the source select transistors SST included in different strings ST may be coupled to a source select line SSL, gates of the first to nth memory cells F1 to Fn may be coupled to first to nth word lines WL1 to WLn, respectively, and gates of the drain select transistors DST may be coupled to drain select line DSL.
A group of memory cells coupled to the same word line may be referred to as a page PG. The program and read operations may be performed in a page unit in the selected memory block.
Referring to
The page buffer groups M_PBG, S_PBG, and R_PBG may include a main page buffer group M_PBG, a spare page buffer group S_PBG, and a repair page buffer group R_PBG.
The main page buffer group M_PBG may include a plurality of main page buffers coupled to the bit lines BL. The main page buffer group M_PBG may temporarily store the data DATA received from the external device (for example, the memory controller 1200 of
The spare page buffer group S_PBG may include a plurality of spare page buffers coupled to the bit lines BL. The spare page buffer group S_PBG may store the parity data. The spare page buffer group S_PBG may exchange the parity data with the error correction circuit ECC through the first global data line GDL1 or the second global data line GDL2 in response to first spare column selection signals CS1_S or second spare column selection signals CS2_S.
The repair page buffer group R_PBG may include a plurality of repair page buffers coupled to the bit lines BL. The repair page buffer group R_PBG may be used to replace a defective column, i.e., a defective bit line among the bit lines BL coupled to the main page buffer group M_PBG. Thus, the repair page buffer group R_PBG may be configured to temporarily store repair data, and perform the program operation or the read operation on the selected page by using the repair data. To this end, the repair page buffer group R_PBG may receive the data DATA input from the external device or output the data read from the memory cells to the external device. The repair page buffer group R_PBG may exchange the repair data with the error correction circuit ECC through the first global data line GDL1 or the second global data line GDL2 in response to first repair column selection signals CS1_R or second repair column selection signals CS2_R.
The page buffer groups M_PBG, S_PBG and R_PBG may operate in response to the page buffer control signals PBS.
The first column selection control circuit CS1_CON may provide the first column selection control signals CS1SIG to the first column selection decoder CS1_DEC in response to the column address CADD.
The first column selection decoder CS1_DEC may output the first main column selection signals CS1_M, the first spare column selection signals CS1_S, or the first repair column selection signal CS1_R in response to the first column selection control signals CS1SIG. The first main column selection signals CS1_M may be applied to the main page buffers included in the main page buffer group M_PBG, respectively, the first spare column selection signals CS1_S may be applied to the spare page buffers included in the spare page buffer group S_PBG, respectively, and the first repair column selection signals CS1_R may be applied to the repair page buffers included in the repair page buffer group R_PBG, respectively. The page buffers included in the main page buffer group M_PBG, the spare page buffer group S_PBG, and the repair page buffer group R_PBG may transmit the data stored therein to the first global data line GDL1 in response to the first main column selection signals CS1_M, the first spare column selection signals CS1_S, and the first repair column selection signals CS1_R.
The second column selection control circuit CS2_CON may provide the second column selection control signals CS2SIG to the second column selection decoder CS1_DEC in response to the column address CADD.
In response to the second column selection control signals CS2SIG, the second column selection decoder CS2_DEC may output the second main column selection signals CS2_M, the second spare column selection signals CS2_S, or the second repair column selection signals CS2_R. The second column selection decoder CS2_DEC may selectively output the second main column select signals CS2_M, the second spare column selection signals CS2_S, and the second repair column selection signals CS2_R in response to the second column selection control signals CS2SIG. The second main column selection signals CS2_M may be applied to the main page buffers included in the main page buffer group M_PBG, respectively, the second spare column selection signals CS2_S may be applied to the spare page buffers included in the spare page buffer group S_PBG, respectively, and the second repair column selection signals CS2_R may be applied to the repair page buffers included in the repair page buffer group R_PBG, respectively. The page buffers included in the main page buffer group M_PBG, the spare page buffer group S_PBG, and the repair page buffer group R_PBG may store the data transmitted from the second global data line GDL2 In response to the second main column selection signals CS2_M, the second spare column selection signals CS2_S, and the second repair column selection signals CS2_R.
The page buffer groups M_PBG, S_PBG and R_PBG will be described in more detail below in reference to
Referring to
The page buffers included in the main page buffer group M_PBG, the spare page buffer group S_PBG, and the repair page buffer group R_PBG may be configured to be similar with one another. Therefore, only two of the main page buffers included in the main page buffer group M_PBG is exemplarily described below in reference to
More specifically,
Referring to
The first to dth latches LAT1 to LATd may exchange data with each other. The first to dth latches LAT1 to LATd may be classified into a first portion coupled to the global buffer GB to exchange the data DATA with the external device through the global buffer GB, a second portion coupled to first and second global data lines GDL1 and GDL2 to exchange the data DATA with the error correction circuit ECC through the first and second global data lines GDL1 and GDL2, and a third portion coupled to the bit lines BL to exchange the data with the selected memory cells during the program operation or the read operation. For example, the first latches LAT1 may be coupled to the global buffer GB and the dth latches LATd may be coupled to the first and second global data lines GDL1 and GDL2 as Illustrated in
The dth latches LATd may exchange the data with the first and second global data lines GDL1 and GDL2 in response to first main column selection signals CS1_M<1> and CS1_M<2>, and second main column selection signals CS2_M<1> and CS2_M<2>. The dth latch LATd included in the first main page buffer MPB1 may operate in response to the first main column selection signal CS1_M<1> or the second main column selection signal CS2_M<i>, the dth latch LATd included in the second main page buffer MPB2 may operate in response to the first main column selection signal CS1_M<2> or the second main column selection signal CS2_M<2>. The first main column selection signals CS1_M may be sequentially applied to the first to ath main page buffers MPB1 to MPBa. For example, when the first main column selection signal CS1_M<1> is applied to the dth latch LATd of the first main page buffer MPB1, the data DATA stored therein may be transmitted to the first global data line GDL1. Subsequently, when the first main column selection signal CS1_M<2> is applied to the dth latch LATd of the second main page buffer MPB2, the data DATA stored therein may be transmitted to the first global data line GDL1. That is, the first column selection decoder CS1_DEC may sequentially transmitted the same number of first main column selection signals CS1_M as the number of the main page buffers included in the main page buffer group (M_PBG In
Therefore, in response to the first main column selection signal CS1_M<1>, the data stored in the dth latch LATd of the first main page buffer MPB1 may be applied to the first global data line GDL1, and the data applied to the first global data line GDL1 may be transmitted to the error correction circuit ECC. The data stored in the dth latch LATd of the second main page buffer MPB2 may be applied to the first global data line GDL1 in response to the first main column selection signal CS1_M<2> and the data applied to the global data line GDL1 may be transmitted to the error correction circuit ECC. In such a manner, the first column selection decoder CS1_DEC may sequentially transmitted the first main column selection signals CS1_M<1> to CS1_M<a>. The first to ath page buffers MPB1 to MPBa included in the main page buffer group M_PBG may sequentially transmit the data DATA stored in each of the dth latches LATd to the first global data line GDL1 in response to the sequentially transmitted first main column selection signals CS1_M<1> to CS1_M<a>. The data DATA transmitted to the first global data line GDL1 may be sequentially applied to the error correction circuit ECC. The data of the second main page buffer MPB2 may be transmitted to the first global data line GDL1 after the data of the first main page buffer MPB1 transmitted to the first global data line GDL1 is transmitted to the error correction circuit ECC.
The data stored in the spare and repair page buffer groups S_PBG and R_PBG may be transmitted to the error correction circuit ECC via the first global data line GDL1 in the manner described above.
Meanwhile, the second column selection decoder CS2_DEC may sequentially transmitted the second main column selection signals CS2_M<1> to CS2_M<a>. When the data randomized in the error correction circuit ECC is referred to as random data RDATA, the random data RDATA may be sequentially transmitted to the first to am main page buffers MPB1 to MPBa through the second global data line GDL2 in response to the second main column selection signals CS2_M<1> to CS2_M<a> in the same manner described above. The error correction circuit ECC may sequentially transmit the random data RDATA to the second global data line GDL2 In response to the error correction signals ECCS. In addition, when the error correction circuit ECC performs a de-randomization operation to restore the random data RDATA to the original data, the restored data DATA may be transmitted to the first to ath main page buffers MPB1 to MPBa via the second global data line GDL2.
Subsequently, a connection between the first and second global data lines GDL1 and GDL2 and the dth latches LATd will be described below.
Referring to
The page buffer may include first to fourth switches S1 to S4 for electrically connecting or disconnecting the first and second global data lines GDL1 and GDL2 and the first and second global inverted data lines GDL1b and GDL2b to or from the dth latch LATd. The first to fourth switches S1 to S4 may be embodied as NMOS transistors.
The first and second switches S1 and S2 may electrically connect or disconnect the first global data line GDL1 and the first global inverted data line GDL1b to or from the dth latch LATd in response to the first main column selection signal CS1_M<1>. The third and fourth switches S3 and S4 may electrically connect or disconnect the second global data line GDL2 and the second global inverted data line GDL2b to or from the latch LATd in response to the second main column selection signal CS2_M<1>. The first switch S1 may be coupled between the first global inverted data line GDL1b and a second input node Q2, and the second switch S2 may be coupled between the first global data line GDL1 and a first input node Q1. The third switch S3 may be coupled between the second global inverted data line GDL2b and the second input node Q2, and the fourth switch S4 may be coupled between the second global data line GDL2 and the first input node Q.
The dth latch LATd may include first and second inverters I1 and I2 coupled in parallel between the first and second input nodes Q1 and Q2. Accordingly, the data of the first input node Q1 may have a level opposite to the data of the second input node Q2. The first input node Q1 may be coupled to the first global data line GDL1 through the second switch S2 or to the second global data line GDL2 through the fourth switch S4. The second input node Q2 may be coupled to the first global inverted data line GDL1b via the first switch S1 or to the second global inverted data line GDL2b via the third switch S3. Therefore, when the first main column selection signal CS1_M<1> at a high level is applied to the first and second switches S1 and S2, the data of the first input node Q1 and the data of the second input node Q2 may be simultaneously transmitted to the first global data Line GDL1 the first global inverted data line GDL1b, respectively. When the second main column selection signal CS2_M<1> at the high level is applied to the third and fourth switches S3 and S4, the data of the second global data line GDL2 and the data of the second global inverted data line GDL2b may be simultaneously transmitted to the first input node Q1 and the second input node Q2, respectively.
Referring to
The data stored in the main page buffer group M_PBG, the spare page buffer group S_PBG and the repair page buffer group R_PBG may be selectively transmitted to the first global data line GDL1 and the first global inverted data line GDL1b in response to the first main column selection signals CS1_M, the first spare column selection signals CS1_S, and the first repair column selection signals CS1_R, respectively.
The second global data line GDL2 and the second global inverted data line GDL2b may form a pair and may be commonly coupled to the latches LATd, LATe and LATf of the page buffers included in the main page buffer group M_PBG, the spare page buffer group S_PBG, and the repair page buffer group R_PBG through the switches which were described in detail with reference to
The data stored in the main page buffer group M_PBG, the spare page buffer group S_PBG, and the repair page buffer group R_PBG may be selectively transmitted to the second global data line GDL2 and the second global inverted data line GDL2b in response to the second main column selection signals CS2_M, the second spare column selection signals CS2_S, and the second repair column selection signals CS2_R.
Referring to
The first data inputted to the page buffers may be transmitted to the error correction circuit ECC of
The error correction circuit ECC may convert the first data into second data and generate parity data for the second data (S103). More specifically, the error correction circuit ECC may perform a randomization operation using seed data to convert the first data into second data and generate the parity data for the second data.
Subsequently, the error correction circuit ECC may transmit the second data and the parity data to the page buffers (S104). For example, the second data may be transmitted to the main page buffer group M_PBG and the parity data may be transmitted to the spare page buffer group S_PBG, via the second global data line GDL2 and the second global inverted data line GDL2b. When a repair operation is performed due to defects in a portion of the bit lines and, the second data may be distributed and transmitted to the main page buffer group M_PBG and the repair page buffer group R_PBG. For example, data corresponding to a normal column address of the second data may be transmitted to the main page buffer group M_PBG, and data corresponding to a defective column address may be transmitted to the repair page buffer group R_PBG in replacement of the main page buffer group M_PBG. At S104, the second data may be transmitted to the second latches of the page buffers and transmitted to third latches for performing the program operation.
The control logic (C_LOGIC of
A data transmission operation for the program operation on the first page (S103 to S105) may overlap with a portion of a data transmission operation for the program operation on a second page (S120). The program operation will be described in more detail as below.
When the first data is converted into the second data and the parity data is generated for the program operation on the first page (S103), third data for the program operation on the second page may be transmitted from the external device to the page buffers (S121). For example, when the first data is converted into the second data in the error correction circuit ECC (S103), since the first latches of the page buffers are not used, the third data for the second page may be inputted to the first latches. To this end, an initialization operation of the first latches may be further performed before the third data may be inputted to the first latches.
When the second data and the parity data for the first page are transmitted to the page buffers (S104), the third data for the program operation on the second page may be transmitted to the error correction circuit ECC (S122). For example, after the second data for the first page is transmitted from the second latches to the third latches of the page buffers, the third data for the second page may be transmitted from the first latches to the second latches of the page buffers. The third data transmitted to the second latches may be transmitted to the error correction circuit ECC via the first global data line GDL1 and the first global inverted data line GDL1b. To this end, after the second data is transmitted from the second latches to the third latches, an initialization operation of the second latches may be further performed. When the second latches are initialized, the third data may be transmitted to the second latches from the first latches, and the third data transmitted to the second latches may be transmitted to the error correction circuit ECC.
When the second data is programmed to the first page (S105), the error correction circuit ECC may convert the third data into fourth data (S123). For example, the error correction circuit ECC may perform the randomization operation using the seed data to convert the third data into the fourth data and generate the parity data for the fourth data (S123).
Since the program operation on the first page overlaps with a portion of the program operation on the second page (S121, S122 and S123) as described above, the program operation time may be reduced.
Subsequently, the error correction circuit ECC may transmit the fourth data and the parity data to the page buffers (S124). For example, the fourth data may be transmitted to the main page buffer group M_PBG and the parity data may be transmitted to the spare page buffer group S_PBG, via the second global data line GDL2 and the second global inverted data line GDL2b. When the repair operation is performed due to the defects in the portion of the bit lines, the fourth data may be distributed and transmitted to the main page buffer group M_PBG and the repair page buffer group R_PBG. For example, the data corresponding to the normal column address of the fourth data may be transmitted to the main page buffer group M_PBG, and the data corresponding to the defective column address may be transmitted to the repair page buffer group R_PBG in replacement of the main page buffer group M_PBG. At S124, the fourth data stored in the error correction circuit ECC may be transmitted to the second latches of the page buffers and retransmitted to the third latches of the page buffers for performing the program operation. To this end, the third latches may be initialized before the fourth data is retransmitted to the third latches.
The control logic C_LOGIC may control the voltage generation circuit VGC and the read/write circuits RWC1 to RWCi so that the fourth data input to the main page buffer group M_PBG or to the main page buffer group M_PBG and the repair page buffer group R_PBG may be programmed to the selected page of the selected memory block (S125). For example, the program operation on the selected page may be performed by using the fourth data retransmitted to the third latches of the page buffers.
The program operation on a plurality of pages included in the selected memory block may be performed in the above-described manner. After the program operation is completed, the read operation on the selected memory block may be performed in reverse order to the program operation. The read operation will be described in more detail as below.
Referring to
The second data inputted to the page buffers may be transmitted to the error correction circuit ECC (S112). The parity data stored in the spare page buffer group S_PBG may be transmitted to the error correction circuit ECC together with the second data. For example, the second data inputted to the third latches of the page buffers may be transmitted to the second latches, and the second data transmitted to the second latches and the parity data stored in the spare page buffer group S_PBG may be transmitted to the error correction circuit ECC through the global data line GDL1 and the first global inverted data line GDL1b.
The error correction circuit ECC may use the parity data received together with the second data to determine whether there is an error in the second data. When there is an error, after correcting the error, the error correction circuit ECC may convert the second data into the first data, which is the original data, using the seed data (S113).
Subsequently, the error correction circuit ECC may transmit the first data to the page buffers (S114). For example, the error correction circuit ECC may transmit the first data to the second latches of the page buffers via the second global data line GDL2 and the second global inverted data line GDL2b. The parity data may not be transmitted to the spare page buffer group S_PBG. The first data transmitted to the second latches of the page buffers may be retransmitted to the first latches of the page buffers to be output.
The first data transmitted to the first latches of the page buffers may be transmitted to the external device (S115). For example, the first data transmitted to the first latches may be transmitted to the memory controller 1200 via the global buffer (GB of
A data transmission operation for the read operation on the first page (S113 to S115) may overlap with a portion of a data transmission operation for the read operation on the second page (S130). The read operation will be described in more detail as below.
When the second data is converted into the first data for the read operation on the first page (S113), the fourth data read from the memory cells of the second page may be inputted to the third latches of the page buffers (S131). To this end, an initialization operation of the third latches may be further performed before the fourth data is input to the third latches.
Since the first data for the first page is transmitted to the second latches of the page buffers and the first data is retransmitted to the first latches (S114), the second latches of the page buffers may not be used. The fourth data input to the third latches may be transmitted to the second latches, and the fourth data input to the second latches may be transmitted to the error correction circuit ECC (S132). For example, the fourth data may be transmitted to the error correction circuit ECC through the first global data line GDL1 and the first global inverted data line GDL1b. The parity data stored in the spare page buffer group S_PBG may be transmitted to the error correction circuit ECC through the first global data line GDL1 and the first global inverted data line GDL1b.
When the first data input to the first latches of the page buffers is output to the external device (S115), the error correction circuit ECC may use the parity data received together with the fourth data to determine whether there is an error. When there is an error, after correcting the error, the error correction circuit ECC may convert the fourth data into the third data, which is the original data, using the seed data (S133).
Since the read operations of the first page and the second page may be simultaneously performed (S131, S132, and S133) as described above, the read operation time may be reduced.
The error correction circuit ECC may transmit the third data to the page buffers (S134). For example, the error correction circuit ECC may transmit the third data to the second latches of the page buffers via the second global data line GDL2 and the second global inverted data line GDL2b. The parity data may not be transmitted to the spare page buffer group S_PBG. The third data transmitted to the second latches of the page buffers may be retransmitted to the first latches of the page buffers to be output. When the repair operation is performed, data corresponding to the defective column address of the main page buffer group M_PBG of the third data may be transmitted to the page buffers of the repair page buffer group R_PBG.
The third data transmitted to the first latches of the page buffers may be transmitted to the external device (S135). For example, the third data transmitted to the first latches may be transmitted to the memory controller 1200 via the global buffer GB.
As described above, since the page buffers are used to store the parity data generated for the error correction operation in replacement of a separate register, an additional device for temporarily storing the parity data may not be required. Accordingly, sizes of the semiconductor memory device and the memory system including the same may be reduced.
In
Referring to
The page buffer groups M_PBG, S_PBG and R_PBG may include a main page buffer group M_PBG, a spare page buffer group S_PBG and a repair page buffer group R_PBG.
The main page buffer group M_PBG may include a plurality of main page buffers coupled to the bit lines BL. The main page buffer group M_PBG may temporarily store the data DATA inputted from the external device or the random data randomized by the error correction circuit ECC, and perform the program operation or the read operation on the selected page by using the random data. The main page buffer group M_PBG may exchange the data with the error correction circuit ECC via the global data line GDL in response to main column selection signals CS_M. The external device may be a memory controller, and the page buffer groups M_PBG, S_PBG, and R_PBG may exchange the data with the external device through the global buffer (GB of
The spare page buffer group S_PBG may include a plurality of spare page buffers coupled to the bit lines BL. The spare page buffer group S_PBG may exchange the parity data with the error correction circuit ECC through the global data line GDL in response to spare column selection signals CS_S.
The repair page buffer group R_PBG may include a plurality of repair page buffers coupled to the bit lines BL. The repair page buffer group R_PBG may be used to replace a defective column, i.e., a defective bit line among the bit lines BL coupled to the main page buffer group M_PBG. The repair page buffer group R_PBG may temporarily store repair data, and perform the program operation or the read operation on the selected page by using the repair data. To this end, the repair page buffer group R_PBG may receive the data DATA from the external device (for example, a memory controller) or transmit the data read from the memory cells to the external device. The repair page buffer group R_PBG may exchange the repair data with the error correction circuit ECC via the global data line GDL in response to repair column selection signals CS_R.
The page buffer groups M_PBG, S_PBG, and R_PBG may operate in response to page buffer control signals PBS.
The column selection decoder CS_DEC may output the main column selection signals CS_M, the spare column selection signals CS_S or the repair column selection signals CS_R in response to column selection control signals CSSIG. For example, the column selection decoder CS_DEC may selectively output the main column selection signals CS_M, the spare column selection signals CS_S and the repair column selection signals CS_R In response to the column selection control signals CSSIG. The main column selection signals CS_M may be applied to the main page buffers included in the main page buffer group M_PBG, respectively, the spare column selection signals CS_S may be applied to the spare page buffers included in the spare page buffer group S_PBG, respectively, and the repair column selection signals CS_R may be applied to the repair page buffers included in the repair page buffer group R_PBG, respectively. The page buffers included in the main page buffer group M_PBG, the spare page buffer group S_PBG, and the repair page buffer group R_PBG may transmit the data stored therein to the global data line GDL in response to the main column selection signals CS_M, the spare column selection signals CS_S, and the repair column selection signals CS_R, respectively.
The column selection control circuit CS_CON may output the column selection control signals CSSIG in response to the column address CADD.
The main page buffers, the spare page buffers, and the repair page buffers may include a plurality of latches, respectively, as described above with reference to
Referring to
Except for the numbers of global data lines GDL and global inverted data lines GDLb and the number of switches for electrically connecting or disconnecting the global inverted data line GDLb to or from the latch LATd is similar with those in
However, since the latch LATd shown in
Data stored in page buffers included in different planes may be transmitted through the global data line GDL and the global inverted data line GDLb. For example, the data stored in the page buffer of the first plane PL1 may be transmitted to the global buffer GB via the global data line GDL and the global inverted data line GDLb, and the data transmitted to the global buffer GB may be transmitted to the page buffer of the second plane PL2 via the global data line GDL and the global inverted data line GDLb.
Referring to
Subsequently, the first data inputted to the page buffer group PBG2 may be transmitted to the error correction circuit ECC by a column selection decoder CS_DEC2 (S142). For example, the first data may be transmitted to the error correction circuit ECC through the global data line GDL and the global inverted data line GDLb by the column selection decoder CS_DEC2 included in the second plane PL2. The data transmission method using the column select decoder CS_DEC2 has been described with reference to
The error correction circuit ECC may perform the randomization operation using the seed data to convert the first data into second data and generate the parity data for the second data. The error correction circuit ECC may transmit the second data and the parity data to a page buffer group PBG1 of the first plane PL1 (S143). For example, when the error correction circuit ECC sequentially loads the parity data and the second data to be used for the error correction operation to the global data line GDL and the global inverted data line GDLb, the second data and the parity data loaded on the global data line GDL and the global inverted data line GDLb may be inputted the page buffer group PBG1 by a column selection decoder CS_DEC1 of the first plane PL1. For example, the second data may be inputted the main page buffer group (M_PBG of
Then, the program operation on the first plane PL1 using the second data may be performed (S144).
When the read operation starts to be performed, the first plane PL1 may be read and the second data may be inputted the page buffer group PBG1 (S151). For example, the selected page of the selected memory block of the first plane PL1 may be read and the second data may be inputted the page buffer group PBG1.
The second data inputted to the page buffer group PBG1 and the parity data stored in the spare page buffer group S_PBG may be transmitted to the error correction circuit ECC by the column selection decoder CS_DEC1 (S152). For example, the second data inputted to the main page buffer group M_PBG or to the main page buffer group M_PBG and the repair page buffer group R_PBG and the parity data stored in the spare page buffer group S_PBG may be supplied to the error correction circuit ECC via the global data line GDL and the global inverted data line GDLb by the column selection decoder CS_DEC1.
The error correction circuit ECC may check an error of the second data by using the parity data and correct the error. The error correction circuit ECC may perform the de-randomization operation using the seed data to restore the second data to the first data, which is the original data.
When the first data is completely restored, the error correction circuit ECC may transmit the first data to the page buffer group PBG2 coupled to the second plane PL2 (S153). For example, the first data may be loaded onto the global data line GDL and the global inverted data line GDLb and transmitted to the page buffer group PBG2 by the column selection decoder CS_DEC2 coupled to the second plane PL2.
The page buffer group PBG2 coupled to the second plane PL2 may transmit the first data to the global buffer GB (S154), and the global buffer GB may transmit the first data to the external device.
That is, the read operation on the first plane PL1 may be performed by the page buffer group PBG1 and the column selection decoder CS_DEC1 coupled to the first plane PL1, but the outputting of the converted data may be performed by the page buffer group PBG2 and the column selection decoder CS_DEC2 coupled to the second plane PL2.
Referring to
The (1-1)th data may be transmitted to the page buffer group PBG2 coupled to the second plane PL2 (S162). For example, in the page buffer group PBG2 coupled to the second plane PL2, the (1-2)th data may be transmitted from the first latches to second latches, and the (1-1)th data input to the first latches of the buffer group PBG1 coupled to the first plane PL1 may be transmitted to the first latches of the page buffer group PBG2 coupled to the second plane PL2.
After the (1-2)th data input to the second latches of the page buffer group PBG2 is transmitted to the error correction circuit ECC (S163), the (1-1)th data input to the first latches may be transmitted the second latches of the page buffer group PBG2.
The error correction circuit ECC may perform the randomization operation using the seed data to convert the (1-2)th data into (2-2)th data and generate first parity data for the (2-2)th data.
The (2-2)th data and the first parity data may be transmitted to the page buffer group PBG1 coupled to the first plane PL1 (S164). For example, the (2-2)th data may be transmitted to the main page buffer group M_PBG of the page buffer group PBG1, and the first parity data may be transmitted to the spare page buffer group S_PBG of the page buffer group PBG1. For example, the (2-2)th data may be inputted the second latches of the page buffers.
When the (2-2)th data and the first parity data are transmitted to the page buffer group PBG1, the (1-1)th data input to the second latches of the page buffer group PBG2 coupled to the second plane PL2 may be transmitted to the error correction circuit ECC.
The error correction circuit ECC may perform the randomization operation using the seed data to convert the (1-1)th data into (2-1)th data and generate second parity data for the (2-1)th data. The (2-2)th data input to the second latches of the page buffer group PBG1 may be transmitted to third latches included in the same page buffers.
The (2-2)th data input to the third latches of the page buffer group PBG1 may be programmed to the selected page of the selected memory block of the first plane PL1 (S165). The error correction circuit ECC may transmit the (2-1)th data and the second parity data to the page buffer group PBG1 coupled to the first plane PL1. For example, the (2-1)th data may be inputted the second latches of the page buffers. When the program operation on the (2-2)th data is completed, the program operation on the (2-1)th data may be performed.
The data programmed in the selected page of the selected memory block of the first plane P1 may be read in the reverse order to the program operation described above. The read operation will be described in more detail as below.
Referring to
When the (2-2)th data inputted to the page buffer group PBG1 and the first parity data stored in the spare page buffer group S_PBG are transmitted to the error correction circuit ECC (S172), the remaining (2-1)th data may be read and input to the page buffer group PBG1.
The error correction circuit ECC may determine whether or not there is an error in the (2-2)th data by using the first parity data, correct the error when there is the error, and perform the de-randomization operation using the seed data, so that the (2-2)th data may be converted into the (1-2)th data. The (1-2)th data may be transmitted to the page buffer group PBG2 coupled to the second plane PL2 (S173).
The remaining (2-1)th data inputted to the page buffer group PBG1 and the second parity data stored in the spare page buffer group S_PBG may be transmitted to the error correction circuit ECC. The error correction circuit ECC may determine whether there is an error in the (2-1) data by using the second parity data, correct the error when there is the error, and perform the de-randomization operation using the seed data, so that the (1-1)th data may be transmitted to the page buffer group PBG2 coupled to the second plane PL2. The page buffer group PBG2 may transmit the (1-1)th data to the page buffer group PBG1 coupled to the first plane PL1 (S174).
The (1-1)th data and the (1-2)th data stored in the page buffer groups PBG1 and PBG2 may be sequentially transmitted to the external device through the global buffer GB (S175).
As described above, the numbers of column selection decoders and the column selection control circuits may be reduced by using the page buffer groups coupled to the different planes, thereby reducing a size of the semiconductor memory device. Further, since the parity data used during the error correction operation is stored in the page buffers, an additional register for storing the parity data may not be required. As a result, the size of the semiconductor memory device may be further reduced.
Referring to
The memory controller 1200 may include a static random access memory (SRAM) 3110, a central processing unit (CPU) 3120, a host interface 3130, an error correction circuit (ECC) 3140, and a semiconductor interface 3150 to control the semiconductor memory device 1100, all operatively coupled via a bus. The SRAM 3110 may be used as a working memory of the CPU 3120. The host interface 3130 may include a data exchange protocol compatible with the host which is coupled to the memory system 3000. The error correction circuit 3140 provided in the memory controller 1200 may detect and correct errors included in the data read from the semiconductor memory device 1100. The semiconductor interface 3150 may interface with semiconductor memory device 1100. The CPU 3120 may perform a control operation for exchanging data with the memory controller 1200. Although not shown in
The memory controller 1200 may select a memory block or a sub-memory block included in the semiconductor memory device 1100 according to the amount of data loaded during the program operation. The semiconductor memory device 1100 may be controlled so that the program operation may be performed on the selected memory block. For example, the information of the main memory block and the sub-memory block classified according to a storage capacity may be stored in the SRAM 3110. The CPU 3120 may control the semiconductor memory device 1100 so that the main memory block or the sub-memory block is selected according to the amount of data loaded from the host and the information of the memory blocks stored in the SRAM 3110. Alternatively, the CPU 3120 may set the storage capacity of the sub-memory block according to the loaded data and control the semiconductor memory device 1100 so that the program operation may be performed on the set sub-memory block.
The memory system 3000 according to the present invention may be applied to a computer, an ultra mobile PC (UMPC), a workstation, a netbook, a PDA, a portable computer, a web tablet, a wireless phone, a mobile phone, a smart phone, a digital camera, a digital audio recorder, a digital audio player, a digital picture recorder, a digital picture player, a digital video recorder, a digital video player, a device capable of transmitting and receiving information in a wireless environment, and one of various devices constituting a home network.
Referring to
Since the semiconductor memory device 1100 and the memory controller 1200 of
The memory controller 1200 and the semiconductor memory device 1100 may constitute a solid state drive/disk (SSD).
A system according to the present invention may be embodied by using various types of packages. For example, the system according to the present invention may be embodied by using such as a package on package (PoP), ball grid arrays (BGAs), chip scale packages (CSPs), a plastic leaded chip carrier (PLCC), a plastic dual in-line package (PDIP), a die in waffle pack, a die in wafer form, a chip on board (COB), a ceramic dual in-line package (CERDIP), a plastic metric quad flat pack (MQFP), a thin quad flat pack (TQFP), a small outline (SOIC), a shrink small outline package (SSOP), a thin small outline (TSOP), a system in package (SIP), a multichip package (MCP), a wafer-level fabricated package (WFP) and a wafer-level processed stack package (WSP), and the like.
According to the present invention, the size of the semiconductor memory device may be reduced by temporarily storing the parity data required for an error correction operation in the page buffers.
While the invention has been described in connection with what is presently considered to be the most practical and preferred embodiment, it is to be understood that the invention is not limited to the disclosed embodiments. It will be apparent to those skilled in the art that various modifications and variations can be made in the present invention without departing from the spirit or scope of the present Invention.
Patent | Priority | Assignee | Title |
10921992, | Jun 25 2018 | Alibaba Group Holding Limited | Method and system for data placement in a hard disk drive based on access frequency for improved IOPS and utilization efficiency |
10977122, | Dec 31 2018 | Alibaba Group Holding Limited | System and method for facilitating differentiated error correction in high-density flash devices |
11061735, | Jan 02 2019 | Alibaba Group Holding Limited | System and method for offloading computation to storage nodes in distributed system |
11068409, | Feb 07 2018 | Alibaba Group Holding Limited | Method and system for user-space storage I/O stack with user-space flash translation layer |
11126561, | Oct 01 2019 | Alibaba Group Holding Limited | Method and system for organizing NAND blocks and placing data to facilitate high-throughput for random writes in a solid state drive |
11132291, | Jan 04 2019 | Alibaba Group Holding Limited | System and method of FPGA-executed flash translation layer in multiple solid state drives |
11169873, | May 21 2019 | Alibaba Group Holding Limited | Method and system for extending lifespan and enhancing throughput in a high-density solid state drive |
11200114, | Mar 17 2020 | Alibaba Group Holding Limited | System and method for facilitating elastic error correction code in memory |
11200337, | Feb 11 2019 | Alibaba Group Holding Limited | System and method for user data isolation |
11218165, | May 15 2020 | Alibaba Group Holding Limited | Memory-mapped two-dimensional error correction code for multi-bit error tolerance in DRAM |
11263132, | Jun 11 2020 | Alibaba Group Holding Limited | Method and system for facilitating log-structure data organization |
11281575, | May 11 2020 | Alibaba Group Holding Limited | Method and system for facilitating data placement and control of physical addresses with multi-queue I/O blocks |
11301173, | Apr 20 2020 | Alibaba Group Holding Limited | Method and system for facilitating evaluation of data access frequency and allocation of storage device resources |
11327929, | Sep 17 2018 | Alibaba Group Holding Limited | Method and system for reduced data movement compression using in-storage computing and a customized file system |
11354200, | Jun 17 2020 | Alibaba Group Holding Limited | Method and system for facilitating data recovery and version rollback in a storage device |
11354233, | Jul 27 2020 | Alibaba Group Holding Limited | Method and system for facilitating fast crash recovery in a storage device |
11372774, | Aug 24 2020 | Alibaba Group Holding Limited | Method and system for a solid state drive with on-chip memory integration |
11379127, | Jul 18 2019 | Alibaba Group Holding Limited | Method and system for enhancing a distributed storage system by decoupling computation and network tasks |
11379155, | May 24 2018 | Alibaba Group Holding Limited | System and method for flash storage management using multiple open page stripes |
11379447, | Feb 06 2020 | Alibaba Group Holding Limited | Method and system for enhancing IOPS of a hard disk drive system based on storing metadata in host volatile memory and data in non-volatile memory using a shared controller |
11385833, | Apr 20 2020 | Alibaba Group Holding Limited | Method and system for facilitating a light-weight garbage collection with a reduced utilization of resources |
11416365, | Dec 30 2020 | Alibaba Group Holding Limited | Method and system for open NAND block detection and correction in an open-channel SSD |
11422931, | Jun 17 2020 | Alibaba Group Holding Limited | Method and system for facilitating a physically isolated storage unit for multi-tenancy virtualization |
11449386, | Mar 20 2020 | Alibaba Group Holding Limited | Method and system for optimizing persistent memory on data retention, endurance, and performance for host memory |
11449455, | Jan 15 2020 | Alibaba Group Holding Limited | Method and system for facilitating a high-capacity object storage system with configuration agility and mixed deployment flexibility |
11461173, | Apr 21 2021 | ALIBABA INNOVATION PRIVATE LIMITED | Method and system for facilitating efficient data compression based on error correction code and reorganization of data placement |
11461262, | May 13 2020 | Alibaba Group Holding Limited | Method and system for facilitating a converged computation and storage node in a distributed storage system |
11476874, | May 14 2021 | ALIBABA INNOVATION PRIVATE LIMITED | Method and system for facilitating a storage server with hybrid memory for journaling and data storage |
11487465, | Dec 11 2020 | Alibaba Group Holding Limited | Method and system for a local storage engine collaborating with a solid state drive controller |
11494115, | May 13 2020 | Alibaba Group Holding Limited | System method for facilitating memory media as file storage device based on real-time hashing by performing integrity check with a cyclical redundancy check (CRC) |
11507499, | May 19 2020 | Alibaba Group Holding Limited | System and method for facilitating mitigation of read/write amplification in data compression |
11556277, | May 19 2020 | Alibaba Group Holding Limited | System and method for facilitating improved performance in ordering key-value storage with input/output stack simplification |
11617282, | Oct 01 2019 | Alibaba Group Holding Limited | System and method for reshaping power budget of cabinet to facilitate improved deployment density of servers |
11726699, | Mar 30 2021 | ALIBABA INNOVATION PRIVATE LIMITED | Method and system for facilitating multi-stream sequential read performance improvement with reduced read amplification |
11734115, | Dec 28 2020 | Alibaba Group Holding Limited | Method and system for facilitating write latency reduction in a queue depth of one scenario |
11768709, | Jan 02 2019 | Alibaba Group Holding Limited | System and method for offloading computation to storage nodes in distributed system |
11816043, | Jun 25 2018 | Alibaba Group Holding Limited | System and method for managing resources of a storage device and quantifying the cost of I/O requests |
Patent | Priority | Assignee | Title |
8879336, | Oct 27 2011 | SK Hynix Inc. | Semiconductor memory device and operation method thereof |
9324450, | Mar 13 2013 | Winbond Electronics Corporation | NAND flash memory |
9367392, | Aug 01 2014 | Winbond Electronics Corporation | NAND flash memory having internal ECC processing and method of operation thereof |
20100259983, | |||
20120221775, | |||
20130013854, | |||
20130117620, | |||
20140169092, | |||
20160293253, | |||
20170269998, | |||
20170329667, | |||
20180024744, | |||
20180143876, | |||
20180143877, | |||
KR1020150001612, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
May 15 2017 | LEE, WAN SEOB | SK HYNIX INC | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 042479 | /0540 | |
May 16 2017 | SK Hynix Inc. | (assignment on the face of the patent) | / |
Date | Maintenance Fee Events |
Dec 05 2022 | M1551: Payment of Maintenance Fee, 4th Year, Large Entity. |
Date | Maintenance Schedule |
Jul 23 2022 | 4 years fee payment window open |
Jan 23 2023 | 6 months grace period start (w surcharge) |
Jul 23 2023 | patent expiry (for year 4) |
Jul 23 2025 | 2 years to revive unintentionally abandoned end. (for year 4) |
Jul 23 2026 | 8 years fee payment window open |
Jan 23 2027 | 6 months grace period start (w surcharge) |
Jul 23 2027 | patent expiry (for year 8) |
Jul 23 2029 | 2 years to revive unintentionally abandoned end. (for year 8) |
Jul 23 2030 | 12 years fee payment window open |
Jan 23 2031 | 6 months grace period start (w surcharge) |
Jul 23 2031 | patent expiry (for year 12) |
Jul 23 2033 | 2 years to revive unintentionally abandoned end. (for year 12) |