JP2007257547A - メモリシステム及びバススプリッタ - Google Patents
メモリシステム及びバススプリッタ Download PDFInfo
- Publication number
- JP2007257547A JP2007257547A JP2006084132A JP2006084132A JP2007257547A JP 2007257547 A JP2007257547 A JP 2007257547A JP 2006084132 A JP2006084132 A JP 2006084132A JP 2006084132 A JP2006084132 A JP 2006084132A JP 2007257547 A JP2007257547 A JP 2007257547A
- Authority
- JP
- Japan
- Prior art keywords
- data
- nand flash
- memory system
- circuit
- memory
- 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
Images
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
【課題】 信頼性を向上させることが可能なメモリシステム及びバススプリッタを提供する。
【解決手段】 第1データを記憶する第1NAND型フラッシュメモリ(第1不揮発性記憶手段)9と、第1データと同一内容の第2データを記憶する第2NAND型フラッシュメモリ(第2不揮発性記憶手段)10と、第1及び第2不揮発性記憶手段9,10から読み出された第1及び第2データを互いに比較してデータ不一致を検出する比較回路81と、第1不揮発性記憶手段9におけるデータ読み出し位置を検知する読み出し位置検知回路82とを備える。
【選択図】 図1
【解決手段】 第1データを記憶する第1NAND型フラッシュメモリ(第1不揮発性記憶手段)9と、第1データと同一内容の第2データを記憶する第2NAND型フラッシュメモリ(第2不揮発性記憶手段)10と、第1及び第2不揮発性記憶手段9,10から読み出された第1及び第2データを互いに比較してデータ不一致を検出する比較回路81と、第1不揮発性記憶手段9におけるデータ読み出し位置を検知する読み出し位置検知回路82とを備える。
【選択図】 図1
Description
本発明は、不揮発性半導体メモリを搭載したメモリシステム及びこのメモリシステムに使用されるバススプリッタに関する。
パーソナルコンピュータ(PC)、パーソナル・デジタル・アシスタンス(PDA)、カメラ、及び携帯電話等の様々な携帯用電子機器においては、リムーバブル記憶デバイスの1つであるメモリカード等のメモリシステムが多く用いられている。メモリシステムは、一般的に、データを保持するNAND型フラッシュメモリ等の不揮発性半導体メモリと、所定のプロトコルでホスト機器とやり取りするコントローラで構成されている。NAND型フラッシュメモリは、構造上、書き込みを行っても誤ったデータが保持される特定のビット(以下、「フェイルビット」という)、及び書き込みも読み出しもできない特定のブロック(以下、「バッドブロック」という)等の不良箇所が存在する場合がある。
現状、コントローラは、書き込みデータと共にデータ修正用の誤り訂正符号(ECC)をNAND型フラッシュメモリに書き込むことで、読み出し時においてデータの整合性を確認している。しかし、1ページ内のフェイルビットの数が多くなれば、読み出しデータの修正が不可能になる。この結果、データの損失が生じるため、信頼性に欠けることとなる。このため、信頼性の向上を目的として、メインメモリ及びサブメモリに対してデータの多重書き込みを行い、読み出し時において各読み出しデータに誤り検出及び誤り訂正を行うことで、誤りのない方のメモリからデータを読み出す手法が提案されている(例えば、特許文献1及び2参照。)。
しかしながら、誤りのない方のメモリからデータを読み出す上記の背景技術においては、誤り検出回路及び誤り訂正回路を備える必要があるために回路規模が増大する。更に、メモリシステムのテストにおける不良解析(デバッグ)時においては、信頼性向上のため、NAND型フラッシュメモリにおける不良箇所を特定することが重要であるが、上記の背景技術においては不良箇所を特定できない。
特開平10−187550号公報
特開2004−5628号公報
本発明は、信頼性を向上させることが可能なメモリシステム及びバススプリッタを提供する。
本発明の一態様によれば、第1データを記憶する第1不揮発性記憶手段と、第1データと同一内容の第2データを記憶する第2不揮発性記憶手段と、第1及び第2不揮発性記憶手段から読み出された第1及び第2データを互いに比較してデータ不一致を検出する比較回路と、第1不揮発性記憶手段におけるデータ読み出し位置を検知する読み出し位置検知回路とを備えるメモリシステムが提供される。
本発明の他の態様によれば、第1データを記憶する第1不揮発性記憶手段及び第1データと同一内容の第2データを記憶する第2不揮発性記憶手段にアクセス可能なバススプリッタであって、第1及び第2不揮発性記憶手段から読み出された第1及び第2データを互いに比較してデータ不一致を検出する比較回路と、第1不揮発性記憶手段におけるデータ読み出し位置を検知する読み出し位置検知回路とを備えるバススプリッタが提供される。
本発明によれば、信頼性を向上させることが可能なメモリシステム及びバススプリッタを提供できる。
次に、図面を参照して、本発明の第1及び第2実施形態を説明する。以下の第1及び第2実施形態における図面の記載において、同一又は類似の部分には同一又は類似の符号を付している。
(第1実施形態)
本発明の第1実施形態に係るメモリシステム1aは、不良解析時において図1に示すようにホスト機器2及び解析装置100と電気的に接続される。解析装置100としては例えばロジックアナライザが使用できる。メモリシステム1aは、第1及び第2NAND型フラッシュメモリ(第1及び第2不揮発性記憶手段)9,10を具備する。また、メモリシステム1aは、ホスト機器2とホストバス3を介してデータ等をやり取りするコントローラ4と、第1及び第2NAND型フラッシュメモリ9,10に対してコントローラ4がアクセス可能とするバススプリッタ8aとを備える。具体的には、バススプリッタ8aは、コントローラ4及びバススプリッタ8a間のメモリバス5を、バススプリッタ8a及び第1NAND型フラッシュメモリ9間のメモリバス6と、バススプリッタ8a及び第2NAND型フラッシュメモリ10間のメモリバス7とに分離するように構成されている。コントローラ4の詳細については後述する。
本発明の第1実施形態に係るメモリシステム1aは、不良解析時において図1に示すようにホスト機器2及び解析装置100と電気的に接続される。解析装置100としては例えばロジックアナライザが使用できる。メモリシステム1aは、第1及び第2NAND型フラッシュメモリ(第1及び第2不揮発性記憶手段)9,10を具備する。また、メモリシステム1aは、ホスト機器2とホストバス3を介してデータ等をやり取りするコントローラ4と、第1及び第2NAND型フラッシュメモリ9,10に対してコントローラ4がアクセス可能とするバススプリッタ8aとを備える。具体的には、バススプリッタ8aは、コントローラ4及びバススプリッタ8a間のメモリバス5を、バススプリッタ8a及び第1NAND型フラッシュメモリ9間のメモリバス6と、バススプリッタ8a及び第2NAND型フラッシュメモリ10間のメモリバス7とに分離するように構成されている。コントローラ4の詳細については後述する。
データ書き込み動作時において、第1NAND型フラッシュメモリ9はコントローラ4からバススプリッタ8aを介して入力される第1データを記憶する。第2NAND型フラッシュメモリ10は第1データと同一内容の第2データを記憶する。ここで、「第1データと同一内容の第2データ」とは、第2データの論理が第1データと逆論理である場合、又は第1データの重要な部分のみを第2データとする場合を含む。第1実施形態においては、第2NAND型フラッシュメモリ10は不良箇所を含まないことを前提とし、第1NAND型フラッシュメモリ9はフェイルビット又はバッドブロックが存在する可能性のある不良解析対象のNAND型フラッシュメモリであるとして説明する。
なお、第1及び第2NAND型フラッシュメモリ9,10は、例えば、消去単位である消去ブロックのサイズが256Kバイトに定められ、データの書き込み及び読み出し動作が16Kバイト単位で行われる。第1及び第2NAND型フラッシュメモリ9,10及びコントローラ4は、ハイブリッド集積回路としてプリント回路基板(PCB)上に実装されていても良いし、モノリシック集積回路として同一の半導体チップ上に集積化されていても良い。更に、第1及び第2NAND型フラッシュメモリ9,10は、1つのメモリセルに1ビットの情報を記憶する2値メモリであっても良いし、1つのメモリセルに1ビットより多い情報(例えば2ビット)を記憶する多値メモリであっても良い。
バススプリッタ8aは、比較回路81、読み出し位置検知回路82、AND回路84、及び選択回路85aを備える。比較回路81は、第1及び第2NAND型フラッシュメモリ9,10の各出力に入力が接続され、解析装置100の入力に出力が接続される。読み出し位置検知回路82は、第1及び第2NAND型フラッシュメモリ9,10の各出力及び比較回路81の出力に入力が接続され、解析装置100の入力に出力が接続される。AND回路84は、第1及び第2NAND型フラッシュメモリ9,10の各出力に入力が接続され、コントローラ4の入力に出力が接続される。選択回路85aは、第1及び第2NAND型フラッシュメモリ9,10の各出力に入力が接続され、コントローラ4の入力に出力が接続される。なお、図1においては、メモリシステム1aにおけるホスト機器2及び解析装置100との接続端子(ピン)の図示を省略している。
比較回路81は、データ読み出し時において第1及び第2NAND型フラッシュメモリ9,10から読み出された第1及び第2データを互いに比較してデータ不一致を検出する。読み出し位置検知回路82は、データ不一致が検出された際の第1NAND型フラッシュメモリ9におけるデータ読み出し位置を検知する。データ不一致が検出された場合、比較回路81は読み出し位置検知回路82及び解析装置100にデータ不一致の発生を通知する。読み出し位置検知回路82は、例えばデータ不一致の発生の通知をトリガとして、データ読み出し位置を解析装置100に報告する。あるいは、読み出し位置検知回路82がデータ読み出し位置を解析装置100に常時報告する構成であっても構わない。この結果、解析装置100は、データ不一致の発生、及びデータ不一致の発生時におけるデータ読み出し位置を検出可能となる。
次に、データ書き込み動作の詳細について説明する。ホスト機器2がメモリシステム1aに対して行う書き込みアクセス時には、例えば、書き込みコマンド、ページアドレス(ロウアドレス)、カラムアドレス、書き込みデータ、及びプログラム確認コマンドの順で情報の授受が行われる。コントローラ4は、書き込みコマンド、ページアドレス(ロウアドレス)、及びカラムアドレス等を制御信号CSとしてメモリバス5を介してバススプリッタ8aに供給する。バススプリッタ8aは制御信号CSを分岐させて第1及び第2NAND型フラッシュメモリ9,10に供給する。
また、コントローラ4が出力する書き込みデータWDは、メモリバス5を介してバススプリッタ8aに入力される。バススプリッタ8aは書き込みデータWDを分岐させて、分岐した一方の書き込みデータを第1データとして第1NAND型フラッシュメモリ9に供給し、分岐した他方の書き込みデータを第2データとして第2NAND型フラッシュメモリ10に供給する。
次に、データ読み出し動作の詳細について説明する。ホスト機器2がメモリシステム1aに対して行う読み出しアクセス時には、例えば書き込みアクセス時と同様の手順で情報の授受が行われる。コントローラ4は読み出しコマンド、ページアドレス(ロウアドレス)、及びカラムアドレス等を制御信号CSとしてメモリバス5を介してバススプリッタ8aに供給する。
第1NAND型フラッシュメモリ9は、制御信号CSに応じて読み出しデータ(第1データ)RD1をバススプリッタ8aへ出力する。第2NAND型フラッシュメモリ10は、制御信号CSに応じて読み出しデータ(第2データ)RD2をバススプリッタ8aへ出力する。バススプリッタ8aの選択回路85aは、コントローラ4の制御下で、第1及び第2データRD1,RD2のいずれか一方をコントローラ4へ出力する。上述したように不良解析時おいては第1NAND型フラッシュメモリ9が解析対象であるため、第1データRD1がコントローラ4に出力される。
比較回路81は、第1及び第2データRD1,RD2を例えば1ビット単位で比較し、第1及び第2データRD1,RD2が一致するかを判定する。データ不一致が発生した場合、解析装置100は、第1NAND型フラッシュメモリ9にフェイルビット又はバッドブロックが存在すると判定する。読み出し位置検知回路82は、制御信号CSを監視し、第1NAND型フラッシュメモリ9のデータ読み出し位置をカラム単位(又はビット単位)でカウントする。読み出し位置検知回路82がカウントするカラム数は、例えば各ページ毎にリセットされる。
なお、書き込み、読み出し、及び消去時等、第1及び第2NAND型フラッシュメモリ9,10内部にて動作実行中はビジー信号B1,B2が出力される。バススプリッタ8a内のAND回路84は、第1及び第2NAND型フラッシュメモリ9,10が出力するビジー信号B1,B2をAND演算し、第1及び第2NAND型フラッシュメモリ9,10の少なくとも一方がビジー中のときにはコントローラ4側にビジー信号を出力する。
次に、図2に示すフローチャートを参照して、第1実施形態に係るメモリシステム1aの不良解析時の動作例を説明する。
ステップS101において、コントローラ4が、ホスト機器2からの書き込みデータをバススプリッタ8aを介して第1及び第2NAND型フラッシュメモリ9,10に同時に書き込む。
ステップS102において、コントローラ4が、ホスト機器2から読み出しコマンドを受信し、第1及び第2NAND型フラッシュメモリ9,10から第1及び第2データRD1,RD2を同時に読み出す。また、読み出し位置検知回路82は、制御信号CSを監視して、カラム数をカウントする。
ステップS103において、比較回路81が、第1及び第2NAND型フラッシュメモリ9,10から読み出された第1及び第2データRD1,RD2を互いに比較する。
ステップS104において、比較回路81が、第1及び第2データRD1,RD2間でデータ不一致が発生したかを判定する。データ不一致が発生した場合、第1NAND型フラッシュメモリ9にフェイルビット又はバッドブロックが存在すると判定され、ステップS105aに移行する。データ不一致が発生していないと判定された場合、ステップS102に戻る。
ステップS105aにおいて、読み出し位置検知回路82が、解析装置100に対し、データ不一致の発生時における第1NAND型フラッシュメモリ9のデータ読み出し位置を通知する。
ステップS106aにおいて、ホスト機器2が、第1及び第2データRD1,RD2の読み出しが完了したかを判定する。第1及び第2データRD1,RD2の読み出しが完了したと判定された場合、不良解析動作が一旦終了する。第1及び第2データRD1,RD2の読み出しが完了していないと判定された場合、ステップS102に処理が戻る。
以上詳細に説明したように、第1実施形態によれば、簡単な回路構成で、不良解析時にて第1NAND型フラッシュメモリ9にフェイルビット又はバッドブロックが存在することを判定できる。更に、第1NAND型フラッシュメモリ9における不良箇所を特定できるので、信頼性を向上させることができる。
(第1実施形態の第1変形例)
本発明の第1実施形態の第1変形例においては、図3に示すように、バススプリッタ8bが、ホスト機器2及びバススプリッタ8b間のホストバス31を、バススプリッタ8b及び第1メモリシステム(第1不揮発性記憶手段)101間のホストバス61と、バススプリッタ8b及び第2メモリシステム(第2不揮発性記憶手段)102間のホストバス71とに分離するように構成されている点で、図1とは異なっている。第1及び第2メモリシステム101,102は互いに互換性を有するメモリシステムである。また、第2メモリシステム102はいわゆる良品であり、第1メモリシステム101はフェイルビット又はバッドブロックが存在する可能性のある不良解析対象のメモリシステムである。
本発明の第1実施形態の第1変形例においては、図3に示すように、バススプリッタ8bが、ホスト機器2及びバススプリッタ8b間のホストバス31を、バススプリッタ8b及び第1メモリシステム(第1不揮発性記憶手段)101間のホストバス61と、バススプリッタ8b及び第2メモリシステム(第2不揮発性記憶手段)102間のホストバス71とに分離するように構成されている点で、図1とは異なっている。第1及び第2メモリシステム101,102は互いに互換性を有するメモリシステムである。また、第2メモリシステム102はいわゆる良品であり、第1メモリシステム101はフェイルビット又はバッドブロックが存在する可能性のある不良解析対象のメモリシステムである。
データ書き込み動作時において、第1メモリシステム101はホスト機器2からバススプリッタ8bを介して入力される第1データを記憶する。第2メモリシステム102は第1データと同一内容の第2データを記憶する。
更に、データ読み出し時において、比較回路81は、第1及び第2メモリシステム101,102から読み出された第1及び第2データRD1,RD2を互いに比較してデータ不一致を検出する。データ不一致が発生した場合、第1メモリシステム101にフェイルビット又はバッドブロックが存在すると判定される。
読み出し位置検知回路82は、データ不一致が検出された際の第1メモリシステム101におけるデータ読み出し位置を検知する。この結果、解析装置100は、データ不一致の発生、及びデータ不一致の発生時における第1メモリシステム101のデータ読み出し位置を検出可能となる。
このように、第1実施形態の第1変形例によれば、NAND型フラッシュメモリ単位ではなく、メモリシステム単位で不良解析を実行可能となる。
(第1実施形態の第2変形例)
本発明の第1実施形態の第2変形例においては、図4に示すように、第1メモリシステム1bに搭載されたバススプリッタ8cのアクセス対象となる第1不揮発性記憶手段が第1メモリシステム1b内部のNAND型フラッシュメモリ9であり、第2不揮発性記憶手段が第1メモリシステム1b外部の第2メモリシステム102である場合について説明する。また、バススプリッタ8cは、コントローラ4を介してNAND型フラッシュメモリ9にアクセスする。なお、バススプリッタ8cが、コントローラ4の内部に設けられるように構成されていてもかまわない。
本発明の第1実施形態の第2変形例においては、図4に示すように、第1メモリシステム1bに搭載されたバススプリッタ8cのアクセス対象となる第1不揮発性記憶手段が第1メモリシステム1b内部のNAND型フラッシュメモリ9であり、第2不揮発性記憶手段が第1メモリシステム1b外部の第2メモリシステム102である場合について説明する。また、バススプリッタ8cは、コントローラ4を介してNAND型フラッシュメモリ9にアクセスする。なお、バススプリッタ8cが、コントローラ4の内部に設けられるように構成されていてもかまわない。
第2メモリシステム102はいわゆる良品であり、NAND型フラッシュメモリ9はフェイルビット又はバッドブロックが存在する可能性のある不良解析対象のNAND型フラッシュメモリである。
データ書き込み動作時において、NAND型フラッシュメモリ9は、ホスト機器2から、バススプリッタ8c及びコントローラ4を介して入力される第1データを記憶する。第2メモリシステム102は第1データと同一内容の第2データを記憶する。
データ読み出し時において、比較回路81は、NAND型フラッシュメモリ9及び第2メモリシステム102から読み出された第1及び第2データRD1,RD2を互いに比較してデータ不一致を検出する。データ不一致が発生した場合、NAND型フラッシュメモリ9にフェイルビット又はバッドブロックが存在すると判定される。
読み出し位置検知回路82は、データ不一致が検出された際のNAND型フラッシュメモリ9におけるデータ読み出し位置を検知する。この結果、解析装置100は、データ不一致の発生、及びデータ不一致の発生時におけるNAND型フラッシュメモリ9のデータ読み出し位置を検出可能となる。
図1に示すメモリシステム1aでは2つのNAND型フラッシュメモリ9,10を搭載するために各NAND型フラッシュメモリの記憶容量が制限されるが、図4に示すメモリシステム1bでは1つのNAND型フラッシュメモリ9を搭載するので記憶容量が制限されることがない。更に、コントローラ4の出力と第2メモリシステム102の出力とをバススプリッタ8cで比較することにより、デバッグが容易となり、コントローラ4の品質向上及び開発期間短縮が可能になる。
なお、コントローラ4をホスト機器2とバススプリッタ8cの間に接続し、第2メモリシステム102に代えて良品のNAND型フラッシュメモリを用いることにより、メモリカード1b内のNAND型フラッシュメモリ9を解析できる。
(第2実施形態)
本発明の第2実施形態では、不良解析時に限らず、製品出荷後の実使用時における信頼性を向上させる実施形態を説明する。第2実施形態に係るメモリシステム1cは、図5に示すように、バススプリッタ8dが、比較回路81及び読み出し位置検知回路82の各出力に入力が接続され、選択回路85bの入力に出力が接続された保持回路83を更に備える点で、図1のメモリシステム1aとは異なっている。選択回路85bは、第1データRD1、第2データRD2、及び保持回路85bからの出力データのいずれか1つを選択し、選択したデータをコントローラ4へ出力する。なお、第2実施形態においては、第1及び第2NAND型フラッシュメモリ9,10のいずれもフェイルビット又はバッドブロックが存在する可能性を有しているものとして説明する。データ書き込み動作については、第1実施形態と同様であるため、重複する説明を省略する。
本発明の第2実施形態では、不良解析時に限らず、製品出荷後の実使用時における信頼性を向上させる実施形態を説明する。第2実施形態に係るメモリシステム1cは、図5に示すように、バススプリッタ8dが、比較回路81及び読み出し位置検知回路82の各出力に入力が接続され、選択回路85bの入力に出力が接続された保持回路83を更に備える点で、図1のメモリシステム1aとは異なっている。選択回路85bは、第1データRD1、第2データRD2、及び保持回路85bからの出力データのいずれか1つを選択し、選択したデータをコントローラ4へ出力する。なお、第2実施形態においては、第1及び第2NAND型フラッシュメモリ9,10のいずれもフェイルビット又はバッドブロックが存在する可能性を有しているものとして説明する。データ書き込み動作については、第1実施形態と同様であるため、重複する説明を省略する。
次に、第2実施形態に係るメモリシステム1cのデータ読み出し動作について、第1実施形態と異なる動作を中心に説明する。第1NAND型フラッシュメモリ9は、制御信号CSに応じて読み出しデータ(第1データ)RD1を選択回路85b及び比較回路81へ出力する。第2NAND型フラッシュメモリ10は、制御信号CSに応じて読み出しデータ(第2データ)RD2を選択回路85b及び比較回路81へ出力する。選択回路85bは、第1及び第2データRD1,RD2のいずれか一方をコントローラ4へ出力する。
読み出し位置検知回路82は、選択回路85bで選択されている読み出しデータのデータ読み出し位置を検出する。すなわち、選択回路85bが第1データRD1を選択している場合、読み出し位置検知回路82は、第1NAND型フラッシュメモリ9におけるデータ読み出し位置を検知する。これに対して、選択回路85bが第2データRD2を選択している場合、読み出し位置検知回路82は、第2NAND型フラッシュメモリ10におけるデータ読み出し位置を検知する。
また、比較回路81は、第1及び第2データRD1,RD2を例えば1ビット単位で比較し、第1及び第2データRD1,RD2が一致するかを判定する。データ不一致が発生した場合、比較回路81はデータ不一致の発生を保持回路83に通知する。
更に、保持回路83は、比較回路81からデータ不一致の発生が通知された場合、読み出し位置検知回路82が検知したデータ読み出し位置と、比較回路81で選択されていない方の読み出しデータを保持する。すなわち、選択回路85bが第1データRD1を選択している場合、保持回路83は、データ不一致が発生した際の第2データRD2を保持する。これに対して、選択回路85bが第2データRD2を選択している場合、保持回路83は、データ不一致が発生した際の第1データRD1を保持する。
読み出し位置検知回路82が所定のカラム数(又はビット数)をカウントすると、コントローラ4は、第1及び第2NAND型フラッシュメモリ9,10へのアクセスを中断し、保持回路83が保持したデータ読み出し位置及び読み出しデータを、選択回路85bを介して取り込む。
コントローラ4は、図6に示すように、誤り訂正回路47、CPU43、バッファメモリ46、ROM44、及びRAM45を備える。誤り訂正回路47は、複数ビット単位で誤り訂正を実行可能なリードソロモン符号、又は1ビット単位で誤り訂正を実行可能な巡回ハミング符号等の誤り訂正符号(ECC)を使用する。よって、図5の保持回路83は、記憶容量を削減するため、必要最小限の読み出しデータ、すなわち誤り訂正の実行単位分の読み出しデータを保持することが好ましい。
更に、誤り訂正回路47は、修正不可能なECCエラーを検出した場合(誤り訂正回路47が検出したエラービット数が、誤り訂正回路47が訂正できるエラービット数(誤り訂正回路47のエラー訂正能力)を超える場合)でも、読み出し動作を続けることで、第1NAND型フラッシュメモリ9又は第2NAND型フラッシュメモリ10のデータ読み出し位置と読み出しデータを受け取り、それらのデータを元に、再度ECCを計算する。例えば、第1データRD1の読み出し時において、第1データRD1に検出されたエラービット数が誤り訂正回路47のエラー訂正能力を超える場合は、誤り訂正回路47は、第1データRD1のうち保持回路83に保持されたデータ読み出し位置に対応するデータを、保持回路83に保持された第2データRD2に置き換える。比較回路81で不一致が検出されたデータは、エラービットを含んでいる可能性が高い。このため、不一致が検出されたデータを、比較回路81で選択されていないもう一方の読み出しデータに置き換えることで、読み出されたデータのエラービット数を訂正回路47のエラー訂正能力以下とすることができる。
ROM44は、CPU43により実行される制御プログラム(ファームウェア)等を格納する。CPU43は、ROM44に格納された制御プログラムを実行することで各種の処理を実行する。RAM45は、CPU43の作業領域として使用され、制御プログラムや各種のテーブルを一時的に記憶する。
CPU43は、ROM44の中に格納されている制御プログラムをRAM45上にロードして所定の処理を実行する。この結果、CPU43は、各種のテーブルをRAM45上で作成したり、ホスト機器2から書き込みコマンド、読み出しコマンド、及び消去コマンド等を受けて第1及び第2NAND型フラッシュメモリ9,10に対するアクセスを実行したり、バッファメモリ46を通じたデータ転送処理を制御したりする。
バッファメモリ46は、ホスト機器2から送られてくる書き込みデータを第1及び第2NAND型フラッシュメモリ9,10へ書き込む際に、一定量(例えば1ページ分)のデータを一時的に記憶したり、第1及び第2NAND型フラッシュメモリ9,10から読み出されたデータをホスト機器2へ送り出す際に、一定量のデータを一時的に記憶したりする。
次に、図7に示すフローチャートを参照して、第2実施形態に係るメモリシステム1cの動作例を説明する。ただし、データ読み出し時において、選択回路85bが、第1NAND型フラッシュメモリ9からの第1データRD1をコントローラ4へ出力する。
ステップS101において、コントローラ4が、ホスト機器2からの書き込みデータをバススプリッタ8dを介して第1及び第2NAND型フラッシュメモリ9,10に同時に書き込む。
ステップS102において、コントローラ4が、第1及び第2NAND型フラッシュメモリ9,10から第1及び第2データRD1,RD2を同時に読み出す。また、読み出し位置検知回路82は、制御信号CSを監視して、カラム数をカウントする。
ステップS103において、比較回路81が、第1及び第2NAND型フラッシュメモリ9,10から読み出された第1及び第2データRD1,RD2を互いに比較する。また、ステップS201において、誤り訂正回路47は、第1NAND型フラッシュメモリ9から読み出された第1データRD1を誤り訂正する。
ステップS104において、比較回路81が、第1及び第2データRD1,RD2間でデータ不一致が発生したかを判定する。データ不一致が発生した場合、ステップS105bに移行する。データ不一致が発生していないと判定された場合、ステップS106bに移行する。
ステップS105bにおいて、保持回路83が、データ不一致が発生した際の第2データRD2及び第1NAND型フラッシュメモリ9のデータ読み出し位置を保持する。
ステップS106bにおいて、読み出し位置検知回路82が、一定のカラム数(又はビット数)の読み出しが完了したか否か判定する。一定のカラム数(又はビット数)の読み出しが完了したと判定された場合、ステップS202に移行する。一定のカラム数(又はビット数)の読み出しが完了していないと判定された場合、ステップS102に処理が戻る。
ステップS202において、コントローラ4は、第1及び第2NAND型フラッシュメモリ9,10へのアクセスを中断し、保持回路83が保持した第2データRD2及び第1NAND型フラッシュメモリ9のデータ読み出し位置を、選択回路85bを介して取り込む。
ステップS203において、誤り訂正回路47は、保持回路83から読み出された第2データ及びデータ読み出し位置を用いて再度誤り訂正を実行する。
したがって、第2実施形態によれば、読み出し動作時にコントローラ4側で修正不可能なECCエラーを検出した場合であっても、データの修正が可能となる。
(その他の実施形態)
上記のように、本発明は第1及び第2実施形態によって記載したが、この開示の一部をなす論述及び図面はこの発明を限定するものであると理解すべきではない。この開示から当業者には様々な代替実施形態、実施例及び運用技術が明らかとなろう。
上記のように、本発明は第1及び第2実施形態によって記載したが、この開示の一部をなす論述及び図面はこの発明を限定するものであると理解すべきではない。この開示から当業者には様々な代替実施形態、実施例及び運用技術が明らかとなろう。
上述した第1実施形態においては、第2NAND型フラッシュメモリ10が、第1NAND型フラッシュメモリ9と等しい記憶容量を有することを前提として説明した。しかし、第2NAND型フラッシュメモリ10が管理データ等を記憶しないことで、第2NAND型フラッシュメモリ10の記憶容量を第1NAND型フラッシュメモリ9の記憶容量よりも小さくすることができる。
更に、第1実施形態においては、メモリシステム1aが第1及び第2NAND型フラッシュメモリ9,10の2つのNAND型フラッシュメモリを搭載する一例を説明したが、1つのNAND型フラッシュメモリ内に2つの独立した記憶領域を設ける構成としても構わない。この場合、一方の記憶領域が上述した第1不揮発性記憶手段に相当し、他方の記憶領域が第2不揮発性記憶手段に相当する。
また、第1及び第2実施形態においては、2つの不揮発性記憶手段を設ける一例を説明したが、3つ以上の不揮発性記憶手段を備える構成としても構わない。
なお、上述した第1及び第2実施形態においては、不揮発性半導体メモリとしてNAND型フラッシュメモリを用いる一例を説明したが、NOR型メモリ等の他の不揮発性半導体メモリにも適用できる。
このように本発明は、ここでは記載していない様々な実施形態等を包含するということを理解すべきである。したがって、本発明はこの開示から妥当な特許請求の範囲の発明特定事項によってのみ限定されるものである。
1a〜1c,101,102…メモリシステム
8a〜8d…バススプリッタ
9…第1NAND型フラッシュメモリ
10…第2NAND型フラッシュメモリ
47…誤り訂正回路
81…比較回路
82…位置検知回路
83…保持回路
8a〜8d…バススプリッタ
9…第1NAND型フラッシュメモリ
10…第2NAND型フラッシュメモリ
47…誤り訂正回路
81…比較回路
82…位置検知回路
83…保持回路
Claims (5)
- 第1データを記憶する第1不揮発性記憶手段と、
前記第1データと同一内容の第2データを記憶する第2不揮発性記憶手段と、
前記第1及び第2不揮発性記憶手段から読み出された前記第1及び第2データを互いに比較してデータ不一致を検出する比較回路と、
前記第1不揮発性記憶手段におけるデータ読み出し位置を検知する読み出し位置検知回路
とを備えることを特徴とするメモリシステム。 - 前記データ不一致の検出された際の前記データ読み出し位置及び前記第2データを保持する保持回路を更に備えることを特徴とする請求項1に記載のメモリシステム。
- 前記保持回路が保持した前記データ読み出し位置及び前記第2データを使用して前記読み出された第1データを誤り訂正する誤り訂正回路を更に備えることを特徴とする請求項2に記載のメモリシステム。
- 前記保持回路が、前記誤り訂正の実行単位分の前記第2データを保持することを特徴とする請求項3に記載のメモリシステム。
- 第1データを記憶する第1不揮発性記憶手段及び前記第1データと同一内容の第2データを記憶する第2不揮発性記憶手段にアクセス可能なバススプリッタであって、
前記第1及び第2不揮発性記憶手段から読み出された前記第1及び第2データを互いに比較してデータ不一致を検出する比較回路と、
前記第1不揮発性記憶手段におけるデータ読み出し位置を検知する読み出し位置検知回路
とを備えることを特徴とするバススプリッタ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006084132A JP2007257547A (ja) | 2006-03-24 | 2006-03-24 | メモリシステム及びバススプリッタ |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006084132A JP2007257547A (ja) | 2006-03-24 | 2006-03-24 | メモリシステム及びバススプリッタ |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007257547A true JP2007257547A (ja) | 2007-10-04 |
Family
ID=38631692
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006084132A Pending JP2007257547A (ja) | 2006-03-24 | 2006-03-24 | メモリシステム及びバススプリッタ |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2007257547A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009157515A (ja) * | 2007-12-25 | 2009-07-16 | Toshiba Corp | 半導体メモリコントローラおよび半導体メモリ |
JP2009238132A (ja) * | 2008-03-28 | 2009-10-15 | Nec Corp | データ処理装置 |
JP2010079856A (ja) * | 2008-09-29 | 2010-04-08 | Hitachi Ltd | 記憶装置およびメモリ制御方法 |
-
2006
- 2006-03-24 JP JP2006084132A patent/JP2007257547A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009157515A (ja) * | 2007-12-25 | 2009-07-16 | Toshiba Corp | 半導体メモリコントローラおよび半導体メモリ |
JP2009238132A (ja) * | 2008-03-28 | 2009-10-15 | Nec Corp | データ処理装置 |
JP2010079856A (ja) * | 2008-09-29 | 2010-04-08 | Hitachi Ltd | 記憶装置およびメモリ制御方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8689041B2 (en) | Method for protecting data in damaged memory cells by dynamically switching memory mode | |
US7913147B2 (en) | Method and apparatus for scrubbing memory | |
US8140940B2 (en) | Method and apparatus for controlling memory | |
US10468118B2 (en) | DRAM row sparing | |
US10891185B2 (en) | Error counters on a memory device | |
US8631286B2 (en) | Information storage device | |
KR20150029402A (ko) | 데이터 저장 시스템 및 그것의 동작 방법 | |
CN112667445B (zh) | 封装后的内存修复方法及装置、存储介质、电子设备 | |
US8331151B2 (en) | Semiconductor memory including control unit responsive to erase command to determine selection of redundant memory block | |
US10319461B2 (en) | Low-overhead mechanism to detect address faults in ECC-protected memories | |
JP2008139908A (ja) | メモリ制御装置、コンピュータシステム及びデータ再生記録装置 | |
JP2009181425A (ja) | メモリモジュール | |
JP4349532B2 (ja) | メモリ制御装置、メモリ制御方法、情報処理システム、そのプログラム及び記憶媒体 | |
US20070294588A1 (en) | Performing a diagnostic on a block of memory associated with a correctable read error | |
US8219883B2 (en) | Data accessing method, controller and storage system using the same | |
TWI473103B (zh) | 快閃記憶體儲存裝置及其不良儲存區域的判定方法 | |
KR20130069364A (ko) | 비휘발성 반도체 기억 장치 및 그 관리 방법 | |
US20080195893A1 (en) | A repairable semiconductor memory device and method of repairing the same | |
US20170103797A1 (en) | Calibration method and device for dynamic random access memory | |
KR102468710B1 (ko) | 메모리 장치와 메모리 컨트롤러를 포함하는 메모리 시스템, 및 그의 동작방법 | |
US20100070821A1 (en) | Method and apparatus for detecting free page and a method and apparatus for decoding error correction code using the method and apparatus for detecting free page | |
JP2007257547A (ja) | メモリシステム及びバススプリッタ | |
US11182231B2 (en) | Host system and computing system including the host system | |
KR20200101884A (ko) | 데이터 저장 시스템 및 그것의 동작 방법 | |
US20230386598A1 (en) | Methods for real-time repairing of memory failures caused during operations, memory systems performing repairing methods, and data processing systems including repairing memory systems |