Work Files Saved Searches
   My Account                                                  Search:   Quick/Number   Boolean   Advanced   Derwent    Help   


 The Delphion Integrated View

  Buy Now:   Buy PDF- 15pp  PDF  |   File History  |   Other choices   
  Tools:  Citation Link  |  Add to Work File:    
  View:  Expand Details   |  INPADOC   |  Jump to: 
  Go to:  Derwent  
 Email this to a friend  Email this to a friend 
       
Title: US7203890: Address error detection by merging a polynomial-based CRC code of address bits with two nibbles of data or data ECC bits
[ Derwent Title ]


Country: US United States of America

View Images High
Resolution

 Low
 Resolution

 
15 pages

 
Inventor: Normoyle, Kevin B.; Santa Clara, CA, United States of America

Assignee: Azul Systems, Inc., Mountain View, CA, United States of America
other patents from AZUL SYSTEMS, INC. (874053) (approx. 2)
 News, Profiles, Stocks and More about this company

Published / Filed: 2007-04-10 / 2004-06-16

Application Number: US2004000710066

IPC Code: Advanced: G11C 29/52; G11C 29/42;
Core: G11C 29/04; more...

ECLA Code: G11C8/00; G06F11/10M2D1A;

U.S. Class: 714/768; 714/763; 714/766;

Field of Search: 714/763,768 / G11C 29/42, 29/52

Priority Number:
2004-06-16  US2004000710066

