JPH0922387A - Memory unit - Google Patents

Memory unit

Info

Publication number
JPH0922387A
JPH0922387A JP7172288A JP17228895A JPH0922387A JP H0922387 A JPH0922387 A JP H0922387A JP 7172288 A JP7172288 A JP 7172288A JP 17228895 A JP17228895 A JP 17228895A JP H0922387 A JPH0922387 A JP H0922387A
Authority
JP
Japan
Prior art keywords
memory
data
bit
ecc
bit error
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
Application number
JP7172288A
Other languages
Japanese (ja)
Inventor
Yoshiaki Hisada
義明 久田
Kiyoshi Onoda
清 小野田
Yasuo Hirata
康夫 平田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP7172288A priority Critical patent/JPH0922387A/en
Publication of JPH0922387A publication Critical patent/JPH0922387A/en
Pending legal-status Critical Current

Links

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Abstract

PROBLEM TO BE SOLVED: To improve the fault tolerance of the system of a memory unit by invalidating a memory data line in which errors frequently occur arid newly using a different memory data line instead of it. SOLUTION: Among the (m+1+x) pieces of data read from memory devices i(o)-i(m+x), only the data of valid bit lines g(o)-g(m) are outputted to data buses e(l)-e(m) by a programmable device 4. Then, checking is performed by the ECC checker of a memory controller 2. At the time, when a 1-bit error is present, an ECC 1-bit error counter (d) corresponding to the bit is increased by only one. Then, the processing is repeated, and when the ECC 1-bit error counter (d) reaches a determined number of times, it is judged that abnormality is present in the pertinent defective memory address inside the memory device (i) and the replacement operation of the data to a redundant memory line without defects is executed.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明はメモリ装置にかかり、特
に、あらゆるコンピュータシステムのメモリに関するフ
ォルト・トレランス(fault toleranc
e;障害の許容性)及び信頼性を向上させるのに好適な
メモリ装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to memory devices, and more particularly to fault tolerance for memory in any computer system.
e; fault tolerance) and a memory device suitable for improving reliability.

【0002】[0002]

【従来の技術】従来技術としては、特開平6−2599
89号公報に記載されているように、ヒューズを用いて
2系列設けられたメモリ素子を切り替える技術が存在す
る。しかし、この技術では、2系列設けられた全てのメ
モリ素子を切り換えなければならず、メモリ素子の利用
効率が悪く、しかもメモリ素子の切り換えが一度しかで
きないという問題点があった。また、上記従来技術で
は、エラーチェック方法について特に言及されていな
い。
2. Description of the Related Art As a conventional technique, Japanese Patent Laid-Open No. 6-2599
As described in Japanese Patent Publication No. 89, there is a technique of switching between two series of memory elements using a fuse. However, this technique has a problem that all the memory elements provided in two series must be switched, the utilization efficiency of the memory elements is poor, and the memory elements can be switched only once. Further, the above-mentioned conventional technology does not particularly mention the error checking method.

【0003】[0003]

【発明が解決しようとする課題】いま、メモリへの書き
込み又はメモリからの読み出しを2ビットエラー検出、
1ビットエラー訂正可能なECCエラーチェックコード
を用いて行うシステムを想定する。このシステムのメモ
リにおいて、あるメモリ素子(1ビット)が破壊された
場合、そのメモリ素子をアクセスする時、常にECC1
ビットエラーとなり、これを訂正するための時間がアク
セス毎に必要になり、システムの性能低下に直結すると
いう問題点がある。
A two-bit error is detected when writing to or reading from a memory.
Assume a system that uses an ECC error check code capable of 1-bit error correction. When a memory element (1 bit) is destroyed in the memory of this system, ECC1 is always used when accessing the memory element.
There is a problem in that a bit error occurs, and it takes time to correct the bit error for each access, which directly leads to system performance degradation.

【0004】また、すでに破壊されているメモリ素子
(1ビット)が存在するアドレスのデータエリアにおい
て、もう1つのメモリ素子(1ビット)が破壊された場
合、ECC2ビットエラーとなり、システムダウンとな
る問題点がある。
Further, when another memory element (1 bit) is destroyed in the data area of the address where the already destroyed memory element (1 bit) exists, an ECC 2 bit error occurs and the system goes down. There is a point.

【0005】本発明は、上記した従来技術の問題点に鑑
み成されたもので、メモリ部においてあるメモリ素子が
破壊されてもシステムの性能低下に至らず、かつメモリ
部内の同一アドレスにおいて2ビットの破壊が生じても
システムダウンに至らないように、システムのフォルト
・トレラントを向上させ、信頼性を向上させたメモリ装
置を提供することを目的としている。
The present invention has been made in view of the above-mentioned problems of the prior art. Even if a memory element in the memory section is destroyed, the performance of the system is not deteriorated, and 2 bits are stored at the same address in the memory section. It is an object of the present invention to provide a memory device having improved system fault tolerance and improved reliability so that the system does not go down even if a breakdown occurs.

【0006】[0006]

