JPH08203292A - 不揮発性メモリ - Google Patents

不揮発性メモリ

Info

Publication number
JPH08203292A
JPH08203292A JP1383595A JP1383595A JPH08203292A JP H08203292 A JPH08203292 A JP H08203292A JP 1383595 A JP1383595 A JP 1383595A JP 1383595 A JP1383595 A JP 1383595A JP H08203292 A JPH08203292 A JP H08203292A
Authority
JP
Japan
Prior art keywords
data
memory
memory unit
error
block
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.)
Withdrawn
Application number
JP1383595A
Other languages
English (en)
Inventor
Toshiyuki Wakutsu
俊幸 和久津
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.)
Fujifilm Holdings Corp
Fujifilm Microdevices Co Ltd
Original Assignee
Fujifilm Microdevices Co Ltd
Fuji Photo Film Co 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 Fujifilm Microdevices Co Ltd, Fuji Photo Film Co Ltd filed Critical Fujifilm Microdevices Co Ltd
Priority to JP1383595A priority Critical patent/JPH08203292A/ja
Publication of JPH08203292A publication Critical patent/JPH08203292A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】 【目的】 記憶データの信頼性が高い不揮発性メモリを
提供することを目的とする。 【構成】 アクセス用データ(4)を記憶することがで
きる複数のメモリ単位を有するユーザメモリ単位(2)
と該ユーザメモリ単位内のメモリ単位に置き換えて使用
するための予備のメモリ単位を有するリザーブメモリ単
位(3)を有するメモリ単位アレイ(1)と、エラー検
出用データ(5)を記憶するためのエラー検出用メモリ
と、外部から供給されるアクセス用データを基にエラー
検出用データ(5)を生成し、該アクセス用データをメ
モリ単位アレイに記憶し、該エラー検出用データをエラ
ー検出用メモリに記憶するための手段と、メモリ単位に
記憶されているアクセス用データにエラーが含まれてい
るときにはメモリ単位の置き換えを行う手段(7)とを
有する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は不揮発性メモリに関し、
特に記憶データの信頼性を高めることのできる不揮発性
メモリに関する。
【0002】
【従来の技術】図5は、従来技術による不揮発性メモリ
の構成を示す。この不揮発性メモリは、記憶されたデー
タのエラー検出またはエラー訂正が可能である。以下、
エラー検出または訂正のための処理をECCと呼ぶ。E
CCには、例えばリードソロモン符号を用いたものがあ
る。
【0003】フラッシュメモリ41は、不揮発性メモリ
であり、複数のブロックから構成される。ブロックと
は、消去を行う最小単位のメモリブロックである。な
お、ブロックは、書き込みまたは読み出しを行う最小単
位でもある場合について以下説明する。各ブロックは、
生データ4とECCデータ5を記憶するための領域を有
する。例えば、生データ4は、256バイトの大きさで
あり、ECCデータ5は8バイトの大きさである。
【0004】生データ4は、エラーを含んでいなけれ
ば、書き込みデータと同じである。ECCデータ5は、
生データ4に含まれるエラーを検出または訂正するため
のデータである。生データ4がエラーを含む場合、生デ
ータ4をECCデータ5で訂正したデータが読み出され
る。この場合、生データ4は書き込みデータおよび読み
出しデータと異なるものとなる。
【0005】フラッシュメモリ41に書き込みを行う際
の動作を説明する。書き込みを行うためのデータは、外
部から制御部47へ、書き込み命令(制御信号)および
書き込みアドレスと共に供給される。書き込みデータ
は、1ブロック分のデータであり、例えば256バイト
である。
【0006】制御部47は、供給された256バイトの
書き込みデータ(生データ4)を基に、ECC(例え
ば、リードソロモン符号)の演算を行い、8バイトのE
CCデータ5を生成する。そして、書き込みデータ(生
データ4)とECCデータ5をフラッシュメモリ41に
書き込む。書き込みデータは、生データ4として書き込
まれる。書き込み時にエラーが発生すると、生データ4
はエラーを含むことになり、書き込みデータと生データ
4は等しくなくなる。書き込まれる場所は、外部から供
給される書き込みアドレスに対応するブロックである。
【0007】以上により、フラッシュメモリ41の特定
ブロックに生データ4とECCデータ5を書き込むこと
ができる。次に、フラッシュメモリ41から読み出しを
行う際の動作を説明する。
【0008】読み出しを行う際には、まず、外部から制
御部47へ、読み出し命令(制御信号)および読み出し
アドレスが供給される。制御部47は、外部から供給さ
れる読み出しアドレスに対応するフラッシュメモリ41
内のブロックから、生データ4とECCデータ5を読み
出す。
【0009】そして、エラー検出またはエラー訂正の処
理を行う。まず、ECCデータ5を基にして、生データ
4にエラーが含まれているか否かの検出を行う。制御部
47は、生データ4にエラーが含まれていなければ、生
データ4をそのまま読み出しデータとして外部へ出力す
る。一方、生データ4にエラーが含まれているときに
は、ECCデータ5を基に生データ4のエラー訂正を行
って、外部へ読み出しデータとして出力する。
【0010】
【発明が解決しようとする課題】一般に、フラッシュメ
モリは、メモリセルの構造上の理由から、書き換え用の
アクセス回数が有限回に制限されており、使用するにつ
れて劣化して行く。メモリセルは、コントロールゲート
とフローティングゲートを有し、絶縁膜を貫通するトン
ネル電流を用いてフローティングゲートに電荷を注入し
たり、排出することにより、“0”または“1”のデー
タを記憶させることができる。例えば、フローティング
ゲートに電荷を注入する際には、コントロールゲートに
20Vの電圧を印加する。
【0011】フローティングゲートに電荷を注入した
り、排出したりする処理を繰り返すと、次第にフローテ
ィングゲート周辺にある絶縁膜が劣化する。絶縁膜が劣
化すると、その部分から電荷のリークが生じ、データエ
ラーの原因になる。
【0012】絶縁膜に劣化が生ずると、そのメモリセル
は、エラー発生率が高くなり、エラーの再現性を示す。
また、製造時に、絶縁膜が必要以上に薄く仕上がってし
まったときにも、そのメモリセルは、エラー発生率が高
くなる。このようなメモリセルは、使用を避けることが
望ましい。
【0013】以上のエラーは、機能の劣化した特定のメ
モリセルから発生する。また、このようなメモリセルと
同じ論理ライン上の別のメモリセルからも、エラーが発
生しやすくなる。その理由を次に説明する。
【0014】論理ラインとは、書き込みまたは読み出し
を行う最小単位を示すブロック内のメモリセルを共通に
結ぶワードラインである。論理ラインには、ブロック内
の複数のメモリセルが接続される。それらのメモリセル
には、1つの長い共通のコントロールゲートが設けられ
ている。フローティングゲートは、各メモリセルに別々
に設けられている。
【0015】ここで、ある論理ラインに接続されている
メモリセルのうちの1つが、前述のように劣化したとす
る。この論理ライン上において、劣化メモリセルとは別
のメモリセルに書き込みを行う際には、コントロールゲ
ートに20Vの電圧を印加する。コントロールゲート
は、論理ライン上のメモリセルの全てが共用する。コン
トロールゲートに20Vが印加され、劣化メモリセルの
部分でリークが生じると、コントロールゲートの電圧が
例えば10〜15Vに低下してしまう。その結果、同一
論理ライン上において劣化メモリセル以外のメモリセル
にも正常な書き込みを行えない確率が高くなる。
【0016】以上の理由により、ある論理ライン上のメ
モリセルが劣化してしまうと、同一論理ライン上の別の
メモリセルにもエラーが発生しやすくなる。つまり、フ
ラッシュメモリ47のあるブロック内の論理ラインに1
ビットでもエラーが発生すると、それ以後は同一論理ラ
イン上の他のビットにもエラーが発生しやすくなる。こ
のような場合は、ブロック全体が劣化したと考え、当該
ブロックの使用を禁止することが望ましい。
【0017】エラーの検出または訂正を行うには、リー
ドソロモン符号等のECCを用いる。ECCは、例えば
1ビット訂正・2ビット検出の能力を有する。つまり、
ブロック内の生データ4が1ビットのエラーのみを含む
ときには、エラー検出とエラー訂正の両方が可能であ
り、正しいデータを読み出すことができる。また、生デ
ータ4が2ビットのエラーを含むときには、エラー検出
のみが可能であり、エラー訂正が不可能であるので、正
しいデータを読み出すことができない。
【0018】ECCは、一般的に、エラーのビット数が
少なければ正しいデータに訂正することが可能である
が、エラーのビット数が多くなると正しいデータに訂正
することができなくなってしまう。
【0019】同一論理ライン上において、メモリセル劣
化の初期段階では、エラーが発生するビット数が少ない
ために、正しいデータを読み出すことができる。しか
し、メモリセルの劣化がさらに進むと、エラーが生じる
ビット数が増えて、ECCの能力を越えてしまう。こう
なると、エラー訂正が行えず、正しいデータを読み出す
ことができない。
【0020】本発明の目的は、記憶データの信頼性が高
い不揮発性メモリを提供することである。
【0021】
【課題を解決するための手段】本発明の不揮発性メモリ
は、アクセス用データを記憶することができる複数のメ
モリ単位を有するユーザメモリ単位と該ユーザメモリ単
位内のメモリ単位に置き換えて使用するための予備のメ
モリ単位を有するリザーブメモリ単位を有するメモリ単
位アレイと、メモリ単位アレイ内のメモリ単位に対応し
て設けられ、各メモリ単位に記憶されるアクセス用デー
タのエラー検出を行うためのエラー検出用データを記憶
するためのエラー検出用メモリと、外部から供給される
アクセス用データを基にエラー検出用データを生成し、
該アクセス用データをメモリ単位アレイに記憶し、該エ
ラー検出用データをエラー検出用メモリに記憶するため
の書き込み手段と、エラー検出用メモリに記憶されてい
るエラー検出用データを基に、メモリ単位に記憶されて
いるアクセス用データにエラーが含まれているか否かを
検出し、エラー検出に基づいてメモリ単位アレイ内のメ
モリ単位を置き換える置き換え手段とを有する。
【0022】
【作用】メモリ単位に記憶されるアクセス用データから
エラーが検出されると、それに応じてメモリ単位の置き
換えを行うので、メモリ単位の劣化が進む前に当該メモ
リ単位の使用を取り止めることができる。
【0023】
【実施例】図1は、本発明の実施例による不揮発性メモ
リの構成を示す。フラッシュメモリ1は、不揮発性のメ
モリであり、複数のブロックから構成される。ブロック
とは、消去を行う最小単位のメモリブロックである。な
お、ブロックは、書き込みまたは読み出しを行う最小単
位でもあり、生データ4とECCデータ5の他にフラグ
6を記憶する。例えば、生データ4は256バイト、E
CCデータ5は8バイト、フラグ6は1ビットの大きさ
である。
【0024】生データ4は、書き込みデータまたは読み
出しデータの生のデータである。ECCデータ5は、生
データ4に含まれるエラーの検出または訂正を行うため
のデータであり、例えばリードソロモン符号等のECC
演算により生成される。
【0025】フラグ6は、ブロック内のメモリセルが劣
化したことを表すフラグである。フラグ6が“1”であ
るときには、劣化していないこと表し、フラグ6が
“0”であるときには、劣化していることを表す。フラ
ッシュメモリ1の製造時には、全てのメモリセルが消去
状態に初期化される。消去状態では、全データが“1”
である。フラグ6も、同様に“1”に初期化される。
【0026】フラッシュメモリ1を構成する複数のブロ
ックは、ユーザブロック2とリザーブブロック3に分け
られる。ユーザブロック2は、通常ユーザがデータの書
き込みまたは読み出しを行うことができるブロックであ
る。リザーブブロック3は、使用中のブロック内のメモ
リセルが劣化したときに、その劣化したブロックに代え
て使用するための予備のブロックである。
【0027】ここでは、ユーザブロック2とリザーブブ
ロック3を同一のフラッシュメモリデバイス内に設ける
場合を示したが、異なるフラッシュメモリデバイスに分
けて設けるようにしてもよい。
【0028】まず、フラッシュメモリ1に書き込みを行
う際の動作を説明する。書き込みデータは、外部から制
御部7へ、書き込み命令(制御信号)および書き込みア
ドレスと共に供給される。書き込みデータは、1ブロッ
ク分のデータであり、例えば256バイトである。
【0029】制御部7は、外部から供給された書き込み
データ(生データ4)を基に、例えばリードソロモン符
号等のECC演算を行い、ECCデータ5を生成する。
そして、書き込みデータ(生データ4)とECCデータ
5をフラッシュメモリ1に書き込む。書き込みデータ
は、生データ4として書き込まれる。書き込まれる場所
は、外部から供給される書き込みアドレスに対応するブ
ロックである。
【0030】以上により、フラッシュメモリ1の所望の
ブロックに生データ4とECCデータ5を書き込むこと
ができる。初期時には、フラグ6は“1”であり、メモ
リセルは劣化していないので、初回の書き込み時には、
フラグ6に関する処理は行わなくてよい。
【0031】次に、フラッシュメモリ1から読み出しを
行う際の動作を説明する。読み出しを行う際には、外部
から制御部7へ、読み出し命令(制御信号)および読み
出しアドレスが供給される。制御部7は、外部から供給
される読み出しアドレスに対応するフラッシュメモリ1
内のブロックから、生データ4とECCデータ5を読み
出す。
【0032】そして、エラー検出またはエラー訂正を行
うために、ECCデータ5を基にして、生データ4にエ
ラーが含まれているか否かの検出を行う。制御部7は、
生データ4にエラーが含まれていなければ、生データ4
を読み出しデータとして外部へそのまま出力する。
【0033】一方、生データ4にエラーが含まれている
ときには、ECCデータ5を基に生データ4のエラー訂
正を行って、外部へ読み出しデータとして出力する。生
データ4にエラーが含まれていると判断されたときに
は、読み出したブロック内のメモリセルに劣化が生じた
ものと判断して、フラグ6を“1”から“0”に変更し
て書き込む。メモリセルが劣化したときの実質的な処理
は、次回にそのブロックに書き込みを行う際に行われ
る。ここでは、フラグ6の変更のみを行う。
【0034】フラグ6が初期時から“1”のままであれ
ば、前述と同様に通常の書き込み処理を行う。フラグ6
が“1”から“0”に変更された後の書き込み処理を次
に説明する。
【0035】外部から指示された書き込みアドレスに対
応するブロックのフラグ6が“0”であるときには、制
御部7は、当該ブロック内のメモリセルが劣化したと判
断して、当該ブロックをリザーブブロック3に置き換え
る。
【0036】次に、ブロックの置き換え方法について説
明する。ブロック置換テーブル8は、不揮発性のメモリ
であり、論理アドレスから物理アドレスへの変換を行う
ためのテーブルであり、論理アドレスと物理アドレスが
対応付けられている。制御部7は、外部から論理アドレ
スが供給されると、ブロック置換テーブル8を用いて、
論理アドレスから物理アドレスへの変換を行う。物理ア
ドレスにより、フラッシュメモリ1内のブロックが特定
される。
【0037】初期時において、ブロック置換テーブル8
内の物理アドレスは、全てユーザブロック2の物理アド
レスを指している。その後、ブロックの置き換えが指示
されると、対応するブロックの物理アドレスがリザーブ
ブロック3の物理アドレスに書き換えられる。物理アド
レスが書き換えられた後は、リザーブブロック3のブロ
ックに対して書き込みまたは読み出しが行われる。
【0038】次に、フラッシュメモリへの読み出しおよ
び書き込みの処理手順をフローチャートを参照しながら
説明する。図2は、フラッシュメモリからデータを読み
出す際の処理を示すフローチャートである。
【0039】ステップS1では、外部から供給される読
み出しアドレスに対応するブロックから生データ4、E
CCデータ5、フラグ6を読み出す。ステップS2で
は、ECCデータ5を用いて、生データ4にエラーが含
まれているか否かをチェックする(エラー検出)。エラ
ーが含まれているときには、ECCデータ5を用いて、
生データ4のエラー訂正を行い、正しいデータに復元す
る。生データ4にエラーが含まれていないときには、エ
ラー訂正を行う必要はない。
【0040】ステップS3では、正しいデータ(生デー
タ4または訂正されたデータ)を外部へ読み出しデータ
として出力する。ステップS4では、ステップS2にお
いてエラーが検出されたか否かをチェックする。エラー
が検出されていないときには、読み出したブロック内の
メモリセルが劣化していないと判断して、そのまま処理
を終了する。一方、エラーが検出されたときには、ブロ
ック内のメモリセルが劣化し始めたと判断して、ステッ
プS5へ進む。
【0041】ステップS5では、ステップS1で読み出
されたフラグ6の値をチェックする。フラグ6の初期値
は“1”である。フラグ6が“1”であるときには、ス
テップS6へ進み、フラグ値を“1”から“0”に変更
して、フラッシュメモリ1に書き込む。フラグ値“0”
は、ブロック内のメモリセルが劣化したことを示す。一
方、読み出したフラグ6が既に“0”であるときには、
フラグ値を変更する必要がない。以上のフラグ6の処理
を行って、読み出し全体の処理は終了する。
【0042】なお、ステップS4では、生データ4から
1ビットでもエラーが検出されれば、フラグ6を変更す
るものとした。しかし、エラーの発生は、メモリセルの
劣化以外に、偶発的に発生するものもある。偶発的なエ
ラーは、メモリセルの劣化の場合とは異なり再現性がな
いので、フラグの変更(ブロックの置き換え)を行わな
くてもよい。そこで、2ビット訂正・3ビット検出以上
の能力を有するECCを用いて、ステップS4では、生
データ4に2ビット以上のエラーが検出されるときの
み、フラグ6を変更するようにしてもよい。
【0043】図3は、フラッシュメモリにデータを書き
込む際の処理を示すフローチャートである。ステップS
11では、外部から供給される書き込みアドレスに対応
するブロックのフラグ6を読み出す。
【0044】ステップS12では、読み出したフラグ6
の値をチェックする。フラグ6が“1”であるときに
は、これから書き込むべきブロック内のメモリセルが未
だ劣化していないことを示すので、ブロックの置き換え
を行わずに、ステップS15へ進む。一方、フラグ6が
“0”であるときには、書き込むべきブロック内のメモ
リセルが劣化していることを示すので、ステップS13
へ進む。
【0045】ステップS13では、ブロックの置き換え
を行う。ブロックの置き換えは、ブロック置換テーブル
8(図1)の物理アドレスをリザーブブロック3の物理
アドレスに書き換えることにより行う。
【0046】ステップS14では、ブロックの置き換え
に必要なその他の情報を登録する。例えば、置き換えら
れた元のブロックは使用不可能である旨の情報、または
置き換え先のブロック(リザーブブロック3)は現在使
用中である旨の情報等を登録する。以後、ブロックの置
き換えを行う際には、未使用のリザーブブロック3の中
のいずれか1つに置き換える。以上のブロック置き換え
を行った後に、ステップS15へ進む。
【0047】ステップS15では、外部から供給される
書き込みデータを基にして、リードソロモン符号等のE
CC演算を行い、ECCデータ5を生成する。ステップ
S16では、フラッシュメモリの性質上の理由から一度
ブロックのデータを消去した後に、外部から供給される
書き込みアドレスに対応するブロックに生データ4、E
CCデータ5、フラグ6の書き込みを行う。
【0048】外部から供給される論理アドレスは、ブロ
ック置換テーブル8により物理アドレスに変換されて、
書き込みブロックを特定する。この際、ステップS13
において、ブロックの置き換えが行われているときに
は、置き換え後の新しいブロックに書き込みが行われ
る。
【0049】生データ4は、外部から供給される書き込
みデータであり、ECCデータ5は前ステップで生成さ
れたデータである。フラグ6は、ブロック置き換え(ス
テップS13)が行われたか否かを問わずに“1”であ
る。ブロックの置き換えが行われていないときには、フ
ラグ6が“1”であるので、変更せずに“1”のまま書
き込めばよい。また、ブロックの置き換えが行われたと
きには、フラグ6を初期値“1”にすればよいので、や
はり“1”を書き込めばよい。以上により、書き込み全
体の処理は終了する。
【0050】なお、読み出し時にエラーが検出される
と、フラグ6は“1”から“0”に変更され、次回その
ブロックに書き込みを行う際にブロックの置き換えを行
う例を以上示したが、読み出し時にエラーが検出された
ときには、次回の書き込み時まで待たず直ちにブロック
を置き換えるようにしてもよい。その際には、ブロック
置換テーブル8の物理アドレスを書き換える他に、元の
ブロックのデータを新しいブロックに全てコピーする必
要がある。このようにしたときには、フラグ6は必ずし
も必要でない。
【0051】図4は、本発明の他の実施例による不揮発
性メモリの構成を示す。先の実施例では、フラッシュメ
モリに生データ4、ECCデータ5、フラグ6を記憶さ
せる場合について説明した。しかし、汎用的なフラッシ
ュメモリは、例えば1ブロックが256バイトの生デー
タ4のみを記憶する構成を有する。そこで、汎用的なフ
ラッシュメモリ21を用いた場合について説明する。
【0052】フラッシュメモリ21は、複数のブロック
から構成され、各ブロックは、例えば256バイトの生
データ4を記憶することができる。フラッシュメモリ2
1を構成する複数ブロックは、ユーザブロック22とリ
ザーブブロック23に分けられる。
【0053】メモリ29は、不揮発性のメモリであり、
フラッシュメモリ21の各ブロックに対応するECCデ
ータ5とフラグ6を記憶するための領域を有する。フラ
ッシュメモリ21のユーザブロック22とリザーブブロ
ック23の全てのブロックに対応するECCデータ5と
フラグ6がメモリ29に記憶される。
【0054】初回の書き込みの際、制御部27は、外部
から供給される書き込みデータを基に、ECCデータ5
を生成する。そして、書き込みデータを生データ4とし
てフラッシュメモリ21に書き込み、ECCデータ5を
メモリ29に書き込む。ブロック置換テーブル28は、
論理アドレスから物理アドレスへの変換を行う。
【0055】読み出しを行う際には、制御部27は、フ
ラッシュメモリ21から生データ4を、メモリ29から
ECCデータ5とフラグ6を読み出し、エラー検出およ
びエラー訂正を行う。エラーが検出されたときには、フ
ラグ6を“1”から“0”に変更してメモリ29に書き
込む。
【0056】その後、書き込みを行う際には、メモリ2
9内の書き込みブロックに対応するフラグ6をチェック
する。フラグ6が“0”のときには、ブロック置換テー
ブル28を書き換えて、ブロックの置き換えを行う。
【0057】以上のように、フラッシュメモリ21に生
データ4のみを記憶させるときには、他のメモリ29に
ECCデータ5およびフラグ6を記憶させることによ
り、上述の実施例同様の機能を実現することができる。
この他、フラッシュメモリに生データ4とECCデータ
5のみを記憶させ、他のメモリにフラグ6を記憶させる
等の任意の組み合わせを行うこともできる。
【0058】以上の実施例によれば、ブロック内にエラ
ーが検出されたときにそのブロックの置き換えを行うの
で、ECCの能力(エラー訂正能力)を越える多数ビッ
トのエラーの発生を防ぐことができる。例えば、メモリ
セル劣化の初期段階にブロックの置き換えを行うことに
より、多数ビットのエラーの発生を防げる。例えエラー
が発生したとしても少数ビットであれば、ECCにより
エラー訂正が可能であるので正しいデータを読み出すこ
とができ、フラッシュメモリの記憶データの信頼性を高
めることができる。
【0059】なお、エラーには再現性のあるものとない
ものがある。再現性がないものについては、同一ブロッ
ク内で多数のエラービットが発生しにくく、ブロックの
置き換えを行わなくてもよい。本実施例では、フラグ6
が“1”または“0”を表すものとしたが、フラグ6の
代わりにカウンタレジスタを用いて、同一ブロック内で
連続してエラーが発生した回数をカウントし、記憶させ
るようにしてもよい。所定の回数だけ連続してエラーが
発生したときには、再現性のあるエラーであると判断し
て、そのときのみブロックの置き換えをすればよい。こ
れにより、再現性のないエラーが発生した際の無駄なブ
ロック置き換えがなくなる。
【0060】また、ブロックからエラーが検出されたと
きにブロック置き換えを行うので、リードソロモン符号
等のECCの他に、エラー訂正機能を有さず、エラー検
出機能のみを有する符号方法により、ECCデータを生
成するようにしてもよい。
【0061】さらに、本実施例では、読み出しまたは書
き込みのためのメモリ単位と、消去のためのメモリ単位
が同じ場合について説明したが、必ずしも同じである必
要はない。例えば、消去単位は、読み書き単位の8つ分
であってもよい。その場合、メモリの置き換えは、一般
的に消去単位のブロックで行われる。
【0062】本実施例では、不揮発性メモリとしてフラ
ッシュメモリの場合について述べたが、フラッシュメモ
リ以外でもデータ書き換え可能な不揮発性メモリであれ
ば適用可能であり、この不揮発性メモリをメモリカード
として用いることもできる。
【0063】以上実施例に沿って本発明を説明したが、
本発明はこれらに制限されるものではない。例えば、種
々の変更、改良、組み合わせ等が可能なことは当業者に
自明であろう。
【0064】
【発明の効果】以上説明したように、本発明によれば、
メモリ単位に記憶されるアクセス用データからエラーが
検出されると、それに応じてメモリ単位の置き換えを行
うので、早期にメモリ単位の劣化を検知して、メモリ単
位の劣化によるエラーの発生を防止し、不揮発性メモリ
の信頼性を向上させることができる。
【図面の簡単な説明】
【図1】本発明の実施例による不揮発性メモリの構成を
示すブロック図である。
【図2】フラッシュメモリからデータを読み出す際の処
理を示すフローチャートである。
【図3】フラッシュメモリにデータを書き込む際の処理
を示すフローチャートである。
【図4】本発明の他の実施例による不揮発性メモリの構
成を示すブロック図である。
【図5】従来技術による不揮発性メモリの構成を示すブ
ロック図である。
【符号の説明】
1,21,41 フラッシュメモリ 2,22 ユーザブロック 3,23 リザーブブロック 4 生データ 5 ECCデータ 6 フラグ 7,27,47 制御部 8,28 ブロック置き換えテーブル

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 アクセス用データ(4)を記憶すること
    ができる複数のメモリ単位を有するユーザメモリ単位
    (2)と該ユーザメモリ単位内のメモリ単位に置き換え
    て使用するための予備のメモリ単位を有するリザーブメ
    モリ単位(3)を有するメモリ単位アレイ(1)と、 前記メモリ単位アレイ内のメモリ単位に対応して設けら
    れ、各メモリ単位に記憶されるアクセス用データのエラ
    ー検出を行うためのエラー検出用データ(5)を記憶す
    るためのエラー検出用メモリと、 外部から供給されるアクセス用データを基にエラー検出
    用データ(5)を生成し、該アクセス用データを前記メ
    モリ単位アレイに記憶し、該エラー検出用データを前記
    エラー検出用メモリに記憶するための書き込み手段
    (7)と、 前記エラー検出用メモリに記憶されているエラー検出用
    データを基に、前記メモリ単位に記憶されているアクセ
    ス用データにエラーが含まれているか否かを検出し、エ
    ラー検出に基づいて前記メモリ単位アレイ内のメモリ単
    位を置き換える置き換え手段(7,8)とを有する不揮
    発性メモリ。
  2. 【請求項2】 前記置き換え手段は、エラーを検出した
    メモリ単位を記憶する記憶手段を有する請求項1記載の
    不揮発性メモリ。
  3. 【請求項3】 前記置き換え手段は、アクセス用データ
    をメモリ単位アレイに書き込む際に、前記記憶手段を参
    照し、必要なメモリ単位置き換えを行う請求項2記載の
    不揮発性メモリ。
  4. 【請求項4】 さらに、前記メモリ単位アレイからアク
    セス用データを読み出す際に、前記エラー検出用メモリ
    に記憶されているエラー検出用データを基に該アクセス
    用データのエラー訂正を行うエラー訂正手段(7)を有
    する請求項1〜3のいずれかに記載の不揮発性メモリ。
  5. 【請求項5】 アクセス用データ(4)を記憶すること
    ができる複数のメモリ単位を有するユーザメモリ単位
    (2)と該ユーザメモリ単位内のメモリ単位に置き換え
    て使用するための予備のメモリ単位を有するリザーブメ
    モリ単位(3)を有するメモリ単位アレイ(1)と、前
    記メモリ単位アレイ内のメモリ単位に対応して設けられ
    前記メモリ単位アレイ内のメモリ単位に記憶されるアク
    セス用データ(4)のエラー検出を行うためのエラー検
    出用データ(5)を記憶するためのエラー検出用メモリ
    を有する不揮発性メモリへのデータアクセス方法であっ
    て、 外部から供給されるアクセス用データを基に該アクセス
    用データのエラー検出を行うためのエラー検出用データ
    を生成し、該アクセス用データを前記メモリ単位アレイ
    内のメモリ単位に記憶し、該エラー検出用データを前記
    対応するメモリ単位のエラー検出用メモリに記憶する工
    程と、 前記エラー検出用メモリに記憶されているエラー検出用
    データを基に、前記メモリ単位に記憶されているアクセ
    ス用データにエラーが含まれているか否かを検出し、エ
    ラー検出に基づいて前記メモリ単位アレイ内のメモリ単
    位を置き換える工程とを含む不揮発性メモリのデータア
    クセス方法。
  6. 【請求項6】 さらに、前記メモリ単位アレイからアク
    セス用データを読み出す際に、前記エラー検出用メモリ
    に記憶されているエラー検出用データを基に該アクセス
    用データのエラー訂正を行う工程を含む請求項5記載の
    不揮発性メモリのデータアクセス方法。