Abstract:     A memory system provides data error detection and correction and address error detection. A Single-byte Error-Correcting/Double-byte Error-Detecting (SbEC/DbED) code with the byte being a 4-bit nibble is used to detect up to 8-bit errors and correct data errors of 4 bits or less. Rather than generating address parity, which is poor at detecting even numbers of errors, a cyclical-redundancy-check (CRC) code generates address check bits. A 32-bit address is compressed to just 4 address check bits using the CRC code. The 4 address check bits are merged (XOR'ed) with two 4-bit nibbles of the data SbEC/DbED code to generate a merged ECC codeword that is stored in memory. An address error causes a 2-nibble mis-match due to the redundant merging of the 4 address check bits with 2 nibbles of data correction code. The CRC code is ideal for detecting even numbers of errors common with multiplexed-address DRAMs.

Attorney, Agent or Firm: g Patent LLC ; Auvinen, Stuart T. ;

Primary / Asst. Examiners: Dildine, R. Stephen;

INPADOC Legal Status: Show legal status actions          Buy Now: Family Legal Status Report

Family: Show 3 known family members

First Claim:
Show all 20 claims
    1. An error-correcting memory controller comprising:

a data error-correction code (ECC) generator, receiving write data, for generating data ECC bits containing correction code capable of correcting an error in B data bits, and also capable of detecting an error in 2*B data bits;

an address linear block code generator, receiving a write address corresponding to the write data, for generating address check bits from the write address using a linear block code function;

wherein the address check bits comprise B bits, and the write address comprises at least 4×B bits, wherein the linear block code function compresses the write address;

a first merge unit, receiving a first B-bit portion of the data ECC bits and receiving the address check bits, for merging the first B-bit portion of the data ECC bits with the address check bits to generate a first merged B-bit portion of a merged ECC codeword;

a second merge unit, receiving a second B-bit portion of the data ECC bits and receiving the address check bits, for merging the second B-bit portion of the data ECC bits with the address check bits to generate a second merged B-bit portion of the merged ECC codeword;

wherein the merged ECC codeword has a third portion that contains data ECC bits from the data ECC generator that are not input to the first or second merge units;

a write interface to a memory for writing the merged ECC codeword to the memory that stores the write data at a location determined by the write address;

a read interface to the memory for reading a stored ECC codeword and read data from a location determined by a read address;

a second ECC generator, receiving the read data from the memory, for generating read ECC bits;

a second address linear block code generator, receiving the read address corresponding to the read data, for generating read address check bits from the read address using the linear block code function;

a first de-merge unit, receiving a first B-bit portion of the stored ECC codeword and receiving the read address check bits, for de-merging the first B-bit portion of the stored ECC codeword from the read address check bits to generate a first de-merged B-bit portion of a de-merged ECC codeword;

a second de-merge unit, receiving a second B-bit portion of the stored ECC codeword and receiving the read address check bits, for de-merging the second B-bit portion of the stored ECC codeword from the read address check bits to generate a second de-merged B-bit portion of a de-merged ECC codeword;

a comparator, receiving the read ECC bits from the second ECC generator and receiving the de-merged ECC codeword, for signaling an address error when first B-bit portions and second B-bit portions of the read ECC bits and the de-merged ECC codeword mis-match; and

a data corrector, coupled to the comparator, for correcting up to B bits of the read data to generate corrected data using the de-merged ECC codeword to locate errors in the read data when the address error is not signaled by the comparator determines that the read ECC bits do not match the de-merged ECC codeword,

whereby data is corrected and address errors are signaled using merged ECC codewords stored in the memory.



Background / Summary: Show background / summary

Drawing Descriptions: Show drawing descriptions

Description: Show description

Forward References: Show 1 U.S. patent(s) that reference this one

       
U.S. References: Go to Result Set: All U.S. references   |  Forward references (1)   |   Backward references (20)   |   Citation Link

Buy
PDF
Patent  Pub.Date  Inventor Assignee   Title
Buy PDF- 9pp US3963908  1976-06 Das  North Electric Company Encoding scheme for failure detection in random access memories
Buy PDF- 15pp US4672609  1987-06 Humphrey et al.  Tandem Computers Incorporated Memory system with operation error detection
Buy PDF- 26pp US5099484  1992-03 Smelser  Digital Equipment Corporation Multiple bit error detection and correction system employing a modified Reed-Solomon code incorporating address parity and catastrophic failure detection
Buy PDF- 16pp US5226043  1993-07 Pughe, Jr. et al.  Raytheon Company Apparatus and method for data error detection and correction and address error detection in a memory system
Buy PDF- 8pp US5345582  1994-09 Tsuchiya  Unisys Corporation Failure detection for instruction processor associative cache memories
Buy PDF- 20pp US5691996  1997-11 Chen et al.  International Business Machines Corporation Memory implemented error detection and correction code with address parity bits
Buy PDF- 20pp US5761221  1998-06 Baat et al.  International Business Machines Corporation Memory implemented error detection and correction code using memory modules
Buy PDF- 20pp US5768294  1998-06 Chen et al.  International Business Machines Corporation Memory implemented error detection and correction code capable of detecting errors in fetching data from a wrong address
Buy PDF- 16pp US5841795  1998-11 Olarig et al.  Compaq Computer Corporation Error correction codes
Buy PDF- 20pp US5978953  1999-11 Olarig  Compaq Computer Corporation error detection and correction
Buy PDF- 45pp US6003144  1999-12 Olarig et al.  Compaq Computer Corporation Error detection and correction
Buy PDF- 14pp US6134699  2000-10 Steenburgh et al.  International Business Machines Corporation Method and apparatus for detecting virtual address parity error for a translation lookaside buffer
Buy PDF- 14pp US6308297  2001-10 Harris  Sun Microsystems, Inc. Method and apparatus for verifying memory addresses
Buy PDF- 9pp US6457067  2002-09 Byers et al.  Unisys Corporation System and method for detecting faults in storage device addressing logic
Buy PDF- 26pp US6457154  2002-09 Chen et al.  International Business Machines Corporation Detecting address faults in an ECC-protected memory
Buy PDF- 9pp US6480975  2002-11 Arimilli et al.  International Business Machines Corporation ECC mechanism for set associative cache array
Buy PDF- 11pp US6539504  2003-03 Knefel  Siemens Aktiengesellschaft Memory system having error monitoring apparatus for multi-bit errors
Buy PDF- 16pp US6574774  2003-06 Vasiliev  Seagate Technology LLC Physical block address recovery apparatus system and method for cyclic error correction codes
Buy PDF- 12pp US20020007476A1  2002-01 Tsuyoshi   STORAGE
Buy PDF- 24pp US20030218816A1  2003-11 Katoh et al.   Data storage device and data processing method
       
Foreign References:
Buy
PDF
Publication Date IPC Code Assignee   Title
Buy PDF JP03186954A2 1991-08  G06F 12/16 FUJITSU LTD ADDRESS ERROR DETECTION SYSTEM 
Buy PDF JP05181757A2 1993-07  G06F 11/00 NEC IBARAKI LTD ADDRESS INCOINCIDENCE DETECTING CIRCUIT 
Buy PDF JP2000099409A2 2000-04  G06F 12/16 MITSUBISHI ELECTRIC CORP MEMORY MONITORING DEVICE 
Buy PDF- 18pp WO9002372A1 1990-03  G06F 11/10 UNISYS CORPORATION PIPELINED ADDRESS CHECK BIT STACK CONTROLLER 


Other References:
  • Bergey, A. L.; Checking Algorithm for Two Byte RAM with One or Two Byte Access; Apr. 1, 1994; IBM Technical Disclusure Bulletin, vol. 37, No. 04B; pp. 655-658.
  • Henle, et al.; Error Correcting Address Technique; May 1, 1970; IBM Technical Disclusure Bulletin, vol. 12, No. 12, pp. 2071-2072.
  • Kaufman, D. R.; Address Error Detection for Memory Using SEC/DED with Processor Using Byte Parity Error Detection; Apr. 1, 1982; IBM Technical Disclusure Bulletin, vol. 4, p. 6122.
  • Derwent abstract of inventer's certificate SU 1501122 A (Ivakhiv et al.).
  • P. Koopman and T. Chakravarty, “Cyclic Redundancy Code (CRC) Polynomial Selection for Embedded Networks”, Int'lConf. On Dependable Sys. and Networks., DSN-2004, pp. 1-10, 2004.
  • S. Kaneda and E. Fujiwara, “Single Byte Error Correcting—Double Byte Error Detecting codes for Memory Systems”, IEEE Trans. Computers, vol. C-31, No. 7, pp. 596-602, Jul. 1982. (7 pages) Cited by 4 patents


  • Continuity Data:
    Application Number Filed Notes

    12132839   is a division of
    US2005000161042  2005-07-20
         US7398449 issued 2008-07-08   Encoding 64-bit data nibble error correct and cyclic-redundancy code (CRC) address error detect for use on a 76-bit memory module

    11161042   is a continuation in part of
    >US2004000710066<  2004-06-16
         US7203890 issued 2007-04-10   Address error detection by merging a polynomial-based CRC code of address bits with two nibbles of data or data ECC bits


    Inquire Regarding Licensing

    Powered by Verity


    Plaques from Patent Awards      Gallery of Obscure PatentsNominate this for the Gallery...

    Thomson Reuters Copyright © 1997-2010 Thomson Reuters 
    Subscriptions  |  Web Seminars  |  Privacy  |  Terms & Conditions  |  Site Map  |  Contact Us  |  Help