WO2001022225A1 - Verfahren und schaltungsanordnung zum speichern von datenworten in einem ram modul - Google Patents
Verfahren und schaltungsanordnung zum speichern von datenworten in einem ram modul Download PDFInfo
- Publication number
- WO2001022225A1 WO2001022225A1 PCT/EP2000/008398 EP0008398W WO0122225A1 WO 2001022225 A1 WO2001022225 A1 WO 2001022225A1 EP 0008398 W EP0008398 W EP 0008398W WO 0122225 A1 WO0122225 A1 WO 0122225A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- word
- bit
- data
- words
- crc
- Prior art date
Links
Classifications
-
- 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
-
- 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/1004—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
-
- 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/1012—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 using codes or arrangements adapted for a specific type of error
- G06F11/1032—Simple parity
-
- 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/1048—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 using arrangements adapted for a specific error detection or correction feature
- G06F11/1056—Updating check bits on partial write, i.e. read/modify/write
Definitions
- the invention relates to a method and a circuit arrangement for storing data words in a RAM module, in particular for safety-critical applications.
- RAM Random Access Memory
- RAM Random Access Memory
- the invention is therefore based on the object of providing a method and a circuit arrangement for storing data words in a RAM module, the space requirement of which is considerably smaller, without any restrictions with regard to data security having to be accepted.
- a method which is characterized by the following steps: generating a check bit word from at least one data word when writing the at least one data word into the RAM module, storing the check bit word, reading out the check bit word when reading out the at least one data word from the RAM module, generating the check bit word again from the at least one read out data word, comparing the read out check bit word with the newly generated one Check bit word and generate an error message if they do not match.
- the object is further achieved with a circuit arrangement which is characterized by: a first circuit unit for generating a test bit word from at least one data word when writing and reading the at least one data word, a number of registers for the associated storage of test bit words for the data words, as well as a second circuit unit with which the associated check bit word is compared with the check bit word generated by the first circuit unit when reading data words, and for generating an error message if the check bit words do not match.
- a particular advantage of this solution is that with essentially the same data security as in the fully redundant design mentioned at the outset, the required silicon area and thus also the circuit complexity and the costs are significantly lower.
- FIG. 1 shows a schematic representation of a first memory architecture
- FIG. 5 shows a schematic representation of a second memory architecture
- a RAM module essentially comprises a word-oriented array 10 consisting of a number of 32-bit data word registers 10a,... 10i,... 10x, which are shown arranged in rows one below the other.
- a 2-bit parity word register 11a, ... lli, ... llx is assigned to each data word register, so that a 2-bit parity array 11 results.
- a 32 bit parity word register 12 is provided, which in turn is assigned a 2 bit parity word register 13.
- this arrangement is connected in a known manner to a bus interface unit 14, via which a connection to a CPU bus can be established.
- the bus interface unit 14 furthermore comprises circuit units for generating and for comparing the parity words during write and read processes, which are shown in FIGS. 2 and 3.
- the relevant data words are led from a 32 bit data bus 20 to a first circuit unit 21 according to FIG. 2, with which a 2 bit parity word is generated for each data word.
- the data word is then written into one of the data word registers lOi in the RAM module and the 2 bit parity word into the assigned 2 bit parity word register lli.
- the addressed data word is first transferred to the first circuit unit 21 according to FIG.
- the assigned 2-bit parity word is transmitted to a second circuit unit 22.
- a 2-bit parity word is in turn generated from the read data word, which is transferred to the second circuit unit 22 and compared there with the 2-bit parity word read directly from the RAM module. If these two words do not match, an error signal F is generated or a corresponding error flag is set. If the 2-bit parity words match, the data word read out is transmitted to the data bus 20.
- each 32 bit data word is composed of a first and a second 16 bit half word HW, whereby a bit B of the 2-bit parity word is generated from each halfword.
- the 2-bit parity generation can also be replaced by a CRC (cyclic redundancy check) check with a CRC word calculated for each data word according to a polynomial.
- the memory architecture is chosen so that the width of the stored data words (memory words) is a multiple of the width of the data words on the data bus.
- the memory word preferably has a width of 128 bits and the CRC word has a width of 9 bits for optimum error security.
- FIG. 5 shows a corresponding arrangement which is connected to a 32-bit data bus (not shown) via the bus interface unit 14.
- the RAM module comprises an array 60 from a number of 128 bit memory word registers 60a,... 60x, which are shown arranged in rows one below the other. Each memory word register is assigned a CRC register 61a,... 6lx, each with 9 bits, for example, so that a CRC array 61 results.
- a unit 70 is connected between the array 60 and the bus interface unit 14, which has a multiplexer 71 for four 32 bit data words and a 128 bit CRC computation register 72 for receiving four 32 bit data words.
- the unit 70 further comprises a CRC arithmetic unit 73, with which a 9 bit CRC word is calculated from the content of the 128 bit CRC arithmetic register 72 using known arithmetic methods and is temporarily stored in a 9 bit CRC register 74, which in turn is stored on the bus - Interface unit 14 is connected.
- a CRC arithmetic unit 73 with which a 9 bit CRC word is calculated from the content of the 128 bit CRC arithmetic register 72 using known arithmetic methods and is temporarily stored in a 9 bit CRC register 74, which in turn is stored on the bus - Interface unit 14 is connected.
- an error check is to be carried out before writing a new 32-bit data word, which can be initiated, for example, by software with certain time intervals, the content of the relevant 128-bit memory word register 60i and the content of the assigned CRC- Register 61i read out.
- the 9-bit CRC word is then generated from it again with the CRC arithmetic unit 73 and compared with the CRC word read out. If these two CRC words do not match, an error signal F (or a corresponding error flag) is generated.
- a new 9 bit CRC word is calculated from the new 32 bit data word containing the 32 bit data word, and both are transferred to the corresponding 128 bit memory word register 60i or the assigned 9 Bit CRC register 61i of the RAM module read.
- the error check can also be carried out if a data word is to be read from the RAM module onto the data bus 20.
- the content of the memory word register 60i containing the relevant data word is transferred to the CRC arithmetic register 72 and the CRC word is calculated from this again.
- This CRC word is stored in the associated CRC word register 61i CRC word compared. If the two words do not match, an error message F is generated or a corresponding error flag is set. If both CRC words match, the 32-bit data word read out is transmitted to the data bus 20.
- the content of the CRC arithmetic register 72 is then fed back into the corresponding 128 bit memory word register 60i.
- FIG. 6 shows a number of memory word registers 10a, 10b,... LOx, for 32 bit data words and a 32 bit parity word - register 12, a bit with the value 0 or 1 being shown as an example for each position.
- a column-oriented parity is generated in accordance with FIG. 6, in which a parity bit is determined for the same positions of all data words, which is assigned to an assigned position in the 32-bit parity word Register 12 is registered. This results in a 32 bit parity word. Furthermore, a 2-bit parity word can now be generated for this 32-bit parity word in the same way as described for the word-oriented parity with reference to FIG. 4 and stored in the 2-bit parity word register 13 (see FIG. 1). According to the manner described above, a column-oriented parity check can also be carried out in the embodiment according to FIG. 5 with 128-bit data words.
- the content of the data word of the memory location to be written in the RAM module ie a 32 bit data word register lOi in the example, and the 32 bit parity word register 12 are read out.
- the value of the column-oriented 32-bit parity word is then determined again and described.
- the new data word is then written back into the corresponding data word register 10i and the content of the 32 bit parity word register 12 is newly determined. Subsequently, a 2 bit parity can again be generated for the 32 bit parity word and stored in the 2 bit parity word register 13 (see FIG. 1).
- An error check is preferably not carried out during a normal read operation.
- An additional error check can be carried out by reading out the contents of all data word register 10i, for example at the time during a read operation, generating the column-oriented 32 bit parity word again and using the in the parity word stored in the parity word register 12 is compared. If the parity words do not match, an error message F is generated or a corresponding error flag is set. If the parity words match, the read data word is transferred to the data bus 20.
- the embodiment described here for column-oriented error checking in the entire RAM is expediently not carried out with every write or read operation, but with certain time intervals, whereby the time intervals can be predetermined by the software used. The decision whether this Error checking or not, is preferably done by the software used.
- the 2 bit parity word of the 32 bit parity word can be used for error checking in the same way as was described with reference to FIGS. 2 to 4 for the 2 bit parity words of the data words.
- a column-oriented CRC Cyclic Redundancy Check
- the content of all data word register 10i and the check bit register 12 is first read out and the CRC word is determined again. If this CRC word does not match the stored CRC word, an error message F is generated or a corresponding error flag is set. If both CRC words match, the write or read process is completed in the manner described above for column-oriented parity word generation.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Detection And Correction Of Errors (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
Description
Claims
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/088,957 US6901552B1 (en) | 1999-09-22 | 2000-08-29 | System for storing data words in a RAM module |
EP00956493A EP1222545B1 (de) | 1999-09-22 | 2000-08-29 | Verfahren und schaltungsanordnung zum speichern von datenworten in einem ram modul |
DE50016020T DE50016020D1 (de) | 1999-09-22 | 2000-08-29 | Verfahren und schaltungsanordnung zum speichern von datenworten in einem ram modul |
JP2001525526A JP2004500623A (ja) | 1999-09-22 | 2000-08-29 | Ramモジュールにデータ語を記憶する方法と回路装置 |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19945494.9 | 1999-09-22 | ||
DE19945494 | 1999-09-22 | ||
DE10018722.6 | 2000-04-15 | ||
DE10018722A DE10018722A1 (de) | 1999-09-22 | 2000-04-15 | Verfahren und Schaltungsanordnung zum Speichern von Datenworten in einem RAM Modul |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2001022225A1 true WO2001022225A1 (de) | 2001-03-29 |
Family
ID=26005322
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/EP2000/008398 WO2001022225A1 (de) | 1999-09-22 | 2000-08-29 | Verfahren und schaltungsanordnung zum speichern von datenworten in einem ram modul |
Country Status (4)
Country | Link |
---|---|
US (1) | US6901552B1 (de) |
EP (1) | EP1222545B1 (de) |
JP (1) | JP2004500623A (de) |
WO (1) | WO2001022225A1 (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10109449B4 (de) * | 2000-08-02 | 2012-11-08 | Continental Teves Ag & Co. Ohg | Verfahren und Schaltungsanordnung zur Speicherung von Prüfbit-Worten |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040148559A1 (en) * | 2003-01-23 | 2004-07-29 | Fetzer Eric S. | Method and circuit for reducing silent data corruption in storage arrays with no increase in read and write times |
DE102005027455A1 (de) * | 2005-06-14 | 2006-12-28 | Infineon Technologies Ag | Verfahren und Schaltungsanordnung zur Fehlererkennung in einem Datensatz |
EP1748374A1 (de) * | 2005-07-08 | 2007-01-31 | STMicroelectronics SA | Verfahren und Vorrichtung zum Schutz eines Speichers gegen Angriffe mittels Fehlerinjektion |
US7447948B2 (en) * | 2005-11-21 | 2008-11-04 | Intel Corporation | ECC coding for high speed implementation |
EP2294581B1 (de) * | 2008-06-20 | 2013-01-09 | Freescale Semiconductor, Inc. | System zum verteilen eines verfügbaren speicherbetriebsmittels |
WO2009153623A1 (en) * | 2008-06-20 | 2009-12-23 | Freescale Semiconductor, Inc. | Memory system with redundant data storage and error correction |
FR3078439A1 (fr) * | 2018-02-27 | 2019-08-30 | Stmicroelectronics (Rousset) Sas | Procede de gestion du routage de transactions entre des equipements sources, au moins un equipement cible, par exemple une memoire multiports, et systeme sur puce correspondant |
EP3683679A1 (de) * | 2019-01-15 | 2020-07-22 | ARM Limited | Prüfsummenerzeugung |
KR20210084871A (ko) * | 2019-12-30 | 2021-07-08 | 삼성전자주식회사 | 안전 민감 데이터의 무결성 점검 장치 및 이를 포함하는 전자 기기 |
US11694761B2 (en) * | 2021-09-17 | 2023-07-04 | Nxp B.V. | Method to increase the usable word width of a memory providing an error correction scheme |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3972033A (en) * | 1973-12-27 | 1976-07-27 | Honeywell Information Systems Italia | Parity check system in a semiconductor memory |
US4277844A (en) * | 1979-07-26 | 1981-07-07 | Storage Technology Corporation | Method of detecting and correcting errors in digital data storage systems |
US4710934A (en) * | 1985-11-08 | 1987-12-01 | Texas Instruments Incorporated | Random access memory with error correction capability |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4384353A (en) | 1981-02-19 | 1983-05-17 | Fairchild Camera And Instrument Corp. | Method and means for internal error check in a digital memory |
JP2642094B2 (ja) * | 1985-05-20 | 1997-08-20 | 日本電信電話株式会社 | 半導体記憶装置 |
DE68926410T2 (de) | 1988-06-24 | 1996-09-12 | Nippon Electric Co | Mit einer Paritätsteuerungseinheit auf demselben Chip bestückter Mikroprozessor |
JPH08115268A (ja) * | 1994-10-13 | 1996-05-07 | Toshiba Corp | メモリ回路装置 |
JPH09167120A (ja) * | 1995-12-15 | 1997-06-24 | Denso Corp | 記憶装置の誤り訂正装置 |
-
2000
- 2000-08-29 EP EP00956493A patent/EP1222545B1/de not_active Expired - Lifetime
- 2000-08-29 JP JP2001525526A patent/JP2004500623A/ja active Pending
- 2000-08-29 US US10/088,957 patent/US6901552B1/en not_active Expired - Fee Related
- 2000-08-29 WO PCT/EP2000/008398 patent/WO2001022225A1/de active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3972033A (en) * | 1973-12-27 | 1976-07-27 | Honeywell Information Systems Italia | Parity check system in a semiconductor memory |
US4277844A (en) * | 1979-07-26 | 1981-07-07 | Storage Technology Corporation | Method of detecting and correcting errors in digital data storage systems |
US4710934A (en) * | 1985-11-08 | 1987-12-01 | Texas Instruments Incorporated | Random access memory with error correction capability |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10109449B4 (de) * | 2000-08-02 | 2012-11-08 | Continental Teves Ag & Co. Ohg | Verfahren und Schaltungsanordnung zur Speicherung von Prüfbit-Worten |
Also Published As
Publication number | Publication date |
---|---|
US6901552B1 (en) | 2005-05-31 |
JP2004500623A (ja) | 2004-01-08 |
EP1222545B1 (de) | 2010-10-27 |
EP1222545A1 (de) | 2002-07-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3789929T2 (de) | Verfahren und Gerät zur Fehlerkorrektur in einem aus parallelem Prozessor bestehenden Datenverarbeitungssystem. | |
DE2328869C2 (de) | Verfahren und Schaltungsanordnung zum Betreiben eines digitalen Speichersystems | |
DE3586851T2 (de) | Fehlerkorrekturverfahren und anordnung fuer chips mit multibitausgabe. | |
DE2030760C2 (de) | Paritätsprüfschaltung für eine Speicherschaltung | |
DE2132565C3 (de) | Umsetzer | |
DE3111447C2 (de) | ||
DE69126057T2 (de) | Ein Informationsverarbeitungsgerät mit einer Fehlerprüf- und Korrekturschaltung | |
DE102004036888A1 (de) | Flashspeichersystem und zugehöriges Datenschreibverfahren | |
DE2456709C2 (de) | Schaltungsanordnung zur Fehlererkennung und -korrektur | |
DE2400064A1 (de) | Speicherpruefanordnung und diese verwendendes endgeraetsystem in einem datenverarbeitungssystem | |
DE3209679A1 (de) | Halbleiter-speichereinrichtung | |
WO2001022225A1 (de) | Verfahren und schaltungsanordnung zum speichern von datenworten in einem ram modul | |
DE69904618T2 (de) | Detektionstechnik von speicherabschnittfehlern und einzel-, doppel und triplebitfehlern | |
DE3412677A1 (de) | Halbleiterspeichervorrichtung mit selbstkorrekturschaltung | |
DE69715993T2 (de) | Cache-Speicher mit Verwendung fehlerhaften Ettikettenspeichers | |
EP0615211B1 (de) | Verfahren zum Speichern sicherheitsrelevanter Daten | |
WO1998058386A1 (de) | Anordnung mit speicherzellen und verfahren zur funktionsüberprüfung von speicherzellen | |
EP0127118B1 (de) | Speichersteueranordnung, insbesondere für fehlertolerantes Fernsprech-Vermittlungssystem | |
DE69619373T2 (de) | Verfahren und gerät um fehlercodes wirksam zu speichern | |
DE3433679C2 (de) | ||
DE10062404A1 (de) | Vorrichtung und Verfahren zum Reduzieren der Anzahl von Adressen fehlerhafter Speicherzellen | |
EP0453609B1 (de) | Verfahren zum Testen einer kleinsten adressierbaren Einheit eines RAM's auf über einer bestimmten Zahl liegende Bitfehler | |
DE2004934B2 (de) | Speicheranordnung mit schaltungen zur fehlererkennung und fehlerkorrektur | |
DE2153116A1 (de) | Funktionsueberwachter informationsspeicher, insbesondere integrierter halbleiterspeicher | |
DE19781328B4 (de) | Speichertestgerät |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A1 Designated state(s): JP US |
|
AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
DFPE | Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101) | ||
WWE | Wipo information: entry into national phase |
Ref document number: 2000956493 Country of ref document: EP |
|
ENP | Entry into the national phase |
Ref country code: JP Ref document number: 2001 525526 Kind code of ref document: A Format of ref document f/p: F |
|
WWE | Wipo information: entry into national phase |
Ref document number: 10088957 Country of ref document: US |
|
WWP | Wipo information: published in national office |
Ref document number: 2000956493 Country of ref document: EP |