CA2447204A1 - Error correction scheme for memory - Google Patents
Error correction scheme for memory Download PDFInfo
- Publication number
- CA2447204A1 CA2447204A1 CA002447204A CA2447204A CA2447204A1 CA 2447204 A1 CA2447204 A1 CA 2447204A1 CA 002447204 A CA002447204 A CA 002447204A CA 2447204 A CA2447204 A CA 2447204A CA 2447204 A1 CA2447204 A1 CA 2447204A1
- Authority
- CA
- Canada
- Prior art keywords
- parity
- circuit
- global
- column
- word
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/29—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1044—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices with specific ECC/EDC distribution
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/09—Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit
- H03M13/095—Error detection codes other than CRC and single parity bit codes
Abstract
An embedded DRAM ECC architecture for purging data errors is disclosed. The embedded DRAM ECC architecture is based upon a two-dimensional linear parity scheme, and includes a plurality of memory blocks and a parity block. Each memory block includes additional columns for storing row parity bits, and the parity block stores column parity bits. A row parity circuit coupled in parallel to an existing local databus of each memory checks the parity of the local databus bits against a row parity bit during a refresh or read operation in order to identify parity failure for the word.
Identification of the incorrect bit of the word is achieved by iteratively transferring the data of the local databus of each memory block onto an existing global databus, and checking the parity across the global databus with a column parity circuit. When global databus parity failure is detected, all bits of the global databus are inverted to purge the incorrect bit from the memory block via the local databus. A method for initializing the memory upon power up in order to prepare the memory for writing data, and methods and circuits for generating the corresponding row and column parity bits during a write operation are also disclosed.
Identification of the incorrect bit of the word is achieved by iteratively transferring the data of the local databus of each memory block onto an existing global databus, and checking the parity across the global databus with a column parity circuit. When global databus parity failure is detected, all bits of the global databus are inverted to purge the incorrect bit from the memory block via the local databus. A method for initializing the memory upon power up in order to prepare the memory for writing data, and methods and circuits for generating the corresponding row and column parity bits during a write operation are also disclosed.
Claims (54)
1. An error detection system for a memory comprising:
a memory block for storing a data word and a corresponding row parity bit; and a row parity circuit for receiving the data word and the corresponding row parity bit from the memory block in response to a memory block access operation, the row parity circuit comparing parity of the data word against the corresponding row parity bit for generating an active local parity fail flag in response to parity failure.
a memory block for storing a data word and a corresponding row parity bit; and a row parity circuit for receiving the data word and the corresponding row parity bit from the memory block in response to a memory block access operation, the row parity circuit comparing parity of the data word against the corresponding row parity bit for generating an active local parity fail flag in response to parity failure.
2. The error detection system of claim 1, further including a local data I/O
circuit for coupling the data word between the memory block and global datalines, and for coupling the corresponding row parity bit between the memory block and the row parity circuit.
circuit for coupling the data word between the memory block and global datalines, and for coupling the corresponding row parity bit between the memory block and the row parity circuit.
3. The error detection system of claim 2, wherein the row parity circuit includes a serial parity chain for receiving the data word from the local data I/O
circuit and for providing a parity output corresponding to parity of the local data, and a sense circuit for receiving the parity output and the corresponding row parity bit, for providing the active local parity fail flag if the logic state of the parity output and the logic state of the local row parity bit mismatch.
circuit and for providing a parity output corresponding to parity of the local data, and a sense circuit for receiving the parity output and the corresponding row parity bit, for providing the active local parity fail flag if the logic state of the parity output and the logic state of the local row parity bit mismatch.
4. The error detection system of claim 3, wherein the serial parity chain includes an even parity line driven to a first logic level at one end thereof, and an odd parity line driven to a second logic level at one end thereof, the parity output being provided from the other end of the even parity line, and each parity circuit includes cross-over transistors for coupling the parity output to one of the first and second logic levels.
5. The error detection system of claim 4, wherein the sense circuit includes a cross-coupled latch for receiving and latching the parity output, and a comparator circuit for comparing the latched parity output to the local row parity bit.
6. The error detection system of claim 5, wherein the sense circuit includes switching means for coupling the latched parity output to the memory block during a write operation.
7. The error detection system of claim 3, wherein the serial parity chain is segmented into at least two serially connected sub-parity circuits.
8. The error detection system of claim 1, wherein the memory block includes one of redundant rows and columns, and corresponding redundancy circuits.
9. The error detection system of claim 2, further including a parity block for storing a column parity word, each bit of the column parity word representing column parity for a corresponding bit position of the data word, a column parity circuit coupled to the local data I/O circuit and the parity block for receiving the data word and the column parity word and for comparing column parity of each bit position of the data word to a corresponding bit of the column parity word in response to the active local parity fail flag, the column parity circuit inverting data of each bit position of the data word that fails column parity.
10. The error detection system of claim 9, wherein the memory block ,the row parity circuit, the parity block and the column parity circuit are integrated in an embedded DRAM.
11. The error detection system of claim 9, wherein the parity block has a configuration identical to that of the memory block, and a parity block data I/O circuit for coupling the word of column parity bits between the parity block and the column parity circuit.
12. The error detection system of claim 10, wherein the column parity circuit includes a multiplexor circuit coupled between the local data I/O circuit and the global datelines for receiving the bits of the data word and for iteratively providing each bit of the data word to the global datelines, a parity block multiplexor circuit coupled to the parity block data I/O
circuit for receiving the bits of the column parity word and for providing one bit of the column parity word in each iteration, a parity evaluator circuit coupled to the global datelines for receiving the one bit of the column parity word, the parity evaluator circuit comparing parity of the global datelines to the one column parity bit in each iteration and generating an active global parity fail flag in response to column parity failure, and a global dateline inverting circuit for receiving and then inverting data of the global datelines in response to the active global parity fail flag.
circuit for receiving the bits of the column parity word and for providing one bit of the column parity word in each iteration, a parity evaluator circuit coupled to the global datelines for receiving the one bit of the column parity word, the parity evaluator circuit comparing parity of the global datelines to the one column parity bit in each iteration and generating an active global parity fail flag in response to column parity failure, and a global dateline inverting circuit for receiving and then inverting data of the global datelines in response to the active global parity fail flag.
13. The error detection system of claim 12, wherein the multiplexor circuit and the parity block multiplexor circuit each include a counter for controlling operation thereof.
14. The error detection system of claim 12, wherein the parity evaluator circuit includes a serial parity chain coupled to the global datelines for providing a parity output corresponding to parity of the global datelines, and a sense circuit for receiving the parity output and the one bit of the column parity word, for providing the active local parity fail flag if the logic state of the parity output and the logic state of the one bit of the column parity word mismatch.
15. The error detection system of claim 12, wherein the global dateline inverting circuit includes a flip-flop having an input coupled to one global dateline, an output coupled to a complementary global dateline of the one global dateline, a complementary output coupled to the global dateline, and a clock input for receiving the active global parity fail flag.
16. The error detection system of claim 2, further including a column parity check circuit for selectively inverting bits of the column parity word on the global datalines in a write operation for writing a new word to an address of the data word stored in the memory block, the column parity check circuit including, a parity comparison circuit for storing the data word and the new word and for comparing each bit position of the stored data word to each corresponding bit position of the stored new word, the parity comparison circuit providing a mismatch flag signal for each bit position having mismatching logic states, and a parity inverting circuit coupled to the global datalines and for receiving the mismatch flag signals, the parity inverting circuit inverting the logic state of the global datalines in response to the corresponding received mismatch flag signals.
17. The error detection system of claim 1, wherein the memory is a DRAM and the memory block access operation includes a refresh operation.
18. The error detection system of claim 1, wherein the memory is one or an SRAM
and an FeRAM, and the memory block access operation includes a data purge operation.
and an FeRAM, and the memory block access operation includes a data purge operation.
19. A method of detecting and purging bit errors in a memory, comprising:
a) executing a read operation to read a data word and corresponding row parity bit from a memory block of the memory;
b) comparing row parity of the data word against the corresponding row parity bit and generating a row parity fail flag in response to row parity failure;
c) comparing column parity of each bit of the data word against a corresponding bit of a column parity word stored in a parity block of the memory, in response to the row parity fail flag; and, d) inverting bits of the data word that fail column parity.
a) executing a read operation to read a data word and corresponding row parity bit from a memory block of the memory;
b) comparing row parity of the data word against the corresponding row parity bit and generating a row parity fail flag in response to row parity failure;
c) comparing column parity of each bit of the data word against a corresponding bit of a column parity word stored in a parity block of the memory, in response to the row parity fail flag; and, d) inverting bits of the data word that fail column parity.
20. The method of claim 19, wherein the step of executing includes suppressing the data word from global I/O circuits.
21. The method of claim 19, wherein the step of executing includes providing the data word and the corresponding row parity bit to a local databus.
22. The method of claim 21, wherein the step of comparing row parity includes executing a row parity check of the local databus against the corresponding row parity bit.
23. The method of claim 21, wherein the step of comparing column parity includes iteratively multiplexing bits of the data word from the local databus to a corresponding global dataline in response to row failure.
24. The method of claim 23, wherein the step of comparing column parity includes executing a column parity check of the global datalines against a corresponding column parity bit in each iteration.
25. The method of claim 24, wherein the step of comparing column parity includes inverting the data bits of the global datalines if column parity failure is detected in each iteration.
26. The method of claim 19, wherein the background read operation includes a refresh operation.
27. The method of claim 19, wherein the background read operation includes a data purge operation.
28. The method of claim 25, wherein the step of inverting includes inverting the data bit of a local databus line coupled to one of the global data lines for purging the bit error of the data word stored in the memory block.
29. The method of claim 23, wherein the step of iteratively multiplexing includes selectively activating column access transistors for coupling a different local databus line to the corresponding global dateline in each iteration.
30. The method of claim 29, wherein the step of selectively activating includes incrementing a counter to address and activate a different column access transistor in each iteration.
31. The method of claim 30, further including maintaining activation of the column access transistor corresponding to the memory block having row parity failure.
32. An error detection and purging system for a memory comprising:
a plurality of memory blocks for storing data words and corresponding row parity bits, one of the memory blocks being a parity block for providing a column parity word;
a local data I/O circuit coupled to each memory block for transferring the data words to global datelines;
a row parity circuit coupled to the local data I/O circuit of each memory block for receiving the data words and the corresponding row parity bits in a memory block access operation, and for comparing parity of the data words against the corresponding row parity bits for generating a corresponding active local parity fail flag in response to row parity failure; and, a column parity circuit coupled to all the local data I/O circuits, the global datelines, and the parity block for receiving the data words and the column parity word, the column parity circuit iteratively transferring a bit from each of the data words to a different global dateline for comparing parity of the global datelines to a corresponding bit of the column parity word, the column parity circuit inverting data of the global datelines in response to column parity failure in each iteration.
a plurality of memory blocks for storing data words and corresponding row parity bits, one of the memory blocks being a parity block for providing a column parity word;
a local data I/O circuit coupled to each memory block for transferring the data words to global datelines;
a row parity circuit coupled to the local data I/O circuit of each memory block for receiving the data words and the corresponding row parity bits in a memory block access operation, and for comparing parity of the data words against the corresponding row parity bits for generating a corresponding active local parity fail flag in response to row parity failure; and, a column parity circuit coupled to all the local data I/O circuits, the global datelines, and the parity block for receiving the data words and the column parity word, the column parity circuit iteratively transferring a bit from each of the data words to a different global dateline for comparing parity of the global datelines to a corresponding bit of the column parity word, the column parity circuit inverting data of the global datelines in response to column parity failure in each iteration.
33. The error detection and purging system of claim 32, wherein each row parity circuit includes a serial parity chain for receiving the data word from the local data I/O
circuit and for providing a parity output corresponding to parity of the data word, and a sense circuit for receiving the parity output and the corresponding row parity bit, for providing the active local parity fail flag if the parity output and the corresponding row parity bit mismatch.
circuit and for providing a parity output corresponding to parity of the data word, and a sense circuit for receiving the parity output and the corresponding row parity bit, for providing the active local parity fail flag if the parity output and the corresponding row parity bit mismatch.
34. The error detection and purging system of claim 33, wherein the serial parity chain includes an even parity line driven to a first logic level at one end thereof, and an odd parity line driven to a second logic level at one end thereof, the parity output being provided from the other end of the even parity line, and each parity circuit includes cross-over transistors for coupling the parity output to one of the first and second logic levels.
35. The error detection and purging system of claim 34, wherein the sense circuit includes a cross-coupled latch for receiving and latching the parity output, and a comparator circuit for comparing the latched parity output to the local row parity bit.
36. The error detection and purging system of claim 35, wherein the comparator circuit includes an exclusive OR gate.
37. The error detection and purging system of claim 32, wherein each memory block includes one of redundant rows and columns, and corresponding redundancy circuits.
38. The error detection and purging system of claim 32, wherein the parity block has a configuration identical to that of each memory block, and a parity block data I/O circuit for coupling bits of the column parity word to the column parity circuit.
39. The error detection and purging system of claim 38, wherein the column parity circuit includes a multiplexor circuit coupled between each local data I/O circuit and the global datalines for receiving the bits of the data word and for iteratively providing each bit of the data word to the global datalines, a parity block multiplexor circuit coupled to the parity block data I/O
circuit for receiving the bits of the column parity word and for providing one bit of the column parity word in each iteration, a parity evaluator circuit coupled to the global datalines and for receiving the one bit of the column parity word, the parity evaluator circuit comparing parity of the global datalines to the one column parity bit in each iteration and generating an active global parity fail flag in response to column parity failure, and a global dataline inverting circuit for receiving and inverting data of the global datalines in response to the active global parity fail flag.
circuit for receiving the bits of the column parity word and for providing one bit of the column parity word in each iteration, a parity evaluator circuit coupled to the global datalines and for receiving the one bit of the column parity word, the parity evaluator circuit comparing parity of the global datalines to the one column parity bit in each iteration and generating an active global parity fail flag in response to column parity failure, and a global dataline inverting circuit for receiving and inverting data of the global datalines in response to the active global parity fail flag.
40. The error detection system of claim 39, wherein the multiplexor circuit and the parity block multiplexor circuit each include a counter for controlling operation thereof.
41. The error detection and purging system of claim 39, wherein the global dataline inverting circuit includes a flip-flop having an input coupled to one global dataline, an output coupled to a complementary global dataline of the one global dataline, a complementary output coupled to the one global dataline, and a clock input for receiving the active global parity fail flag.
42. The error detection and purging system of claim 32, further including a column parity check circuit for selectively changing bits of the column parity word on the global datalines in a write operation, for writing a new word to an address of the data word stored in the memory block, the column parity check circuit including, a parity comparison circuit for storing the data word and the new word and comparing each bit position of the stared data word to each corresponding bit position of the stored new word, the parity comparison circuit providing a mismatch flag signal for each bit position having mismatching logic states, and a parity inverting circuit coupled to the global datalines and for receiving the mismatch flag signals, the parity inverting circuit inverting the logic state of the global datelines in response to the corresponding received mismatch flag signals.
43. A method for writing row and column parity bits to a memory system in a write operation, the memory system having a memory block for storing a data word and a corresponding row parity bit, and a parity block for storing column parity bits, the method comprising:
a. latching a stored data word read out from an address to which a new data word is to be written;
b. writing the new data word to the address and generating a corresponding row parity bit;
c. comparing data between each bit position of the stored data word and the new word; and, d. inverting the column parity bits corresponding to mis-matching bit positions.
a. latching a stored data word read out from an address to which a new data word is to be written;
b. writing the new data word to the address and generating a corresponding row parity bit;
c. comparing data between each bit position of the stored data word and the new word; and, d. inverting the column parity bits corresponding to mis-matching bit positions.
44. The method of claim 43, wherein the step of latching includes reading the stored data word onto a global databus.
45. The method of claim 43, wherein the step of writing includes latching the new data word.
46. The method of claim 43, wherein the step of inverting includes reading the column parity bits onto a global databus.
47. The method of claim 46, wherein the step of inverting includes inverting the column parity bits of the global databus that correspond to bits of the stored data word that mis-match hits of the new data word.
48. The method of claim 43, further including a memory initialization step prior to the step of latching.
49. The method of claim 48, wherein the memory initialization step includes i. writing preset logic values to memory cells of an activated wordline, ii. reading out the preset logic values for latching by bitline sense amplifiers, and iii. activating all wordlines of the memory block to write the latched preset logic values thereto.
50. The method of claim 49, wherein the step of reading includes disabling bitline;
precharge and equalize circuits after the preset logic values are latched by the bitline sense amplifiers.
precharge and equalize circuits after the preset logic values are latched by the bitline sense amplifiers.
51. The method of claim 49, wherein the step of activating includes iteratively activating individual wordlines.
52. The method of claim 51, wherein the step of iteratively activating individual wordlines includes addressing each wordline with a refresh counter.
53. The method of claim 49, wherein the step of activating includes iteratively activating multiple wordlines simultaneously.
54. The method of claim 49, wherein the step of activating includes simultaneously activating all wordlines.
The method of claim 50, wherein the activated wordline includes a master wordline and the step of writing includes activating all column access devices to write the preset logic value to all the memory cells coupled to the master wordline.
The method of claim 50, wherein the activated wordline includes a master wordline and the step of writing includes activating all column access devices to write the preset logic value to all the memory cells coupled to the master wordline.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US42955602P | 2002-11-29 | 2002-11-29 | |
US60/429,556 | 2002-11-29 |
Publications (2)
Publication Number | Publication Date |
---|---|
CA2447204A1 true CA2447204A1 (en) | 2004-05-29 |
CA2447204C CA2447204C (en) | 2010-03-23 |
Family
ID=32507631
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA2447204A Expired - Fee Related CA2447204C (en) | 2002-11-29 | 2003-10-28 | Error correction scheme for memory |
Country Status (2)
Country | Link |
---|---|
US (2) | US7266747B2 (en) |
CA (1) | CA2447204C (en) |
Families Citing this family (107)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7461176B2 (en) * | 2003-05-02 | 2008-12-02 | Hitachi, Ltd. | Method for initialization of storage systems |
JP4093197B2 (en) * | 2004-03-23 | 2008-06-04 | セイコーエプソン株式会社 | Display driver and electronic device |
US7099221B2 (en) * | 2004-05-06 | 2006-08-29 | Micron Technology, Inc. | Memory controller method and system compensating for memory cell data losses |
US7490283B2 (en) | 2004-05-13 | 2009-02-10 | Sandisk Corporation | Pipelined data relocation and improved chip architectures |
US20060010339A1 (en) * | 2004-06-24 | 2006-01-12 | Klein Dean A | Memory system and method having selective ECC during low power refresh |
US7340668B2 (en) * | 2004-06-25 | 2008-03-04 | Micron Technology, Inc. | Low power cost-effective ECC memory system and method |
US7116602B2 (en) | 2004-07-15 | 2006-10-03 | Micron Technology, Inc. | Method and system for controlling refresh to avoid memory cell data losses |
US6965537B1 (en) * | 2004-08-31 | 2005-11-15 | Micron Technology, Inc. | Memory system and method using ECC to achieve low power refresh |
US7849381B2 (en) * | 2004-12-21 | 2010-12-07 | Sandisk Corporation | Method for copying data in reprogrammable non-volatile memory |
US7409473B2 (en) * | 2004-12-21 | 2008-08-05 | Sandisk Corporation | Off-chip data relocation |
DE102005016050A1 (en) * | 2005-04-07 | 2006-10-12 | Infineon Technologies Ag | Semiconductor memory error detection device for use in motor vehicle electronics, has detecting unit that is designed for detecting error measure of memory when test parity value does not correspond to reference parity |
DE102005016051B4 (en) * | 2005-04-07 | 2019-06-13 | Infineon Technologies Ag | Memory checking device and method for checking a memory |
US20060256615A1 (en) * | 2005-05-10 | 2006-11-16 | Larson Thane M | Horizontal and vertical error correction coding (ECC) system and method |
US20060282755A1 (en) * | 2005-05-31 | 2006-12-14 | Jong-Hoon Oh | Random access memory having ECC |
US7382673B2 (en) * | 2005-06-15 | 2008-06-03 | Infineon Technologies Ag | Memory having parity generation circuit |
US7440309B2 (en) * | 2005-06-15 | 2008-10-21 | Infineon Technologies Ag | Memory having parity error correction |
US7471569B2 (en) * | 2005-06-15 | 2008-12-30 | Infineon Technologies Ag | Memory having parity error correction |
US8327104B2 (en) | 2006-07-31 | 2012-12-04 | Google Inc. | Adjusting the timing of signals associated with a memory system |
US8359187B2 (en) | 2005-06-24 | 2013-01-22 | Google Inc. | Simulating a different number of memory circuit devices |
US8244971B2 (en) | 2006-07-31 | 2012-08-14 | Google Inc. | Memory circuit system and method |
US8060774B2 (en) | 2005-06-24 | 2011-11-15 | Google Inc. | Memory systems and memory modules |
US8055833B2 (en) | 2006-10-05 | 2011-11-08 | Google Inc. | System and method for increasing capacity, performance, and flexibility of flash storage |
US8041881B2 (en) | 2006-07-31 | 2011-10-18 | Google Inc. | Memory device with emulated characteristics |
US9542352B2 (en) | 2006-02-09 | 2017-01-10 | Google Inc. | System and method for reducing command scheduling constraints of memory circuits |
US8089795B2 (en) | 2006-02-09 | 2012-01-03 | Google Inc. | Memory module with memory stack and interface with enhanced capabilities |
US8130560B1 (en) | 2006-11-13 | 2012-03-06 | Google Inc. | Multi-rank partial width memory modules |
US7386656B2 (en) | 2006-07-31 | 2008-06-10 | Metaram, Inc. | Interface circuit system and method for performing power management operations in conjunction with only a portion of a memory circuit |
US7472220B2 (en) * | 2006-07-31 | 2008-12-30 | Metaram, Inc. | Interface circuit system and method for performing power management operations utilizing power management signals |
US20080028136A1 (en) | 2006-07-31 | 2008-01-31 | Schakel Keith R | Method and apparatus for refresh management of memory modules |
US8111566B1 (en) | 2007-11-16 | 2012-02-07 | Google, Inc. | Optimal channel design for memory devices for providing a high-speed memory interface |
US8335894B1 (en) | 2008-07-25 | 2012-12-18 | Google Inc. | Configurable memory system with interface circuit |
US10013371B2 (en) | 2005-06-24 | 2018-07-03 | Google Llc | Configurable memory circuit system and method |
US7392338B2 (en) | 2006-07-31 | 2008-06-24 | Metaram, Inc. | Interface circuit system and method for autonomously performing power management operations in conjunction with a plurality of memory circuits |
US20080082763A1 (en) | 2006-10-02 | 2008-04-03 | Metaram, Inc. | Apparatus and method for power management of memory circuits by a system or component thereof |
US8397013B1 (en) | 2006-10-05 | 2013-03-12 | Google Inc. | Hybrid memory module |
US8081474B1 (en) | 2007-12-18 | 2011-12-20 | Google Inc. | Embossed heat spreader |
US8796830B1 (en) | 2006-09-01 | 2014-08-05 | Google Inc. | Stackable low-profile lead frame package |
US8090897B2 (en) | 2006-07-31 | 2012-01-03 | Google Inc. | System and method for simulating an aspect of a memory circuit |
US9507739B2 (en) | 2005-06-24 | 2016-11-29 | Google Inc. | Configurable memory circuit system and method |
US8077535B2 (en) | 2006-07-31 | 2011-12-13 | Google Inc. | Memory refresh apparatus and method |
US9171585B2 (en) | 2005-06-24 | 2015-10-27 | Google Inc. | Configurable memory circuit system and method |
US8438328B2 (en) | 2008-02-21 | 2013-05-07 | Google Inc. | Emulation of abstracted DIMMs using abstracted DRAMs |
US8386722B1 (en) | 2008-06-23 | 2013-02-26 | Google Inc. | Stacked DIMM memory interface |
US7550858B1 (en) * | 2005-07-19 | 2009-06-23 | Xilinx, Inc. | Random sequence generation using alpha particle emission |
WO2007028109A2 (en) | 2005-09-02 | 2007-03-08 | Metaram, Inc. | Methods and apparatus of stacking drams |
US7656717B2 (en) * | 2005-09-29 | 2010-02-02 | Hynix Semiconductor, Inc. | Memory device having latch for charging or discharging data input/output line |
DE602005011628D1 (en) * | 2005-10-10 | 2009-01-22 | Hynix Semiconductor Inc | Method for programming and verifying cells of a non-volatile memory and a corresponding NAND flash memory |
US7702988B2 (en) * | 2005-10-24 | 2010-04-20 | Platform Computing Corporation | Systems and methods for message encoding and decoding |
US9632929B2 (en) | 2006-02-09 | 2017-04-25 | Google Inc. | Translating an address associated with a command communicated between a system and memory circuits |
US7751486B2 (en) | 2006-05-19 | 2010-07-06 | Platform Computing Corporation | Systems and methods for transmitting data |
US7724589B2 (en) | 2006-07-31 | 2010-05-25 | Google Inc. | System and method for delaying a signal communicated from a system to at least one of a plurality of memory circuits |
US7894289B2 (en) | 2006-10-11 | 2011-02-22 | Micron Technology, Inc. | Memory system and method using partial ECC to achieve low power refresh and fast access to data |
US7900120B2 (en) | 2006-10-18 | 2011-03-01 | Micron Technology, Inc. | Memory system and method using ECC with flag bit to identify modified data |
US7483325B2 (en) * | 2007-03-20 | 2009-01-27 | International Business Machines Corporation | Retention-time control and error management in a cache system comprising dynamic storage |
US8122317B1 (en) | 2007-06-27 | 2012-02-21 | Arizona Board Of Regents For And On Behalf Of Arizona State University | Two-dimensional parity technique to facilitate error detection and correction in memory arrays |
US8209479B2 (en) | 2007-07-18 | 2012-06-26 | Google Inc. | Memory circuit system and method |
US8080874B1 (en) | 2007-09-14 | 2011-12-20 | Google Inc. | Providing additional space between an integrated circuit and a circuit board for positioning a component therebetween |
DE202010017690U1 (en) | 2009-06-09 | 2012-05-29 | Google, Inc. | Programming dimming terminating resistor values |
JP5692780B2 (en) * | 2010-10-05 | 2015-04-01 | 日本電気株式会社 | Multi-core type error correction processing system and error correction processing device |
KR101212759B1 (en) * | 2010-10-29 | 2012-12-14 | 에스케이하이닉스 주식회사 | Data transfer method with data error check, semiconductor memory and memory system with data error check |
US8797813B2 (en) | 2011-05-17 | 2014-08-05 | Maxlinear, Inc. | Method and apparatus for memory power and/or area reduction |
US9165677B2 (en) | 2011-05-17 | 2015-10-20 | Maxlinear, Inc. | Method and apparatus for memory fault tolerance |
US9054840B2 (en) | 2011-12-15 | 2015-06-09 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Error detection and correction of a data transmission |
KR101684045B1 (en) | 2012-05-31 | 2016-12-07 | 휴렛 팩커드 엔터프라이즈 디벨롭먼트 엘피 | Local error detection and global error correction |
TWI594254B (en) * | 2012-07-17 | 2017-08-01 | 慧榮科技股份有限公司 | Method for reading data from block of flash memory and associated memory device |
KR20140082173A (en) * | 2012-12-24 | 2014-07-02 | 에스케이하이닉스 주식회사 | Address Counting Circuit and Semiconductor Apparatus Using the same |
US9153310B2 (en) | 2013-01-16 | 2015-10-06 | Maxlinear, Inc. | Dynamic random access memory for communications systems |
US9262263B2 (en) | 2013-11-25 | 2016-02-16 | Qualcomm Incorporated | Bit recovery system |
US9378081B2 (en) | 2014-01-02 | 2016-06-28 | Qualcomm Incorporated | Bit remapping system |
US9454422B2 (en) | 2014-01-30 | 2016-09-27 | International Business Machines Corporation | Error feedback and logging with memory on-chip error checking and correcting (ECC) |
US9760438B2 (en) | 2014-06-17 | 2017-09-12 | Arm Limited | Error detection in stored data values |
US9558069B2 (en) | 2014-08-07 | 2017-01-31 | Pure Storage, Inc. | Failure mapping in a storage array |
US9766972B2 (en) | 2014-08-07 | 2017-09-19 | Pure Storage, Inc. | Masking defective bits in a storage array |
JP5851570B1 (en) * | 2014-08-29 | 2016-02-03 | 株式会社日立製作所 | Semiconductor device |
US9496021B2 (en) | 2014-09-25 | 2016-11-15 | Kilopass Technology, Inc. | Power reduction in thyristor random access memory |
US9564199B2 (en) | 2014-09-25 | 2017-02-07 | Kilopass Technology, Inc. | Methods of reading and writing data in a thyristor random access memory |
US9530482B2 (en) | 2014-09-25 | 2016-12-27 | Kilopass Technology, Inc. | Methods of retaining and refreshing data in a thyristor random access memory |
US9449669B2 (en) | 2014-09-25 | 2016-09-20 | Kilopass Technology, Inc. | Cross-coupled thyristor SRAM circuits and methods of operation |
US9460771B2 (en) | 2014-09-25 | 2016-10-04 | Kilopass Technology, Inc. | Two-transistor thyristor SRAM circuit and methods of operation |
WO2016049608A1 (en) * | 2014-09-25 | 2016-03-31 | Kilopass Technology, Inc. | Power reduction in thyristor random access memory |
US9741413B2 (en) | 2014-09-25 | 2017-08-22 | Kilopass Technology, Inc. | Methods of reading six-transistor cross-coupled thyristor-based SRAM memory cells |
US9564441B2 (en) | 2014-09-25 | 2017-02-07 | Kilopass Technology, Inc. | Two-transistor SRAM semiconductor structure and methods of fabrication |
US20160093624A1 (en) | 2014-09-25 | 2016-03-31 | Kilopass Technology, Inc. | Thyristor Volatile Random Access Memory and Methods of Manufacture |
DE102014015585A1 (en) * | 2014-10-21 | 2016-04-21 | Infineon Technologies Ag | Device, system and method for protecting data |
KR102238706B1 (en) * | 2014-11-28 | 2021-04-09 | 삼성전자주식회사 | Semiconductor memory device and memory system including the same |
US9632867B2 (en) * | 2014-12-08 | 2017-04-25 | Cypress Semiconductor Corporation | Methods, circuits, devices, systems and machine executable code for reading from a non-volatile memory array |
US9891976B2 (en) * | 2015-02-26 | 2018-02-13 | Arm Limited | Error detection circuitry for use with memory |
KR20170035103A (en) | 2015-09-22 | 2017-03-30 | 삼성전자주식회사 | Semiconductor memory device and memory system including the same |
US9880900B2 (en) | 2015-12-08 | 2018-01-30 | Nvidia Corporation | Method for scrubbing and correcting DRAM memory data with internal error-correcting code (ECC) bits contemporaneously during self-refresh state |
US10049006B2 (en) | 2015-12-08 | 2018-08-14 | Nvidia Corporation | Controller-based memory scrub for DRAMs with internal error-correcting code (ECC) bits contemporaneously during auto refresh or by using masked write commands |
US9823964B2 (en) | 2015-12-08 | 2017-11-21 | Nvidia Corporation | Method for memory scrub of DRAM with internal error correcting code (ECC) bits during either memory activate and/or precharge operation |
KR102558044B1 (en) | 2016-06-14 | 2023-07-20 | 에스케이하이닉스 주식회사 | Comparison circuit and semiconductor device |
US9747158B1 (en) * | 2017-01-13 | 2017-08-29 | Pure Storage, Inc. | Intelligent refresh of 3D NAND |
US10325049B2 (en) | 2017-01-18 | 2019-06-18 | International Business Machines Corporation | Placement-driven generation of error detecting structures in integrated circuits |
US10312944B2 (en) | 2017-03-17 | 2019-06-04 | Micron Technology, Inc. | Error correction code (ECC) operations in memory for providing redundant error correction |
KR20180106494A (en) * | 2017-03-20 | 2018-10-01 | 에스케이하이닉스 주식회사 | Semiconductor device |
CN107134294B (en) * | 2017-05-27 | 2020-04-24 | 北京东土军悦科技有限公司 | ECC information acquisition method and system |
US10700713B2 (en) * | 2017-08-01 | 2020-06-30 | Microsemi Storage Solutions, Inc. | System and method for error correction in data communications |
KR20190087180A (en) * | 2018-01-16 | 2019-07-24 | 에스케이하이닉스 주식회사 | Memory device detecting and correcting data error, and operation method thereof |
KR102540772B1 (en) * | 2018-04-30 | 2023-06-08 | 에스케이하이닉스 주식회사 | Error correction circuit and method thereof |
US11342044B2 (en) | 2019-05-28 | 2022-05-24 | Nuvoton Technology Corporation | System and method for prioritization of bit error correction attempts |
US11475170B2 (en) | 2019-05-28 | 2022-10-18 | Nuvoton Technology Corporation | System and method for correction of memory errors |
US11263078B2 (en) | 2019-12-31 | 2022-03-01 | Micron Technology, Inc. | Apparatuses, systems, and methods for error correction |
US11657889B2 (en) * | 2020-03-23 | 2023-05-23 | Intel Corporation | Error correction for dynamic data in a memory that is row addressable and column addressable |
CN114203228B (en) * | 2020-09-18 | 2023-09-15 | 长鑫存储技术有限公司 | Memory device |
US11468939B2 (en) * | 2020-11-30 | 2022-10-11 | Micron Technology, Inc. | Conditional row activation and access during refresh for memory devices and associated methods and systems |
US11853157B2 (en) * | 2021-11-17 | 2023-12-26 | Nxp B.V. | Address fault detection system |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4183463A (en) * | 1978-07-31 | 1980-01-15 | Sperry Rand Corporation | RAM error correction using two dimensional parity checking |
JPS6042560B2 (en) * | 1981-03-17 | 1985-09-24 | 日本電信電話株式会社 | semiconductor storage device |
JPS60183653A (en) * | 1984-03-01 | 1985-09-19 | Toshiba Corp | Memory provided with bit error detecting function |
JPS6150293A (en) * | 1984-08-17 | 1986-03-12 | Fujitsu Ltd | Semiconductor memory |
JPS61264599A (en) * | 1985-05-16 | 1986-11-22 | Fujitsu Ltd | Semiconductor memory device |
US4747080A (en) * | 1985-11-12 | 1988-05-24 | Nippon Telegraph & Telephone Corporation | Semiconductor memory having self correction function |
JP2509297B2 (en) * | 1987-08-31 | 1996-06-19 | 沖電気工業株式会社 | Semiconductor memory device with self-correction function and microcomputer |
US4942575A (en) * | 1988-06-17 | 1990-07-17 | Modular Computer Systems, Inc. | Error connection device for parity protected memory systems |
US5134616A (en) * | 1990-02-13 | 1992-07-28 | International Business Machines Corporation | Dynamic ram with on-chip ecc and optimized bit and word redundancy |
US5127014A (en) * | 1990-02-13 | 1992-06-30 | Hewlett-Packard Company | Dram on-chip error correction/detection |
US6125466A (en) * | 1992-01-10 | 2000-09-26 | Cabletron Systems, Inc. | DRAM parity protection scheme |
KR100266748B1 (en) * | 1997-12-31 | 2000-10-02 | 윤종용 | Semiconductor memory device and error correction method thereof |
US6185718B1 (en) * | 1998-02-27 | 2001-02-06 | International Business Machines Corporation | Memory card design with parity and ECC for non-parity and non-ECC systems |
US6353910B1 (en) * | 1999-04-09 | 2002-03-05 | International Business Machines Corporation | Method and apparatus for implementing error correction coding (ECC) in a dynamic random access memory utilizing vertical ECC storage |
JP4877894B2 (en) * | 2001-07-04 | 2012-02-15 | ルネサスエレクトロニクス株式会社 | Semiconductor device |
-
2003
- 2003-10-28 CA CA2447204A patent/CA2447204C/en not_active Expired - Fee Related
- 2003-10-29 US US10/694,761 patent/US7266747B2/en active Active
-
2007
- 2007-07-30 US US11/830,077 patent/US7636880B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US20040117723A1 (en) | 2004-06-17 |
CA2447204C (en) | 2010-03-23 |
US20070300100A1 (en) | 2007-12-27 |
US7266747B2 (en) | 2007-09-04 |
US7636880B2 (en) | 2009-12-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2447204A1 (en) | Error correction scheme for memory | |
US7200780B2 (en) | Semiconductor memory including error correction function | |
US7350137B2 (en) | Method and circuit for error correction in CAM cells | |
US7032142B2 (en) | Memory circuit having parity cell array | |
JP5990859B2 (en) | Memory write error correction circuit | |
US7305607B2 (en) | Nonvolatile ferroelectric memory device including failed cell correcting circuit | |
US20170194046A1 (en) | Port Modes for Use With Memory | |
US10360091B2 (en) | Semiconductor memory device | |
US20060156212A1 (en) | Semiconductor memory | |
EP3770764B1 (en) | Method of controlling repair of volatile memory device and storage device performing the same | |
US6853597B2 (en) | Integrated circuits with parallel self-testing | |
US7440309B2 (en) | Memory having parity error correction | |
US6822913B2 (en) | Integrated memory and method for operating an integrated memory | |
KR101326898B1 (en) | Memory device with error correction capability and efficient partial word write operation | |
JP2000353399A (en) | Technique for testing word line of memory array and related circuit | |
US7382668B2 (en) | Full-stress testable memory device having an open bit line architecture and method of testing the same | |
US7881090B2 (en) | Content addressable memory (CAM) array capable of implementing read or write operations during search operations | |
US7471569B2 (en) | Memory having parity error correction | |
US6507524B1 (en) | Integrated circuit memory having column redundancy | |
US6366508B1 (en) | Integrated circuit memory having column redundancy with no timing penalty | |
JP3935151B2 (en) | Semiconductor integrated circuit device | |
US6563749B2 (en) | Dynamic memory circuit including spare cells | |
US7337284B2 (en) | Integrated semiconductor memory | |
JP2006073108A (en) | Semiconductor integrated circuit | |
JP2003030979A (en) | Ferroelectric memory device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EEER | Examination request | ||
MKLA | Lapsed |
Effective date: 20161028 |