【課題を解決するための手段】本発明のメモリ装置は、
m個のメモリ素子から成るメモリ部と、メモリ部の制御
装置とを備えて構成されるメモリ装置に適用されるもの
であり、上記メモリ部は、全てのメモリアドレスについ
て、上記m個のメモリ素子に加えて、x個(xは1以上
の整数)の冗長ビット用のメモリ素子を備え、さらに、
上記制御装置は、外部装置に接続されている入出力デー
タバスと上記メモリ部のメモリデータ信号ラインとの間
に設けられ、かつ上記入出力データバスと上記メモリ部
のメモリデータ信号ラインとの接続を変更可能な手段を
備えたことを特徴としている。
A memory device according to the present invention comprises:
The present invention is applied to a memory device including a memory unit including m memory elements and a controller for the memory unit, wherein the memory unit includes the m memory elements for all memory addresses. In addition to the above, x (where x is an integer of 1 or more) memory elements for redundant bits are provided.
The control device is provided between an input / output data bus connected to an external device and a memory data signal line of the memory section, and the connection between the input / output data bus and the memory data signal line of the memory section. It is characterized by having a means for changing the.

【0007】[0007]

【作用】本発明によれば、上記メモリ部に不良のあるメ
モリ素子が存在する場合、上記外部装置に接続されてい
る入出力データバスと不良のあるメモリ素子のメモリデ
ータ信号ラインとを切離し、代わりに冗長ビット用のメ
モリ素子のメモリデータ信号ラインと接続し、新たに接
続されたメモリデータ信号ラインを介して冗長ビット用
のメモリ素子にデータを転送することにより、システム
のフォールト・トレラントを向上させることができる。
According to the present invention, when a defective memory element is present in the memory section, the input / output data bus connected to the external device is disconnected from the memory data signal line of the defective memory element. Instead, connect to the memory data signal line of the memory element for redundant bit and transfer the data to the memory element for redundant bit via the newly connected memory data signal line to improve the fault tolerance of the system. Can be made.

【0008】[0008]

【実施例】以下、添付の図面に示す実施例について説明
する。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS The embodiments shown in the accompanying drawings will be described below.

【0009】図1は、本発明の一実施例を示すブロック
図である。図1において、1はメモリ装置である。ま
た、b(0)〜b(n)はメモリ装置1以外の例えばC
PU等と接続される入出力データバスであり、(n+
1)本の信号線から成り、ECCコードを含んでも良い
し含まなくても良い。2はメモリコントローラであり、
ECCコード用の回路であるチェッカー・訂正回路・コ
ード生成回路、後述するメモリライン入替え等に使用す
るレジスタ等を含んでいる。3はカウンタ部であり、
(m+1)個のECC1ビットエラーカウンタd(0)
〜d(m)から構成されている。e(0)〜e(m)は
(m+1)本のデータバス、g(0)〜g(m+x)は
(m+1+x)本のメモリデータ信号ライン(但し、x
≧1)、4はデータバスe(0)〜e(m)とメモリデ
ータ信号ラインg(0)〜g(m+x)を一対一に接続
するプログラマブルデバイスである。5はプログラマブ
ルデバイス4を制御するプログラマブルデバイス制御回
路である。6はメモリ部であり、(m+1+x)本のデ
ータ幅のあるメモリ素子i(0)〜i(m+x)から構
成され、メモリ素子i(0)〜i(m+x)には、図示
するように、アドレス0〜hが付されている。また、メ
モリ素子i(0)〜i(m+x)のデータ幅は、上記し
たように(m+1+x)本であるが、有効な信号は(m
+1)本であり、残りのx本は冗長ビットラインであ
る。
FIG. 1 is a block diagram showing one embodiment of the present invention. In FIG. 1, reference numeral 1 is a memory device. Further, b (0) to b (n) are, for example, C other than the memory device 1.
An input / output data bus connected to a PU, etc., (n +
1) It consists of one signal line, and may or may not include an ECC code. 2 is a memory controller,
It includes a checker / correction circuit / code generation circuit, which is a circuit for ECC code, a register used for memory line replacement described later, and the like. 3 is a counter section,
(M + 1) ECC 1-bit error counters d (0)
.About.d (m). e (0) to e (m) are (m + 1) data buses, and g (0) to g (m + x) are (m + 1 + x) memory data signal lines (however, x).
≧ 1) and 4 are programmable devices that connect the data buses e (0) to e (m) and the memory data signal lines g (0) to g (m + x) one to one. A programmable device control circuit 5 controls the programmable device 4. A memory unit 6 is composed of (m + 1 + x) memory elements i (0) to i (m + x) each having a data width, and the memory elements i (0) to i (m + x) include, as shown in FIG. Addresses 0 to h are given. The data width of the memory elements i (0) to i (m + x) is (m + 1 + x) lines as described above, but the effective signal is (m
+1) lines and the remaining x lines are redundant bit lines.