JP1383595A 1995-01-31 1995-01-31 不揮発性メモリ Withdrawn JPH08203292A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1383595A JPH08203292A (ja) 1995-01-31 1995-01-31 不揮発性メモリ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1383595A JPH08203292A (ja) 1995-01-31 1995-01-31 不揮発性メモリ

Publications (1)

Publication Number Publication Date
JPH08203292A true JPH08203292A (ja) 1996-08-09

Family

ID=11844341

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1383595A Withdrawn JPH08203292A (ja) 1995-01-31 1995-01-31 不揮発性メモリ

Country Status (1)

Country Link
JP (1) JPH08203292A (ja)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19708441A1 (de) * 1997-03-01 1998-09-03 Hella Kg Hueck & Co Verfahren zum Schreiben und Lesen von für den Betrieb einer Fahrzeugkomponente relevanten Betriebsparametern in einen bzw. aus einem Schreib/Lese-Speicher
WO1999031592A1 (fr) * 1997-12-16 1999-06-24 Tdk Corporation Systeme de memoire flash
WO2001013214A1 (fr) * 1999-08-11 2001-02-22 Hitachi, Ltd. Dispositif de stockage externe avec memoire a semi-conducteur non volatile
US7292950B1 (en) * 2006-05-08 2007-11-06 Cray Inc. Multiple error management mode memory module
JP2008047283A (ja) * 2007-09-18 2008-02-28 Toshiba Corp データ記憶システムおよびその設定方法
JP2008165452A (ja) * 2006-12-28 2008-07-17 Nec Corp 情報記憶装置、情報記憶方法及びプログラム
US7430693B2 (en) 2004-02-27 2008-09-30 Kabushiki Kaisha Toshiba Data memory system
JP2009266349A (ja) * 2008-04-28 2009-11-12 Toshiba Corp 不揮発性半導体記憶装置
JP2010282725A (ja) * 2010-09-27 2010-12-16 Fujitsu Semiconductor Ltd 半導体記憶装置

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19708441A1 (de) * 1997-03-01 1998-09-03 Hella Kg Hueck & Co Verfahren zum Schreiben und Lesen von für den Betrieb einer Fahrzeugkomponente relevanten Betriebsparametern in einen bzw. aus einem Schreib/Lese-Speicher
DE19708441B4 (de) * 1997-03-01 2005-05-12 Hella Kgaa Hueck & Co. Verfahren zum Schreiben und Lesen von für den Betrieb einer Fahrzeugkomponente relevanten Betriebsparametern in einen bzw. aus einem Schreib/Lese-Speicher
WO1999031592A1 (fr) * 1997-12-16 1999-06-24 Tdk Corporation Systeme de memoire flash
US6581132B1 (en) 1997-12-16 2003-06-17 Tdk Corporation Flash memory system including a memory manager for managing data
WO2001013214A1 (fr) * 1999-08-11 2001-02-22 Hitachi, Ltd. Dispositif de stockage externe avec memoire a semi-conducteur non volatile
US7054990B1 (en) 1999-08-11 2006-05-30 Renesas Technology Corp. External storage device using non-volatile semiconductor memory
US7430693B2 (en) 2004-02-27 2008-09-30 Kabushiki Kaisha Toshiba Data memory system
US7292950B1 (en) * 2006-05-08 2007-11-06 Cray Inc. Multiple error management mode memory module
JP2008165452A (ja) * 2006-12-28 2008-07-17 Nec Corp 情報記憶装置、情報記憶方法及びプログラム
JP2008047283A (ja) * 2007-09-18 2008-02-28 Toshiba Corp データ記憶システムおよびその設定方法
JP2009266349A (ja) * 2008-04-28 2009-11-12 Toshiba Corp 不揮発性半導体記憶装置
US8310873B2 (en) 2008-04-28 2012-11-13 Kabushiki Kaisha Toshiba Non-volatile semiconductor memory device
JP2010282725A (ja) * 2010-09-27 2010-12-16 Fujitsu Semiconductor Ltd 半導体記憶装置

