JPS59110098A - Error correcting device of data storage device - Google Patents
Error correcting device of data storage deviceInfo
- Publication number
- JPS59110098A JPS59110098A JP57218660A JP21866082A JPS59110098A JP S59110098 A JPS59110098 A JP S59110098A JP 57218660 A JP57218660 A JP 57218660A JP 21866082 A JP21866082 A JP 21866082A JP S59110098 A JPS59110098 A JP S59110098A
- Authority
- JP
- Japan
- Prior art keywords
- parity
- data
- storage device
- error
- lateral
- 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.)
- Pending
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/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Detection And Correction Of Errors (AREA)
Abstract
Description
【発明の詳細な説明】
不発明はデータ記憶装置の誤り検出及び、誤り訂正に関
するものである。従来、誤りの訂正にはハミング符号、
ファイア符号等全データに付加して実現していたが、こ
tらの符号はデータに対して付加するピット数が多く、
記憶素子を多量に使い高価になる欠点があった。そnに
対して安価にデータの誤Vを検出をするためには、デー
タにバリティピラトラ付加することが行わnてぃたが、
誤りの訂正は不可能であった。本発明は、安価で誤フ訂
正の可能なデータ記憶装置を得ることを目的とする。DETAILED DESCRIPTION OF THE INVENTION The invention relates to error detection and error correction in data storage devices. Traditionally, error correction uses Hamming codes,
This was achieved by adding fire codes to all data, but these codes have a large number of pits added to the data,
It has the disadvantage of using a large number of memory elements and being expensive. On the other hand, in order to detect data errors at low cost, it was necessary to add a barity filter to the data.
Correction of the error was impossible. SUMMARY OF THE INVENTION An object of the present invention is to obtain a data storage device that is inexpensive and capable of correcting errors.
まず、記憶装置に7ドレスを指定して一度に読み書きで
きる単位(−語〕に付加するパリティを1横パリテイ”
、すべてのアドレスに対応する同−のビットに付加する
パリティを“縦パリティ”と定義する。First, specify 7 addresses in the storage device and add the parity to the unit (-word) that can be read and written at once by 1 horizontal parity.
, the parity added to the same bits corresponding to all addresses is defined as "vertical parity".
以下、本発明を図面に基き簡単に説明する。図面は本発
明の好適な実施例を示し、1は本装置の各回路の制御を
する制御回路で、横パリティ誤り信号PE、IJセット
信号Rが与えらnた時、及び電源投入時に、縦パリティ
を計算する制御を受は持つ、、2は制御回路1が動作中
に、データ記憶装置5のすべてのアドレスを逐次出力す
るためのアドレス発生回路である。3は本装置を外部の
アドレスバスから切り放し、アドレス発生回路2の発生
するアドレス2αをデータ記憶装置5に接続するための
回路である。4はデータ記憶装置5のアドレスと同じア
ドレスを有する横パリティ記憶装置で、各アドレスにつ
き1ビツトの容量を持つ。Hereinafter, the present invention will be briefly explained based on the drawings. The drawings show a preferred embodiment of the present invention. Reference numeral 1 denotes a control circuit for controlling each circuit of this device. The receiver has control for calculating parity. 2 is an address generation circuit for sequentially outputting all addresses of the data storage device 5 while the control circuit 1 is in operation. 3 is a circuit for disconnecting this device from the external address bus and connecting the address 2α generated by the address generation circuit 2 to the data storage device 5. 4 is a horizontal parity storage device having the same address as that of data storage device 5, and each address has a capacity of 1 bit.
5は本来必要とさnるデータを記憶するためのデータ記
憶装置で、との装置が使わ牡るシステムのビット長(例
えば8ピツト、16ビツト、32ビツト)を−語として
扱うのが通常の使い方である。5 is a data storage device for storing originally required data, and the bit length of the system used by the device (e.g. 8 bits, 16 bits, 32 bits) is usually treated as a - word. It's how you use it.
6はデータ記憶装置5に、書き込み時は、データのパリ
ティwp’6発生し、読み出し時は横パリティ記憶装置
4.データ記憶装置5からのデータよりパリティの誤り
検出を行う横パリティ発生および誤り検出回路で、誤り
が発見さnたなら誤り信号P]!!により制御回路1を
起動する。7.9はビット方向の縦パリティの発生回路
で、各ビットごとに独立に、縦バリティ記憶装g s
、10の対応するビットと、データ記憶装置5からのデ
ータ信号り及び4からのSWF信号より次のパリティを
計算し新しいパリティで縦パリティ記憶装置8、I減の
情報全更新する。8,1\は縦パリティを記憶するため
の縦パリティ装置で、そnぞn−語長のビット数+1ビ
ツトのレジスタでレジスタの更新は10制御回路により
行わ牡る。同機能の物が二組あるのは、一方は、外部か
らデータを書き込む時に逐時縦パリティ記憶装置8.1
0の更新を行なう。こしは、データバスDBからの書き
込みデータにより作らした情報でおるから、誤りを含ま
ないと仮定する。他方は、横パリティに誤りが生じ友時
に、制御回路1の制御のもとで、その時の縦パリティを
計算し、データ一致比較器11により両者の相違を、図
示しない本装置全使用する装置C以下、プロセッサと称
する)に知らせる。プロセッサは、このデータDoによ
り、データを修正し、必要が必扛ば、データ記憶装置5
に対し、再度正しいデータを書き込み、データの訂正を
終える。6 is in the data storage device 5, when writing, data parity wp'6 is generated, and when reading, horizontal parity storage device 4.6 is generated. If an error is detected in the horizontal parity generation and error detection circuit that detects parity errors from data from the data storage device 5, an error signal P]! ! starts the control circuit 1. 7.9 is a vertical parity generation circuit in the bit direction, which independently generates a vertical parity storage device gs for each bit.
, 10, the data signal from the data storage device 5, and the SWF signal from 4, the next parity is calculated, and all the information in the vertical parity storage device 8 and I is updated with the new parity. 8,1\ is a vertical parity device for storing vertical parity, each of which is a register of n-word length bits + 1 bit, and updating of the register is performed by a control circuit 10. There are two sets of devices with the same function; one is a vertical parity storage device 8.1 that is used when writing data from outside;
Update to 0. Since this is information created by write data from the data bus DB, it is assumed that it does not contain any errors. On the other hand, when an error occurs in the horizontal parity, the vertical parity at that time is calculated under the control of the control circuit 1, and the difference between the two is detected by the data matching comparator 11. (hereinafter referred to as processor). The processor modifies the data using this data Do, and if necessary, stores the data in the data storage device 5.
Write the correct data again to complete the data correction.
次に、各動作ごとに詳細に説明する。Next, each operation will be explained in detail.
(1)電源投入時、またはリセット信号R入力時電源投
入時には、記憶装f4,5の状態は定まらない、プロセ
ッサは、データを書き込む前に読み出すことはしないの
で、横パリティについては初期化の必要はないが、縦パ
リティは初期化の必要がある。何故なら、縦パリティは
記憶装置4゜5のデータの変化に基づいて書き変えなけ
nばならないが、初期値が正しくなけtば、以後も正し
いパリティを持つことができないからである。(1) When power is turned on or when reset signal R is input When power is turned on, the state of memory devices f4 and 5 is not determined.The processor does not read data before writing it, so horizontal parity needs to be initialized. However, vertical parity needs to be initialized. This is because the vertical parity must be rewritten based on changes in the data in the storage device 4.5, but if the initial value is incorrect, it will no longer be possible to have correct parity.
(2)データの書き込み時
データの書き込みは、縦パリティに変化をもたラ−t−
ので、量子ドレスのデータ及び横パリティを予め読み縦
パリティ記憶装置8とのパリティ計算をして、パリティ
の初期化をする。この新しいパリティと、今回書き込む
データ及びその横パリティを計算することにより最終的
な縦パリティを得て、縦パリティ記憶装置8に書き込む
、データ及び横パリティはそのままデータ記憶装置5及
び、横パリティ記憶装置4にそnぞrL書き込む。(2) When data is written, the data is written with a change in vertical parity.
Therefore, the data of the quantum dress and the horizontal parity are read in advance and the parity is calculated with the vertical parity storage device 8 to initialize the parity. The final vertical parity is obtained by calculating this new parity, the data to be written this time, and its horizontal parity, and is written to the vertical parity storage device 8. The data and horizontal parity are transferred to the data storage device 5 and the horizontal parity storage device as they are. Write 4 to 4.
(3)データの読み出し時
データの読み出し時には、まず横パリティの検査をする
。パリティが正しけnば、データをそのまま読んで使用
する。もし横パリティが誤りであったら、横パリティ誤
り信号FBを発生し、プロセッサに知らせる。一般的に
はプロセッサには別込みを用いるか、その他、特別のデ
ータ誤りに対する処理の機構があnば、そt′Lt−用
いる。プロセッサはここで、制御回路1の処理が終るま
で、待ちの状態に入る。一方データ記憶装!5内では以
6一
下の処理が進めらnる。すなわち、制御回路1が起動さ
n1アドレス回路2が発生する連続アドレス2Cを、マ
ルチプレクサ3全通して、データ記憶装置5に与えらn
る。データ書き込み時に縦パリティの計算をしているの
が、縦パリティ発生回路7と記憶装置8だと仮定すると
、横パリティ発生が発生した時は縦パリティ計算回路9
,10を用いて、連続アドレス2αに対応した縦パリテ
ィを次々と計算して、最終的に全アドレスの縦パリティ
を得る。次にデータ一致比較器11を用いて、縦パリテ
ィ記憶装置1と、縦パリティ記憶装置2との相違をデー
タバスDBを通して、プロセッサに知らせる。プロセッ
サは、そのデータバスを読むことにより、誤りを起した
ビットを認めることができるので、次のサイクルで、正
しいデータを同じ了ドレスに書き込む。縦パリティ記憶
装置1にある縦パリティは本来の正しいデータに対する
ものであるから、(2)のデータ書き込み時とは違って
、書き変えてはいけない。こtで、読み出し時の誤りに
対する処理が終了する。(3) When reading data When reading data, horizontal parity is first checked. If the parity is correct, the data is read and used as is. If the horizontal parity is in error, a horizontal parity error signal FB is generated to inform the processor. Generally, the processor uses separate processing, or if it has some other mechanism for handling special data errors, it uses it. The processor now enters a waiting state until the control circuit 1 completes its processing. On the other hand, data storage! In 5, the following processes proceed. That is, when the control circuit 1 is activated, the continuous address 2C generated by the n1 address circuit 2 is applied to the data storage device 5 through the multiplexer 3.
Ru. Assuming that it is the vertical parity generation circuit 7 and the storage device 8 that calculate the vertical parity when writing data, when horizontal parity generation occurs, the vertical parity calculation circuit 9
, 10, the vertical parities corresponding to consecutive addresses 2α are calculated one after another, and finally the vertical parities of all addresses are obtained. Next, the data match comparator 11 is used to notify the processor of the difference between the vertical parity storage device 1 and the vertical parity storage device 2 via the data bus DB. By reading the data bus, the processor can recognize the erroneous bit and write the correct data to the same address on the next cycle. Since the vertical parity in the vertical parity storage device 1 is for originally correct data, it must not be rewritten unlike when writing data in (2). This completes the processing for errors during reading.
本実施例は、多くをハードウェアで処理しているが、一
部分をソフトウェアで処理することも可能である。例え
ば縦パリティ発生回路2及び縦パリティ記憶装置2を省
略して、ソフトウェアで処理することも可能である。極
端な場合、すべてをソフトウェアで行うことも可能であ
るが、処理の速度を考慮すると、本実施例のハードウェ
アは、誤りがない時には余分な時間を使わないところに
特長がある。In this embodiment, most of the processing is performed by hardware, but it is also possible to process a part of the processing using software. For example, it is also possible to omit the vertical parity generation circuit 2 and the vertical parity storage device 2 and perform the processing using software. In an extreme case, it is possible to do everything in software, but considering the processing speed, the hardware of this embodiment has the advantage of not using extra time when there is no error.
以上詳述したごとぐ本発明においては、横パリティおよ
び縦パリティを計算し、横パリティの誤りに応じて縦パ
リティを比較する構成としたので一語に対して1ピツト
と少数の回路により、記憶さnたデータの誤りを検出す
るのみならず、訂正することも可能にする装置を実現で
きる。As described in detail above, in the present invention, the horizontal parity and the vertical parity are calculated, and the vertical parity is compared depending on the error in the horizontal parity. It is possible to realize a device that not only detects errors in stored data but also corrects them.
図面は不発明の実施例を示すブロック図である1、。制
御回路、20.アドレス発生回路、36.マルチプレク
サ、40.横パリティ記憶装置、50.データ記憶装置
、60.横パリティ発生及び誤り検出回路、70.縦パ
リティ発生回路、1.8゜、縦パリティ記憶装置、1,
9.、iパリティ発生回路、IX、。縦パリティ記憶装
置、2 、11 、。データ一致比較回路、AB、、プ
ロセッサのアドレスバス、Ro、リセット信号、MA。
、横パリティ記憶装置及び、データ記憶装置に対する了
ドレス信号、SWP、、指足したアドレスの記憶さnた
横パリティ、NP、、次に記憶さnるデータに対して発
生さ−t′L穴横パリティ、pHi0.データ記憶装置
と横パリティ記憶装置からの。The drawing is a block diagram showing an embodiment of the invention. control circuit, 20. Address generation circuit, 36. multiplexer, 40. Horizontal parity storage, 50. data storage device, 60. Horizontal parity generation and error detection circuit, 70. Vertical parity generation circuit, 1.8°, vertical parity storage device, 1,
9. , i parity generation circuit, IX. Vertical parity storage, 2, 11,. Data match comparison circuit, AB, processor address bus, Ro, reset signal, MA. , the horizontal parity storage device and the completion address signal for the data storage device, SWP, the storage of the added address, the horizontal parity, NP, and the -t'L hole generated for the next stored data. Horizontal parity, pHi0. from data storage and lateral parity storage.
Claims (1)
逐次出力できるアドレス発生回路と、この了ドレスと外
部からの了ドレスとを切換えるためのマルチプレクサと
、前記各アドレスに対応するデータのパリティを発生す
る横パリティ発生回路と、この横パリティを記憶する記
憶装置と、前記外部からのアドレスに従って前記データ
の継方同(同一ビット方向]のパリティを発生する第1
の縦パリティ発生回路と、この縦パリティを記憶する第
1の縦パリティ記憶装置と、前記横パリティ発生回路が
誤り信号を発生したとき前記アドレス発生回路からのア
ドレスに従って前記データ記憶装置の縦パリティを逐次
発生する第2の縦ノくリテイ発生回路と、この縦パリテ
ィを記憶する第2の縦パリティ記憶装置とを備え、前記
横パリティ発生回路が誤り信号を出力したとき、前記第
1お1− データ記憶装置の内容を訂正可能な構成としたこ[Claims] A data storage device, an address generation circuit that can sequentially output all the addresses of this storage device, a multiplexer for switching between this address and an external address, and a corresponding one for each of the addresses. a horizontal parity generation circuit that generates parity for data to be processed; a storage device that stores this horizontal parity;
a vertical parity generation circuit, a first vertical parity storage device that stores the vertical parity, and a first vertical parity storage device that stores the vertical parity of the data storage device according to an address from the address generation circuit when the horizontal parity generation circuit generates an error signal. It includes a second vertical parity generation circuit that sequentially generates an error signal, and a second vertical parity storage device that stores the vertical parity, and when the horizontal parity generation circuit outputs an error signal, the first The structure allows the contents of the data storage device to be corrected.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP57218660A JPS59110098A (en) | 1982-12-14 | 1982-12-14 | Error correcting device of data storage device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP57218660A JPS59110098A (en) | 1982-12-14 | 1982-12-14 | Error correcting device of data storage device |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS59110098A true JPS59110098A (en) | 1984-06-25 |
Family
ID=16723421
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP57218660A Pending JPS59110098A (en) | 1982-12-14 | 1982-12-14 | Error correcting device of data storage device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS59110098A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04222028A (en) * | 1990-12-25 | 1992-08-12 | Fujitsu Ltd | System for checking data bus/address bus |
US6781895B1 (en) | 1991-12-19 | 2004-08-24 | Kabushiki Kaisha Toshiba | Non-volatile semiconductor memory device and memory system using the same |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5555500A (en) * | 1978-10-18 | 1980-04-23 | Fujitsu Ltd | Memory error correction system |
JPS56148798A (en) * | 1980-04-18 | 1981-11-18 | Fujitsu Ltd | Error detection system |
-
1982
- 1982-12-14 JP JP57218660A patent/JPS59110098A/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5555500A (en) * | 1978-10-18 | 1980-04-23 | Fujitsu Ltd | Memory error correction system |
JPS56148798A (en) * | 1980-04-18 | 1981-11-18 | Fujitsu Ltd | Error detection system |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04222028A (en) * | 1990-12-25 | 1992-08-12 | Fujitsu Ltd | System for checking data bus/address bus |
US6781895B1 (en) | 1991-12-19 | 2004-08-24 | Kabushiki Kaisha Toshiba | Non-volatile semiconductor memory device and memory system using the same |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20050204264A1 (en) | Error correction circuit | |
KR20210034999A (en) | AIM device and method of multiplying/accumulation in the AIM device | |
US20120185752A1 (en) | Dram address protection | |
US5063565A (en) | Single-error detecting and correcting system | |
JP2001290710A (en) | Device for detecting data error | |
JPS59110098A (en) | Error correcting device of data storage device | |
JPS6288044A (en) | Memory control system | |
JP2818659B2 (en) | Error correction method | |
JP2011054221A (en) | Storage device and electronic device | |
JPH0520215A (en) | Information processor | |
JP2000099410A (en) | Memory control circuit and information processor | |
JPH04115340A (en) | Duplex storage circuit | |
US5375231A (en) | Control memory error correcting apparatus | |
JPH10143383A (en) | Error detecting and correcting device | |
JPS6240742B2 (en) | ||
JPS6142304B2 (en) | ||
JPH05158810A (en) | Error detection circuit | |
JPH04311236A (en) | Memory error processing circuit | |
JPH06303149A (en) | Decoder for bch code | |
JPS61193246A (en) | Memory one-bit error write circuit | |
JPS5953640B2 (en) | Storage device | |
JPS63170756A (en) | Main storage initializing system | |
JPH01119997A (en) | Semiconductor memory device | |
JPS63216150A (en) | Storage device | |
JPH06250937A (en) | Method for memory control, memory control circuit with ecc function and information processor |