【0010】現時点において、メモリ素子i(0)〜i
(m)及びメモリデータ信号ラインg(0)〜g(m)
が有効であり、メモリ素子i(m+1)〜i(m+x)
及びメモリデータ信号ラインg(m+1)〜g(m+
x)が無効であるとする。つまり、メモリデータ信号ラ
インg(0)〜g(m)は、プログラマブルデバイス4
を通してそれぞれデータバスe(0)〜e(m)と接続
されているが、メモリデータ信号ラインg(m+1)〜
g(m+x)は、プログラマブルデバイス4内において
データバスe(0)〜e(m)に接続されていない。
At this time, the memory elements i (0) to i (i)
(M) and memory data signal lines g (0) to g (m)
Is effective, and memory elements i (m + 1) to i (m + x)
And memory data signal lines g (m + 1) to g (m +
x) is invalid. That is, the memory data signal lines g (0) to g (m) are connected to the programmable device 4
Through the memory data signal lines g (m + 1) to e (0) to e (m), respectively.
g (m + x) is not connected to the data buses e (0) to e (m) in the programmable device 4.

【0011】次に、上記したプログラマブルデバイス4
の接続状態を前提として、図1に示す実施例の動作につ
いて説明する。図1に示すECC1ビットエラーカウン
タd(0)〜d(m)は、単位時間zごとにリセットさ
れる。メモリ素子i(0)〜i(m)が異常であるかど
うかは、エラーの総量で決めるべきではなく、単位時間
あたりのエラー回数で決まるべきだからである。そこ
で、まずメモリコントローラ2内に存在するタイマーの
上限となるエラーカウント時間zを設定する。そして、
次にメモリが不良であると判断するための基準となるE
CC1ビットエラーカウンタd(0)〜d(m)のカウ
ント数の最大値yを設定する。そして、タイマーが規定
時間zに達したとき、ECC1ビットエラーカウンタd
(0)〜d(m)とタイマーはリセットされる。
Next, the programmable device 4 described above
The operation of the embodiment shown in FIG. 1 will be described based on the connection state of FIG. The ECC 1-bit error counters d (0) to d (m) shown in FIG. 1 are reset every unit time z. This is because whether or not the memory elements i (0) to i (m) are abnormal should be determined not by the total amount of errors but by the number of errors per unit time. Therefore, first, the error count time z, which is the upper limit of the timer existing in the memory controller 2, is set. And
Next, E, which is a standard for determining that the memory is defective
The maximum value y of the count numbers of the CC1 bit error counters d (0) to d (m) is set. Then, when the timer reaches the specified time z, the ECC 1-bit error counter d
The timers (0) to d (m) are reset.

【0012】図1のメモリ装置1にデータを書き込む場
合には、入出力データバスb(0)〜b(n)bから入
ったデータは、メモリコントローラ2でECCエラー訂
正コードを用いて訂正され、データバスe(0)〜e
(m)へ送られる。この時点で、データにエラーは無い
はずである。そして、プログラマブルデバイス4とメモ
リデータ信号ラインg(0)〜g(m)を通ってメモリ
素子i(0)〜i(m)へ格納される。この時、有効な
信号幅は(m+1)本であって、残りのx本は冗長ビッ
トラインであり、データバスe(0)〜e(m)とは接
続されていない。
When writing data to the memory device 1 of FIG. 1, the data input from the input / output data buses b (0) to b (n) b is corrected by the memory controller 2 using the ECC error correction code. , Data buses e (0) to e
Sent to (m). At this point, the data should be error free. Then, it is stored in the memory elements i (0) to i (m) through the programmable device 4 and the memory data signal lines g (0) to g (m). At this time, the effective signal width is (m + 1) lines, the remaining x lines are redundant bit lines, and are not connected to the data buses e (0) to e (m).

【0013】次に、図1のメモリ装置1からデータを読
み出す場合を考える。メモリ素子i(0)〜i(m+
x)から読みだされた(m+1+x)個のデータのう
ち、有効なビットラインg(0)〜g(m)のデータだ
けがプログラマブルデバイス4によってデータバスe
(1)〜e(m)に出力される。そして、メモリコント
ローラ2のECCチェッカーでチェックされる。もし、
このとき、1ビットエラーがあれば、該当ビットに対応
するECC1ビットエラーカウンターdを1だけ増加さ
せる。そして、この処理を繰り返し、ECC1ビットエ
ラーカウンターdが決められた回数yに到達したら、メ
モリ素子i内の該当不良メモリアドレスラインに異常が
あるとして、例えばメモリ素子i(3)に不良があり、
メモリ素子i(m+1)が不良の無い冗長メモリライン
であるとすると、i(3)からi(m+1)へのデータ
入替え作業を実行する。
Next, consider the case of reading data from the memory device 1 of FIG. Memory elements i (0) to i (m +
Of the (m + 1 + x) pieces of data read from x), only the valid data of the bit lines g (0) to g (m) is transferred by the programmable device 4 to the data bus e.
(1) to e (m) are output. Then, it is checked by the ECC checker of the memory controller 2. if,
At this time, if there is a 1-bit error, the ECC 1-bit error counter d corresponding to the corresponding bit is incremented by 1. Then, this process is repeated, and when the ECC 1-bit error counter d reaches the determined number y, it is determined that there is an abnormality in the corresponding defective memory address line in the memory element i, for example, the memory element i (3) has a defect,
Assuming that the memory element i (m + 1) is a redundant memory line having no defect, data replacement work from i (3) to i (m + 1) is executed.