Similar Documents

Publication Publication Date Title
US7757153B2 (en) Multi-bit memory device and memory system
US10083078B2 (en) Method and apparatus for a volume management system in a non-volatile memory device
JP3982639B2 (ja) マルチレベルセルを有するメモリからデータを読み取る方法
JP4073799B2 (ja) メモリシステム
US8694855B1 (en) Error correction code technique for improving read stress endurance
US8161355B2 (en) Automatic refresh for improving data retention and endurance characteristics of an embedded non-volatile memory in a standard CMOS logic process
JP5100663B2 (ja) 試験装置および試験方法
US7434111B2 (en) Non-volatile memory system having a pseudo pass function
US7526601B2 (en) Data rewriting method for flash memory using partial erases
US8332725B2 (en) Reprogramming non volatile memory portions
US5128944A (en) Apparatus and method for providing notification of bit-cell failure in a redundant-bit-cell memory
US20140115416A1 (en) Non-volatile memory error correction
KR20030011230A (ko) 비휘발성 기억 장치 및 그의 재기입 제어 방법
US20150318871A1 (en) Error correction with secondary memory
JP4158526B2 (ja) メモリカード及びメモリへのデータ書き込み方法
JPH08203292A (ja) 不揮発性メモリ
JP3725581B2 (ja) セルの判別方法とその消去方法,および,それらの方法に用いられるメモリ・デバイスとそのメモリ・デバイスを用いた集積回路
JP4655034B2 (ja) メモリコントローラ及びフラッシュメモリシステム並びにフラッシュメモリの制御方法
JPH0528788A (ja) 不揮発性メモリ装置
CN111258498A (zh) 一种flash存储器管理方法
JP2004030849A (ja) データの一部書き換え機能を有する半導体不揮発性メモリ
JP3670151B2 (ja) フラッシュメモリのアクセス方法、フラッシュメモリへアクセスするドライバを備えるシステム、および、フラッシュメモリ
JPS6125177B2 (ja)
JP6886547B1 (ja) 半導体記憶装置およびecc関連情報の読出し方法
US20240265964A1 (en) Flash memory and wear leveling method thereof

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20020402