【0014】図2は上記したメモリ装置1の動作を示す
フローチャートである。図2のステップ100におい
て、メモリコントローラ2内に存在するタイマーの上限
となるエラーカウント時間zが設定される。次に、ステ
ップ101において、メモリが不良であると判断するた
めの基準となるECC1ビットエラーカウンタd(0)
〜d(m)のカウント数の最大値yが設定される。次
に、ステップ102において、ECC1ビットエラーカ
ウンタd(0)〜d(m)がリセットされる。次に、ス
テップ103において、メモリコントローラ2内のタイ
マーがリセットされる。
FIG. 2 is a flow chart showing the operation of the memory device 1 described above. In step 100 of FIG. 2, the error count time z which is the upper limit of the timer existing in the memory controller 2 is set. Next, in step 101, an ECC 1-bit error counter d (0) serving as a reference for determining that the memory is defective.
The maximum value y of the count numbers of ~ d (m) is set. Next, in step 102, the ECC 1-bit error counters d (0) to d (m) are reset. Next, in step 103, the timer in the memory controller 2 is reset.

【0015】次に、ステップ104において、タイマー
のカウント値がエラーカウント時間zに到達したか否か
が判定され、到達していると判定された場合にはステッ
プ102へ戻る。到達していないと判定された場合に
は、ステップ105において、実行される処理がメモリ
リード処理か否かが判定される。メモリリード処理では
ないと判定された場合には、ステップ111において、
前記したメモリライト処理やメモリリフレシュ処理等の
一般処理が行われた後、ステップ104に戻る。ステッ
プ105においてメモリリード処理と判定された場合に
は、ステップ106において、前記したメモリリード処
理が実行される。その後、ステップ108において、E
CC1ビットエラーが生じているか否かが判定され、生
じていないと判定された場合にはステップ104に戻
り、生じていると判定された場合にはステップ108に
おいて該当ビットに対応するECC1ビットエラーカウ
ンターdを1だけ増加させる。次に、ステップ109に
おいて、ECC1ビットエラーカウンターdの計数値が
決められた回数yに到達したか否かを判定し、到達して
いない場合にはステップ104に戻り、到達している場
合にはステップ110において当該ビットに対応するメ
モリデータ信号ラインgの入替え処理を行う。例えば、
メモリ素子i(3)のメモリデータ信号ラインg(3)
からメモリ素子i(m+1)のメモリデータ信号ライン
g(m+1)への入替え作業を実行する。この作業につ
いて、以下に2つの例を示す。
Next, at step 104, it is judged if the count value of the timer has reached the error count time z, and if it is judged that it has reached the error count time z, the routine returns to step 102. When it is determined that the processing has not arrived, it is determined in step 105 whether the processing to be executed is the memory read processing. If it is determined that the memory read processing is not performed, in step 111,
After the general processing such as the memory write processing and the memory refresh processing described above is performed, the process returns to step 104. If the memory read process is determined in step 105, the memory read process is executed in step 106. Then, in step 108, E
It is determined whether or not a CC1 bit error has occurred. If it is determined that a CC1 bit error has not occurred, the process returns to step 104, and if it is determined that it has occurred, then in step 108 the ECC1 bit error counter corresponding to the relevant bit. Increase d by 1. Next, in step 109, it is determined whether or not the count value of the ECC 1-bit error counter d has reached the determined number of times y. If it has not reached, the process returns to step 104, and if it has reached, In step 110, the memory data signal line g corresponding to the bit is replaced. For example,
Memory data signal line g (3) of memory device i (3)
From the memory element i (m + 1) to the memory data signal line g (m + 1). Two examples of this work are given below.

【0016】図3は、第1の入替え処理を示すフローチ
ャートである。なお、以下の説明では、メモリ素子i
(3)のメモリデータ信号ラインg(3)からメモリ素
子i(m+1)のメモリデータ信号ラインg(m+1)
への入替え作業を例にして説明する。ステップ120に
おいて、アドレスをメモリ素子i(0)〜i(m+x)
の最低値とする。図1に示す実施例では、アドレスが最
低アドレスである“0”に設定される。そして、ステッ
プ121においてメモリ素子i(0)〜i(m)からメ
モリコントローラ2のレジスタへデータを読み込み、ス
テップ123においてECC1ビットエラーがあれば訂
正を行う。次に、ステップ123において、プログラマ
ブルデバイス制御回路5を用いて、プログラマブルデバ
イス4の内容を書き換え、その接続をe(3)〜g
(3)からe(3)〜g(m+1)へ変更する。次に、
ステップ124において、ステップ121でメモリコン
トローラ2のレジスタへ読み込んだメモリデータをメモ
リ素子iに書き込む。この時メモリ素子i(0)〜i
(2),i(4)〜i(m+1)の全ビットへデータを
書いてもよいし、メモリ素子i(m+1)にだけメモリ
データを書き込んでもよい。そして、ステップ125に
おいて、アドレスが最大値か否かを判定し、最大値では
ないと判定された場合には、ステップ126においてア
ドレスを1だけ増加する。続いて、ステップ127にお
いて、プログラマブルデバイス制御回路5を用いて、プ
ログラマブルデバイス4の内容を書き換えて、その接続
をe(3)〜g(m+1)からe(3)〜g(3)へ戻
し、ステップ121に戻る。アドレスが最大値になるま
で、ステップ121〜127のサイクルを繰り返し実行
する。ステップ125において、アドレスがメモリ素子
iの最大値に達したときは、プログラマブルデバイス4
の接続をe(3)〜g(3)からe(3)〜g(m+
1)へ変更した状態で処理を終了し、プログラマブルデ
バイス制御回路5にi(3)に不良があるという情報を
蓄えておく。これらの作業によりメモリ素子i(3)は
無効となり、メモリ素子i(m+1)が有効となった。
FIG. 3 is a flowchart showing the first replacement process. In the following description, the memory element i
From the memory data signal line g (3) of (3) to the memory data signal line g (m + 1) of the memory element i (m + 1).
The replacement work will be described as an example. In step 120, the addresses are set to memory elements i (0) to i (m + x).
The lowest value of In the embodiment shown in FIG. 1, the address is set to "0" which is the lowest address. Then, in step 121, the data is read from the memory elements i (0) to i (m) into the register of the memory controller 2, and in step 123, if there is an ECC 1-bit error, it is corrected. Next, in step 123, the programmable device control circuit 5 is used to rewrite the contents of the programmable device 4, and the connection is changed from e (3) to g.
Change from (3) to e (3) to g (m + 1). next,
In step 124, the memory data read into the register of the memory controller 2 in step 121 is written in the memory element i. At this time, the memory elements i (0) to i
(2), data may be written to all bits of i (4) to i (m + 1), or memory data may be written only to the memory element i (m + 1). Then, in step 125, it is determined whether or not the address is the maximum value. If it is determined that the address is not the maximum value, the address is incremented by 1 in step 126. Subsequently, in step 127, the programmable device control circuit 5 is used to rewrite the contents of the programmable device 4, and the connection is returned from e (3) to g (m + 1) to e (3) to g (3), Return to step 121. The cycle of steps 121 to 127 is repeatedly executed until the address reaches the maximum value. In step 125, when the address reaches the maximum value of the memory element i, the programmable device 4
From e (3) to g (3) to e (3) to g (m +
The process is terminated in the state of changing to 1), and the programmable device control circuit 5 stores information that i (3) has a defect. By these operations, the memory element i (3) becomes invalid and the memory element i (m + 1) becomes valid.

【0017】図4は、第2の入替え処理を示すフローチ
ャートである。なお、以下の説明では、メモリ素子i
(3)のメモリデータ信号ラインg(3)からメモリ素
子i(m+1)のメモリデータ信号ラインg(m+1)
への入替え作業を例にして説明する。ステップ130に
おいて、アドレスをメモリ素子iの最低値とする。図1
に示す実施例では、アドレスが最低アドレスである
“0”に設定される。次に、ステップ131において、
プログラマブルデバイス制御回路5を用いて、プログラ
マブルデバイス4の内容を書き換えて、その接続をe
(3)〜g(3)からe(3)〜g(m+1)へ変更す
る。このとき、不良のあるデータのビット3、つまりメ
モリのi(3)に相当する部分のデータが完全に欠落し
たことになる。次に、ステップ132において、メモリ
素子iからメモリコントローラ2のレジスタへデータを
読み込み、ECCコードを用いてデータのビット3を作
成し、メモリ素子iに書き込む。この時メモリ素子i
(0)〜i(2),i(4)〜i(m+1)の全ビット
へデータを書いてもよいし、メモリ素子i(m+1)に
だけ書いてもよい。次に、ステップ135において、ア
ドレスが最大値か否かを判定し、最大値ではないと判定
された場合には、ステップ136において、アドレスを
1だけ増加して、ステップ132へ戻る。ステップ13
5において、アドレスがメモリ素子iの最大値に達した
ときは処理を終了し、プログラマブルデバイス制御回路
5内にメモリ素子i(3)に不良があるという情報を蓄
えておく。これらの作業によりメモリ素子i(3)は無
効となり、メモリ素子i(m+1)が有効となった。
FIG. 4 is a flowchart showing the second replacement process. In the following description, the memory element i
From the memory data signal line g (3) of (3) to the memory data signal line g (m + 1) of the memory element i (m + 1).
The replacement work will be described as an example. In step 130, the address is set to the lowest value of the memory device i. FIG.
In the embodiment shown in (1), the address is set to "0" which is the lowest address. Next, in step 131,
By using the programmable device control circuit 5, the contents of the programmable device 4 are rewritten and the connection is changed.
Change from (3) to g (3) to e (3) to g (m + 1). At this time, bit 3 of the defective data, that is, the data of the portion corresponding to i (3) of the memory is completely lost. Next, in step 132, the data is read from the memory device i into the register of the memory controller 2, bit 3 of the data is created using the ECC code, and the data is written in the memory device i. At this time, the memory element i
Data may be written to all bits of (0) to i (2) and i (4) to i (m + 1), or may be written only to the memory element i (m + 1). Next, in step 135, it is determined whether or not the address is the maximum value. If it is determined that the address is not the maximum value, the address is incremented by 1 in step 136 and the process returns to step 132. Step 13
At 5, when the address reaches the maximum value of the memory element i, the processing is terminated, and information that the memory element i (3) has a defect is stored in the programmable device control circuit 5. By these operations, the memory element i (3) becomes invalid and the memory element i (m + 1) becomes valid.

【0018】なお、上記の例では、プログラマブルデバ
イス制御回路5内にメモリ素子i(3)が不良であると
いう情報を蓄えておくとしたが、この不良メモリ記憶処
理を効率よく行うために以下のようにする。まず、シス
テムの最初の稼働時には、メモリ素子iは、番号の低い
もの(i(0)〜i(m))が使用されていることと
し、その使用されている番号の最大値p(この場合に
は、p=m)をプログラマブルデバイス制御回路5内の
有効データナンバーレジスタ(図示せず)へ格納してお
く。そして、不良発生時には、メモリ素子i(p+1)
を新たに有効とするため、プログラマブルデバイス4を
用いてメモリ素子i(p+1)をシステムに接続し、有
効データナンバーレジスタの値pを1増加させることに
する。この場合、メモリ素子i(1)〜i(p)は有効
であるか不良があるかどちらかであり、i(p+1)〜
i(max)は、全て無効(冗長)であるが、不良では
ないことになる。
In the above example, the information that the memory device i (3) is defective is stored in the programmable device control circuit 5, but in order to efficiently perform this defective memory storage processing, To do so. First, when the system is operated for the first time, it is assumed that the memory element i having a low number (i (0) to i (m)) is used, and the maximum value p (in this case) of the numbers used. Then, p = m) is stored in a valid data number register (not shown) in the programmable device control circuit 5. When a defect occurs, the memory element i (p + 1)
In order to newly make effective, the memory device i (p + 1) is connected to the system using the programmable device 4, and the value p of the effective data number register is incremented by 1. In this case, the memory elements i (1) to i (p) are either valid or defective, and i (p + 1) to
i (max) is all invalid (redundant), but it is not defective.

【0019】図1に示す実施例では、メモリ部6のメモ
リ素子i(0)〜i(m)全体を一つのブロックとして
冗長ビット(メモリ素子i(m+1)〜i(m+x))
を加え、メモリデータラインの入替えを行った。しか
し、これでは1つのメモリセルの不良に対し、場合によ
っては全アドレスエリアを無効とし、データの入替えを
行わなければならない。このため、データ入替え時の転
送時間が非常にかかり、またメモリ資源の有効活用とい
う意味で効率が悪い。そこで、メモリ部6を複数のブロ
ックに分割し、それぞれの分割されたメモリのブロック
ごとに、前記図1に示す回路を全部あるいは一部共用で
持たせることにより、不良メモリセルが検出された場合
メモリのアドレス領域を部分的に、前記した実施例と同
様に、不良データビットライン(不良メモリ)の入替え
を行うようにしても良い。
In the embodiment shown in FIG. 1, redundant bits (memory elements i (m + 1) to i (m + x)) of the entire memory elements i (0) to i (m) of the memory section 6 are regarded as one block.
Then, the memory data line was replaced. However, in this case, when one memory cell is defective, it is necessary to invalidate the entire address area and replace the data. For this reason, it takes a very long time to transfer data, and it is inefficient in terms of effective utilization of memory resources. Therefore, in the case where a defective memory cell is detected by dividing the memory unit 6 into a plurality of blocks, and providing each of the divided memory blocks with the circuit shown in FIG. 1 in whole or in part. A defective data bit line (defective memory) may be partially replaced in the address area of the memory as in the above-described embodiment.

【0020】なお、不良データビット(不良メモリ)が
発見された場合には、上記手順によりメモリデータライ
ンの入替えが行われる。この入替えには、通常かなりの
処理時間を要するため、CPUの処理を止めなければな
らない。このため、図1のプログラマブルデバイス制御
回路5にCPUへの割込み信号発行論理を持たせ、不良
データビット(不良メモリ)が発見され、メモリデータ
ラインの入替えを行う場合には、この割込み信号を発行
して一時通常のCPUの処理を停止させ、メモリデータ
ラインの入替えを行う機能を持たせても良い。
When a defective data bit (defective memory) is found, the memory data line is replaced by the above procedure. Since this replacement usually requires a considerable processing time, the CPU processing must be stopped. Therefore, when the programmable device control circuit 5 of FIG. 1 is provided with an interrupt signal issuing logic to the CPU to detect a defective data bit (defective memory) and replace the memory data line, this interrupt signal is issued. Then, a normal CPU process may be temporarily stopped and the memory data line may be replaced.

【0021】以上の説明から明らかなように、入力デー
タのECCチェクと1ビットエラー訂正が可能であり、
出力データのECCチェックが可能な制御装置とメモリ
部とからなるメモリ装置において、メモリ装置の入出力
データバス幅と同数のカウンタを設け、該入出力データ
バスと該カウンタを各ビット(各メモリ素子)毎に対応
させ、メモリ部からのデータ出力に際して該メモリ装置
がECC1ビットエラーを検出した時、対応するカウン
タを1だけ加算し、ECC1ビットエラーの発生回数を
各メモリデータの入出力ビット毎に記録できるようにし
たことにより、メモリ部のどのメモリ素子がアクセス毎
にECCコードで訂正されて処理時間の増加による性能
低下の原因となっているか、またはどのビット(メモリ
素子)が異常であるかを知ることができる。
As is clear from the above description, ECC check of input data and 1-bit error correction are possible,
In a memory device including a control device capable of performing an ECC check of output data and a memory unit, a counter having the same number as the input / output data bus width of the memory device is provided, and the input / output data bus and the counter are provided for each bit (each memory element). ), When the memory device detects an ECC 1-bit error when outputting data from the memory unit, the corresponding counter is incremented by 1, and the number of occurrences of the ECC 1-bit error is calculated for each input / output bit of each memory data. By making it possible to record, which memory element of the memory unit is corrected by the ECC code for each access and causes the performance deterioration due to the increase in processing time, or which bit (memory element) is abnormal You can know.

【0022】そして、上記カウンタがある決められた一
定時間内に一定値に達した場合、対応したメモリ素子に
異常があると認識し、プログラマブルデバイスを書き替
えて、異常があるメモリのメモリデータ信号ラインと該
メモリ装置の入出力データバスとの接続を切離し、代わ
りにメモリの冗長ビットと該メモリ制御装置の入出力デ
ータバスを接続する。この時切り離されるメモリ素子の
記憶内容をECCコードを用いて訂正した上、新しく接
続されたメモリ素子に格納するという作業を行うコント
ローラ又はソフトウエアを設けることにより、メモリ部
のエラーに対するフォールトトレラントを向上させるこ
とができる。
When the counter reaches a certain value within a certain fixed time, it is recognized that the corresponding memory element has an abnormality, the programmable device is rewritten, and the memory data signal of the memory having the abnormality is detected. The line is disconnected from the input / output data bus of the memory device, and instead the redundant bit of the memory is connected to the input / output data bus of the memory control device. The fault tolerant against the error of the memory part is improved by providing the controller or software that corrects the stored contents of the memory device disconnected at this time using the ECC code and then stores it in the newly connected memory device. Can be made.

【0023】以上の説明から明らかなように、上記実施
例によれば、次の効果が得られる。すなわち、従来技術
では、メモリへの書き込み又はメモリからの読み出しを
2ビットエラー検出、1ビットエラー訂正可能なECC
エラーチェックコードを用いて行うシステムにおいて、
このメモリのあるビットが破壊された場合、そのビット
をアクセスする時常にECC1ビットエラーとなり、こ
れを訂正するための時間が毎アクセスごとに必要にな
り、システムの性能低下になっていた。また、さらにも
う一ビット同じアドレスのデータエリアで破壊された場
合、ECC2ビットエラーとなりシステムダウンになっ
ていた。これに対して、上記実施例では、ECC1ビッ
トエラーが頻発するデータビットラインを発見し、該エ
ラー頻発メモリデータラインを無効とし、新たに別のメ
モリデータラインを代わりに使用することにより、シス
テムのフォルトトレラントを向上させる事に有効であ
り、性能低下やシステムダウンを防ぐことができ、信頼
性向上に役立つ。
As is clear from the above description, according to the above embodiment, the following effects can be obtained. That is, in the prior art, the ECC capable of detecting a 2-bit error and a 1-bit error correction for writing to or reading from the memory
In the system that uses error check code,
When a certain bit of this memory is destroyed, an ECC 1-bit error always occurs when accessing that bit, and a time for correcting this error is required for each access, resulting in system performance degradation. Further, if the data area is destroyed by another bit at the same address, an ECC 2-bit error occurs and the system goes down. On the other hand, in the above-described embodiment, the data bit line in which the ECC 1-bit error frequently occurs is detected, the error frequent memory data line is invalidated, and another memory data line is newly used instead, so that the system It is effective in improving fault tolerance, can prevent performance degradation and system down, and helps improve reliability.

【0024】[0024]

【発明の効果】本発明によれば、メモリ部においてある
メモリ素子が破壊されてもシステムの性能低下に至ら
ず、かつメモリ部内の同一アドレスにおいて2ビットの
破壊が生じてもシステムダウンに至らないように、シス
テムのフォルトトレラントを向上させる事ができ、性能
低下やシステムダウンを防ぐことができ、信頼性向上に
役立つという効果を有する。
According to the present invention, even if a memory element in the memory section is destroyed, the performance of the system is not degraded, and even if two bits are destroyed at the same address in the memory section, the system does not go down. As described above, it is possible to improve the fault tolerance of the system, prevent performance deterioration and system down, and have an effect of improving reliability.

【図面の簡単な説明】[Brief description of drawings]

【図1】図1は、本発明の一実施例を示すブロック図。FIG. 1 is a block diagram showing an embodiment of the present invention.

【図2】図2は、図1に示す実施例の動作を示すフロー
チャート。
FIG. 2 is a flowchart showing the operation of the embodiment shown in FIG.

【図3】図3は、図2に示すデータの入替え処理の一例
を示すフローチャート。
FIG. 3 is a flowchart showing an example of a data replacement process shown in FIG.

【図4】図4は、図2に示すデータの入替え処理の一例
を示すフローチャート。
FIG. 4 is a flowchart showing an example of a data replacement process shown in FIG.

【符号の説明】[Explanation of symbols]

1…メモリ装置、2…メモリコントローラ、3…カウン
タ部、4…プログラマブルデバイス、5…プログラマブ
ルデバイス制御回路、6…メモリ部、b(0)〜b
(n)…入出力データバス、d(0)〜d(m)…EC
C1ビットエラーカウンタ、e(0)〜e(m)…デー
タバス、g(0)〜g(m+x)…メモリデータ信号ラ
イン、i(0)〜i(m+x)…メモリ素子。
DESCRIPTION OF SYMBOLS 1 ... Memory device, 2 ... Memory controller, 3 ... Counter part, 4 ... Programmable device, 5 ... Programmable device control circuit, 6 ... Memory part, b (0) -b
(N) ... Input / output data bus, d (0) to d (m) ... EC
C1 bit error counter, e (0) to e (m) ... Data bus, g (0) to g (m + x) ... Memory data signal line, i (0) to i (m + x) ... Memory device.

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】 m個のメモリ素子から成るメモリ部と、
メモリ部の制御装置とを備えて構成されるメモリ装置に
おいて、 上記メモリ部は、全てのメモリアドレスについて、上記
m個のメモリ素子に加えて、x個(xは1以上の整数)
の冗長ビット用のメモリ素子を備え、 さらに、上記制御装置は、外部装置に接続されている入
出力データバスと上記メモリ部のメモリデータ信号ライ
ンとの間に設けられ、かつ上記入出力データバスと上記
メモリ部のメモリデータ信号ラインとの接続を変更可能
な手段を備えたことを特徴とするメモリ装置。
1. A memory section comprising m memory elements,
In a memory device including a memory unit control device, the memory unit has x (where x is an integer of 1 or more) for all memory addresses, in addition to the m memory elements.
The redundant bit memory element is provided, and the control device is provided between an input / output data bus connected to an external device and a memory data signal line of the memory section, and the input / output data bus is provided. And a means capable of changing the connection between the memory section and the memory data signal line of the memory section.
JP7172288A 1995-07-07 1995-07-07 Memory unit Pending JPH0922387A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7172288A JPH0922387A (en) 1995-07-07 1995-07-07 Memory unit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7172288A JPH0922387A (en) 1995-07-07 1995-07-07 Memory unit

Publications (1)

Publication Number Publication Date
JPH0922387A true JPH0922387A (en) 1997-01-21

Family

ID=15939158

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7172288A Pending JPH0922387A (en) 1995-07-07 1995-07-07 Memory unit

Country Status (1)

Country Link
JP (1) JPH0922387A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100575657B1 (en) * 2004-10-28 2006-05-03 엘지전자 주식회사 Method for reading nand flash
US8179718B2 (en) 2008-07-04 2012-05-15 Samsung Electronics Co., Ltd. Memory device and memory programming method
WO2013005355A1 (en) * 2011-07-01 2013-01-10 パナソニック株式会社 Memory access control device and production method

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100575657B1 (en) * 2004-10-28 2006-05-03 엘지전자 주식회사 Method for reading nand flash
US8179718B2 (en) 2008-07-04 2012-05-15 Samsung Electronics Co., Ltd. Memory device and memory programming method
WO2013005355A1 (en) * 2011-07-01 2013-01-10 パナソニック株式会社 Memory access control device and production method
US8824236B2 (en) 2011-07-01 2014-09-02 Panasonic Corporation Memory access control device and manufacturing method

Similar Documents

Publication Publication Date Title
US7328365B2 (en) System and method for providing error check and correction in memory systems
US7797609B2 (en) Apparatus and method for merging data blocks with error correction code protection
US5267242A (en) Method and apparatus for substituting spare memory chip for malfunctioning memory chip with scrubbing
US8468422B2 (en) Prediction and prevention of uncorrectable memory errors
US8566672B2 (en) Selective checkbit modification for error correction
JPH07191915A (en) Computer system, memory card and its operating method
JPH03248251A (en) Information processor
KR20020029925A (en) Methods and apparatus for correcting soft errors in digital data
JP3270367B2 (en) Semiconductor storage device
US7246257B2 (en) Computer system and memory control method thereof
EP3882774B1 (en) Data processing device
JPH0922387A (en) Memory unit
JP3139738B2 (en) Logic circuit
JPH0316655B2 (en)
JP2001167002A (en) Method and device for controlling write/read for electronic disk device
JPS6356751A (en) Memory patrol control system
JP2993099B2 (en) Redundant memory device
JPH06214890A (en) Computer
JPH04237351A (en) Memory rewriting system
JPS63271555A (en) Storage control system
JPH02143352A (en) Memory error detection and correction system
JPH0520215A (en) Information processor
JPS60110047A (en) Error correction system
JPH06139155A (en) Method for diagnosing storage device
JPH0359740A (en) Memory fault detection system