(57)【要約】【課題】メモリアクセス制御の改良技術を提供する。【解決手段】検査システム１は、不揮発性半導体記憶装置１０の実運用の前に、実運用前検査を行う。実運用前検査では、制御部３１は、記憶装置１０に所定データの書き込みおよび読み出しを行わせる。検査用誤り訂正部３４は、読み出した所定データに対して誤り訂正を行う。制御部３１は、所定データに対する誤り訂正の結果に、所定の選別基準を適用することによって、非良質ブロックを選別する。制御部３１は、選別した非良質ブロックを記憶装置１０内のブロック情報１４ａに登録する。メモリ制御部１５は、ブロック情報１４ａに基づいて非良質ブロックを特定し、非良質ブロック向けの対策を適用しつつメモリアレイ１１に対するアクセスを制御する。【選択図】図１
2014154186.tif 000002
【特許請求の範囲】
【請求項１】
不揮発性半導体記憶装置を検査する記憶装置検査システムであって、
前記不揮発性半導体記憶装置は、
複数のブロックに分割されているメモリアレイと、
前記複数のブロックのうちの非良質ブロックが登録されるブロック情報を、格納するブロック情報格納部と、
前記ブロック情報に基づいて前記非良質ブロックを特定し、前記非良質ブロック向けの対策を適用しつつ前記メモリアレイに対するアクセスを制御する、メモリ制御部と
を備え、
前記記憶装置検査システムは、
前記不揮発性半導体記憶装置を制御する制御部と、
前記不揮発性半導体記憶装置の検査用に設けられた検査用誤り訂正部と
を備え、
前記記憶装置検査システムは、前記不揮発性半導体記憶装置の実運用の前に、実運用前検査を行い、
前記実運用前検査は、
前記制御部が前記不揮発性半導体記憶装置に所定データの書き込みおよび読み出しを行わせるアクセス処理と、
前記検査用誤り訂正部が、読み出した前記所定データに対して誤り訂正を行う誤り訂正処理と、
前記制御部が、前記誤り訂正処理の結果に所定の選別基準を適用することによって前記非良質ブロックを選別する非良質ブロック選別処理と、
前記制御部が、選別した前記非良質ブロックを前記不揮発性半導体記憶装置内の前記ブロック情報に登録する非良質ブロック登録処理と
を含む、記憶装置検査システム。
【請求項２】
請求項１に記載の記憶装置検査システムであって、
前記検査用誤り訂正部の誤り訂正能力は、前記不揮発性半導体記憶装置に搭載された実運用向け誤り訂正部以上である、記憶装置検査システム。
【請求項３】
請求項１または請求項２に記載の記憶装置検査システムであって、
前記検査用誤り訂正部は、前記不揮発性半導体記憶装置の外部に設けられている、記憶装置検査システム。
【請求項４】
請求項１または請求項２に記載の記憶装置検査システムであって、
前記検査用誤り訂正部の誤り訂正能力は、前記不揮発性半導体記憶装置に搭載された実運用向け誤り訂正部よりも高く、
前記検査用誤り訂正部は、前記実運用向け誤り訂正部と共に前記不揮発性半導体記憶装置に設けられている、
記憶装置検査システム。
【請求項５】
請求項１または請求項２に記載の記憶装置検査システムであって、
前記検査用誤り訂正部として、前記不揮発性半導体記憶装置に搭載された実運用向け誤り訂正部を利用する、記憶装置検査システム。
【請求項６】
請求項１または請求項２に記載の記憶装置検査システムであって、
前記検査用誤り訂正部は、前記不揮発性半導体記憶装置に搭載された実運用向け誤り訂正部と同じ構成を有し前記不揮発性半導体記憶装置の外部に設けられている、記憶装置検査システム。
【請求項７】
請求項１〜請求項６のうちのいずれか１項に記載の記憶装置検査システムであって、
前記非良質ブロックは、前記不揮発性半導体記憶装置の前記実運用によって後天性不良ブロックになるおそれがある劣悪ブロックを含み、
前記非良質ブロック向けの対策は、前記劣悪ブロックを前記実運用中のアクセス対象から除外することを含み、
前記非良質ブロック選別処理は、前記非良質ブロックとして前記劣悪ブロックを選別する劣悪ブロック選別処理を含み、
前記非良質ブロック登録処理は、選別した前記劣悪ブロックを前記ブロック情報に登録する劣悪ブロック登録処理を含む、
記憶装置検査システム。
【請求項８】
請求項１〜請求項７のうちのいずれか１項に記載の記憶装置検査システムであって、
前記非良質ブロックは、前記不揮発性半導体記憶装置の前記実運用中にリフレッシュ処理が必要なリフレッシュ対象ブロックを含み、
前記非良質ブロック向けの対策は、前記実運用中の所定のタイミングで前記リフレッシュ対象ブロックに対して前記リフレッシュ処理を行うことを含み、
前記非良質ブロック選別処理は、前記非良質ブロックとして前記リフレッシュ対象ブロックを選別するリフレッシュ対象ブロック選別処理を含み、
前記非良質ブロック登録処理は、選別した前記リフレッシュ対象ブロックを前記ブロック情報に登録するリフレッシュ対象ブロック登録処理を含む、
記憶装置検査システム。
【請求項９】
請求項１〜請求項８のうちのいずれか１項に記載の記憶装置検査システムであって、
前記所定データは検査用データまたはPre-Code（正規データ）である、記憶装置検査システム。
【請求項１０】
不揮発性半導体記憶装置を検査する記憶装置検査方法であって、
前記不揮発性半導体記憶装置は、
複数のブロックに分割されているメモリアレイと、
前記複数のブロックのうちの非良質ブロックが登録されるブロック情報を、格納するブロック情報格納部と、
前記ブロック情報に基づいて前記非良質ブロックを特定し、前記非良質ブロック向けの対策を適用しつつ前記メモリアレイに対するアクセスを制御する、メモリ制御部と
を備え、
前記記憶装置検査方法は、
（ａ）前記不揮発性半導体記憶装置に所定データの書き込みおよび読み出しを行わせる工程と、
（ｂ）読み出した前記所定データに対して誤り訂正を行う工程と、
（ｃ）前記工程（ｂ）の結果に所定の選別基準を適用することによって前記非良質ブロックを選別する工程と、
（ｄ）選別した前記非良質ブロックを前記不揮発性半導体記憶装置内の前記ブロック情報に登録する工程と
を含み、
前記工程（ａ）〜（ｄ）を前記不揮発性半導体記憶装置の実運用の前に実行する、記憶装置検査方法。
【請求項１１】
請求項１０に記載の記憶装置検査方法であって、
前記工程（ｂ）を、前記不揮発性半導体記憶装置に搭載された実運用向け誤り訂正部以上の誤り訂正能力で実行する、記憶装置検査方法。
【請求項１２】
請求項１０または請求項１１に記載の記憶装置検査方法であって、
前記工程（ｂ）を、前記不揮発性半導体記憶装置に接続される機器の誤り訂正部によって実行する、記憶装置検査方法。
【請求項１３】
請求項１０または請求項１１に記載の記憶装置検査方法であって、
前記工程（ｂ）を、前記不揮発性半導体記憶装置に搭載された実運用向け誤り訂正部によって実行する、記憶装置検査方法。
【請求項１４】
請求項１０〜請求項１３のうちのいずれか１項に記載の記憶装置検査方法であって、
前記非良質ブロックは、前記不揮発性半導体記憶装置の前記実運用によって後天性不良ブロックになるおそれがある劣悪ブロックを含み、
前記非良質ブロック向けの対策は、前記劣悪ブロックを前記実運用中のアクセス対象から除外することを含み、
前記工程（ｃ）は、（ｃ−１）前記非良質ブロックとして前記劣悪ブロックを選別する工程を含み、
前記工程（ｄ）は、（ｄ−１）選別した前記劣悪ブロックを前記ブロック情報に登録する工程を含む、
記憶装置検査方法。
【請求項１５】
請求項１０〜請求項１４のうちのいずれか１項に記載の記憶装置検査方法であって、
前記非良質ブロックは、前記不揮発性半導体記憶装置の前記実運用中にリフレッシュ処理が必要なリフレッシュ対象ブロックを含み、
前記非良質ブロック向けの対策は、前記実運用中の所定のタイミングで前記リフレッシュ対象ブロックに対して前記リフレッシュ処理を行うことを含み、
前記工程（ｃ）は、（ｃ−２）前記非良質ブロックとして前記リフレッシュ対象ブロックを選別する工程を含み、
前記工程（ｄ）は、（ｄ−２）選別した前記リフレッシュ対象ブロックを前記ブロック情報に登録する工程を含む、
記憶装置検査方法。
【請求項１６】
請求項１０〜請求項１５のうちのいずれか１項に記載の記憶装置検査方法であって、
前記所定データは検査用データまたはPre-Code（正規データ）である、記憶装置検査方法。
【請求項１７】
複数のブロックに分割されているメモリアレイと、
前記複数のブロックのうちの非良質ブロックが登録されるブロック情報を、格納するブロック情報格納部と、
前記ブロック情報に基づいて前記非良質ブロックを特定し、前記非良質ブロック向けの対策を適用しつつ前記メモリアレイに対するアクセスを制御する、メモリ制御部と
を備え、
前記非良質ブロックは、請求項１〜請求項９のうちのいずれか１項に記載の記憶装置検査システムによって、または、請求項１０〜請求項１６のうちのいずれか１項に記載の記憶装置検査方法によって、検出され前記ブロック情報に登録されている、
不揮発性半導体記憶装置。
【請求項１８】
複数のブロックに分割されているメモリアレイと、
前記複数のブロックのうちの非良質ブロックが登録されるブロック情報を、格納するブロック情報格納部と、
前記ブロック情報に基づいて前記非良質ブロックを特定し、前記非良質ブロック向けの対策を適用しつつ前記メモリアレイに対するアクセスを制御する、メモリ制御部と
を備え、
前記非良質ブロックは、
先天性不良ブロックと、
前記ブロック情報に登録されていないブロックに比べて誤り発生傾向が強く、実運用によって後天性不良ブロックになるおそれがある劣悪ブロックと
を含み、
前記非良質ブロック向けの対策は、前記劣悪ブロックを前記実運用中のアクセス対象から除外することを含む、
不揮発性半導体記憶装置。
【請求項１９】
複数のブロックに分割されているメモリアレイと、
前記複数のブロックのうちの非良質ブロックが登録されるブロック情報を、格納するブロック情報格納部と、
前記ブロック情報に基づいて前記非良質ブロックを特定し、前記非良質ブロック向けの対策を適用しつつ前記メモリアレイに対するアクセスを制御する、メモリ制御部と
を備え、
前記非良質ブロックは、
先天性不良ブロックと、
前記ブロック情報に登録されていないブロックに比べて誤り発生傾向が強く、実運用中にリフレッシュ処理が必要なリフレッシュ対象ブロックと
を含み、
前記非良質ブロック向けの対策は、前記実運用中の所定のタイミングで前記リフレッシュ対象ブロックに対して前記リフレッシュ処理を行うことを含む、
不揮発性半導体記憶装置。
【請求項２０】
請求項１８または請求項１９に記載の不揮発性半導体記憶装置であって、
前記実運用中に使用する実運用向け誤り訂正部と、
前記実運用向け訂正部よりも高い誤り訂正能力を有し、前記ブロック情報に登録する前記非良質ブロックを検出するために前記実運用前に使用する、検査用誤り訂正部と
をさらに備える、不揮発性半導体記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、記憶装置検査システム、記憶装置検査方法および不揮発性半導体記憶装置に関する。
【背景技術】
【０００２】
不揮発性半導体記憶装置において、各メモリセルの情報消去に基づいて各メモリセルの劣化状況を判断する技術が、特許文献１に開示されている。なお、特許文献１には、劣化していると判断されるメモリセルに対して施すことにより、この劣化の進行を抑制する技術も開示されている。
【０００３】
また、不揮発性メモリセルの書込特性／消去特性が劣化した場合に、その劣化したメモリセルを冗長用のメモリセルまたはメモリセルブロックと置換する技術が、特許文献２に開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００２−２０８２８６号公報
【特許文献２】特開２００２−０７４９７８号公報
【特許文献３】特開２００８−２６２６１４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１，２の技術では、実運用前中にメモリセルの劣化状況を監視する必要がある。その結果、不揮発性半導体記憶装置の処理負担が増大する。
【０００６】
また、特許文献２の技術では、劣化したメモリセルを冗長用のメモリセルまたはメモリセルブロックと置換する処理が、メモリアクセス制御を煩雑化させる。その結果、不揮発性半導体記憶装置の処理負担が増大する。
【０００７】
なお、これらの問題を解決しうる技術の一つが、特許文献３に開示されている。
【０００８】
本発明は、特許文献３の技術とは別のアプローチによって、メモリアクセス制御の改良技術を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の第１の態様に係る記憶装置検査システムは、不揮発性半導体記憶装置を検査するシステムである。前記不揮発性半導体記憶装置は、複数のブロックに分割されているメモリアレイと、前記複数のブロックのうちの非良質ブロックが登録されるブロック情報を、格納するブロック情報格納部と、前記ブロック情報に基づいて前記非良質ブロックを特定し、前記非良質ブロック向けの対策を適用しつつ前記メモリアレイに対するアクセスを制御する、メモリ制御部とを含む。前記記憶装置検査システムは、前記不揮発性半導体記憶装置を制御する制御部と、前記不揮発性半導体記憶装置の検査用に設けられた検査用誤り訂正部とを含む。前記記憶装置検査システムは、前記不揮発性半導体記憶装置の実運用の前に、実運用前検査を行う。前記実運用前検査は、前記制御部が前記不揮発性半導体記憶装置に所定データの書き込みおよび読み出しを行わせるアクセス処理と、前記検査用誤り訂正部が、読み出した前記所定データに対して誤り訂正を行う誤り訂正処理と、前記制御部が、前記誤り訂正処理の結果に所定の選別基準を適用することによって前記非良質ブロックを選別する非良質ブロック選別処理と、前記制御部が、選別した前記非良質ブロックを前記不揮発性半導体記憶装置内の前記ブロック情報に登録する非良質ブロック登録処理とを含む。
【００１０】
本発明の第２の態様に係る記憶装置検査システムは、第１の態様に係る記憶装置検査システムであって、前記検査用誤り訂正部の誤り訂正能力は、前記不揮発性半導体記憶装置に搭載された実運用向け誤り訂正部以上である。
【００１１】
本発明の第３の態様に係る記憶装置検査システムは、第１または第２の態様に係る記憶装置検査システムであって、前記検査用誤り訂正部は、前記不揮発性半導体記憶装置の外部に設けられている。
【００１２】
本発明の第４の態様に係る記憶装置検査システムは、第１または第２の態様に係る記憶装置検査システムであって、前記検査用誤り訂正部の誤り訂正能力は、前記不揮発性半導体記憶装置に搭載された実運用向け誤り訂正部よりも高く、前記検査用誤り訂正部は、前記実運用向け誤り訂正部と共に前記不揮発性半導体記憶装置に設けられている。
【００１３】
本発明の第５の態様に係る記憶装置検査システムは、第１または第２の態様に係る記憶装置検査システムであって、前記検査用誤り訂正部として、前記不揮発性半導体記憶装置に搭載された実運用向け誤り訂正部を利用する。
【００１４】
本発明の第６の態様に係る記憶装置検査システムは、第１または第２の態様に係る記憶装置検査システムであって、前記検査用誤り訂正部は、前記不揮発性半導体記憶装置に搭載された実運用向け誤り訂正部と同じ構成を有し前記不揮発性半導体記憶装置の外部に設けられている。
【００１５】
本発明の第７の態様に係る記憶装置検査システムは、第１〜第６の態様のうちのいずれか１つに係る記憶装置検査システムであって、前記非良質ブロックは、前記不揮発性半導体記憶装置の前記実運用によって後天性不良ブロックになるおそれがある劣悪ブロックを含み、前記非良質ブロック向けの対策は、前記劣悪ブロックを前記実運用中のアクセス対象から除外することを含み、前記非良質ブロック選別処理は、前記非良質ブロックとして前記劣悪ブロックを選別する劣悪ブロック選別処理を含み、前記非良質ブロック登録処理は、選別した前記劣悪ブロックを前記ブロック情報に登録する劣悪ブロック登録処理を含む。
【００１６】
本発明の第８の態様に係る記憶装置検査システムは、第１〜第７の態様のうちのいずれか１つに係る記憶装置検査システムであって、前記非良質ブロックは、前記不揮発性半導体記憶装置の前記実運用中にリフレッシュ処理が必要なリフレッシュ対象ブロックを含み、前記非良質ブロック向けの対策は、前記実運用中の所定のタイミングで前記リフレッシュ対象ブロックに対して前記リフレッシュ処理を行うことを含み、前記非良質ブロック選別処理は、前記非良質ブロックとして前記リフレッシュ対象ブロックを選別するリフレッシュ対象ブロック選別処理を含み、前記非良質ブロック登録処理は、選別した前記リフレッシュ対象ブロックを前記ブロック情報に登録するリフレッシュ対象ブロック登録処理を含む。
【００１７】
本発明の第９の態様に係る記憶装置検査システムは、第１〜第８の態様のうちのいずれか１つに係る記憶装置検査システムであって、前記所定データは検査用データまたはPre-Code（正規データ）である。
【００１８】
本発明の第１０の態様に係る記憶装置検査方法は、不揮発性半導体記憶装置を検査する方法である。前記不揮発性半導体記憶装置は、複数のブロックに分割されているメモリアレイと、前記複数のブロックのうちの非良質ブロックが登録されるブロック情報を、格納するブロック情報格納部と、前記ブロック情報に基づいて前記非良質ブロックを特定し、前記非良質ブロック向けの対策を適用しつつ前記メモリアレイに対するアクセスを制御する、メモリ制御部とを含む。前記記憶装置検査方法は、（ａ）前記不揮発性半導体記憶装置に所定データの書き込みおよび読み出しを行わせる工程と、（ｂ）読み出した前記所定データに対して誤り訂正を行う工程と、（ｃ）前記工程（ｂ）の結果に所定の選別基準を適用することによって前記非良質ブロックを選別する工程と、（ｄ）選別した前記非良質ブロックを前記不揮発性半導体記憶装置内の前記ブロック情報に登録する工程とを含む。前記工程（ａ）〜（ｄ）を前記不揮発性半導体記憶装置の実運用の前に実行する。
【００１９】
本発明の第１１の態様に係る記憶装置検査方法は、第１０の態様に係る記憶装置検査方法であって、前記工程（ｂ）を、前記不揮発性半導体記憶装置に搭載された実運用向け誤り訂正部以上の誤り訂正能力で実行する。
【００２０】
本発明の第１２の態様に係る記憶装置検査方法は、第１０または第１１の態様に係る記憶装置検査方法であって、前記工程（ｂ）を、前記不揮発性半導体記憶装置に接続される機器の誤り訂正部によって実行する。
【００２１】
本発明の第１３の態様に係る記憶装置検査方法は、第１０または第１１の態様に係る記憶装置検査方法であって、前記工程（ｂ）を、前記不揮発性半導体記憶装置に搭載された実運用向け誤り訂正部によって実行する。
【００２２】
本発明の第１４の態様に係る記憶装置検査方法は、第１０〜第１３の態様のうちのいずれか１つに係る記憶装置検査方法であって、前記非良質ブロックは、前記不揮発性半導体記憶装置の前記実運用によって後天性不良ブロックになるおそれがある劣悪ブロックを含み、前記非良質ブロック向けの対策は、前記劣悪ブロックを前記実運用中のアクセス対象から除外することを含み、前記工程（ｃ）は、（ｃ−１）前記非良質ブロックとして前記劣悪ブロックを選別する工程を含み、前記工程（ｄ）は、（ｄ−１）選別した前記劣悪ブロックを前記ブロック情報に登録する工程を含む。
【００２３】
本発明の第１５の態様に係る記憶装置検査方法は、第１０〜第１４の態様のうちのいずれか１つに係る記憶装置検査方法であって、前記非良質ブロックは、前記不揮発性半導体記憶装置の前記実運用中にリフレッシュ処理が必要なリフレッシュ対象ブロックを含み、前記非良質ブロック向けの対策は、前記実運用中の所定のタイミングで前記リフレッシュ対象ブロックに対して前記リフレッシュ処理を行うことを含み、前記工程（ｃ）は、（ｃ−２）前記非良質ブロックとして前記リフレッシュ対象ブロックを選別する工程を含み、前記工程（ｄ）は、（ｄ−２）選別した前記リフレッシュ対象ブロックを前記ブロック情報に登録する工程を含む。
【００２４】
本発明の第１６の態様に係る記憶装置検査方法は、第１０〜第１５の態様のうちのいずれか１つに係る記憶装置検査方法であって、前記所定データは検査用データまたはPre-Code（正規データ）である。
【００２５】
本発明の第１７の態様に係る不揮発性半導体記憶装置は、複数のブロックに分割されているメモリアレイと、前記複数のブロックのうちの非良質ブロックが登録されるブロック情報を、格納するブロック情報格納部と、前記ブロック情報に基づいて前記非良質ブロックを特定し、前記非良質ブロック向けの対策を適用しつつ前記メモリアレイに対するアクセスを制御する、メモリ制御部とを含む。前記非良質ブロックは、第１〜第９の態様のうちのいずれか１つに係る記憶装置検査システムによって、または、第１０〜第１６の態様のうちのいずれか１つに係る記憶装置検査方法によって、検出され前記ブロック情報に登録されている。
【００２６】
本発明の第１８の態様に係る不揮発性半導体記憶装置は、複数のブロックに分割されているメモリアレイと、前記複数のブロックのうちの非良質ブロックが登録されるブロック情報を、格納するブロック情報格納部と、前記ブロック情報に基づいて前記非良質ブロックを特定し、前記非良質ブロック向けの対策を適用しつつ前記メモリアレイに対するアクセスを制御する、メモリ制御部とを含む。前記非良質ブロックは、先天性不良ブロックと、前記ブロック情報に登録されていないブロックに比べて誤り発生傾向が強く、実運用によって後天性不良ブロックになるおそれがある劣悪ブロックとを含み、前記非良質ブロック向けの対策は、前記劣悪ブロックを前記実運用中のアクセス対象から除外することを含む。
【００２７】
本発明の第１９の態様に係る不揮発性半導体記憶装置は、複数のブロックに分割されているメモリアレイと、前記複数のブロックのうちの非良質ブロックが登録されるブロック情報を、格納するブロック情報格納部と、前記ブロック情報に基づいて前記非良質ブロックを特定し、前記非良質ブロック向けの対策を適用しつつ前記メモリアレイに対するアクセスを制御する、メモリ制御部とを含む。前記非良質ブロックは、先天性不良ブロックと、前記ブロック情報に登録されていないブロックに比べて誤り発生傾向が強く、実運用中にリフレッシュ処理が必要なリフレッシュ対象ブロックとを含み、前記非良質ブロック向けの対策は、前記実運用中の所定のタイミングで前記リフレッシュ対象ブロックに対して前記リフレッシュ処理を行うことを含む。
【００２８】
本発明の第２０の態様に係る不揮発性半導体記憶装置は、第１８または第１９の態様に係る不揮発性半導体記憶装置であって、前記実運用中に使用する実運用向け誤り訂正部と、前記実運用向け訂正部よりも高い誤り訂正能力を有し、前記ブロック情報に登録する前記非良質ブロックを検出するために前記実運用前に使用する、検査用誤り訂正部とをさらに含む。
【発明の効果】
【００２９】
第１〜第９の態様によれば、不揮発性半導体記憶装置の実運用前に、非良質ブロックが選別され不揮発性半導体記憶装置内のブロック情報に登録される。不揮発性半導体記憶装置は実運用中に、そのブロック情報を参照することによって、非良質ブロック向けの対策を適用する。このため、非良質ブロックが存在する場合であっても、実運用中に良好な書き込みおよび読み出しを実現できる。
【００３０】
また、第１〜第９の態様によれば、実運用中にブロックの状態を監視する必要がなくなる。したがって、実運用中における不揮発性半導体記憶装置の処理負荷を軽減でき、その結果、アクセス動作の遅延の防止、消費電力の削減、等を図ることができる。また、実運用中のブロック状態監視が不要であることは、不揮発性半導体記憶装置においてそのような監視のための設計および回路を不要にできる。その結果、不揮発性半導体記憶装置について、動作設計の簡略化、回路規模の削減、回路コストの削減、等を図ることができる。また、動作設計の簡略化および回路規模の削減は、不揮発性半導体記憶装置の信頼性向上に資する。
【００３１】
特に第２の態様によれば、不揮発性半導体記憶装置の実運用において支障を来すおそれのあるレベルのブロックを、非良質ブロックとして検出できる。その結果、不揮発性半導体記憶装置の信頼性確保に資する。特に検査用誤り訂正部がより高い誤り訂正能力を有することによって、より高い信頼性を提供可能である。
【００３２】
また、第３の態様によれば、不揮発性半導体記憶装置のコストを抑制しつつ、上記の各種効果を得ることができる。
【００３３】
また、第４の態様によれば、不揮発性半導体記憶装置が接続される機器に、検査用誤り訂正部（実運用向け誤り訂正部よりも誤り訂正能力が高い）と同等能力の誤り訂正部が無い場合であっても、上記の各種効果を得ることができる。
【００３４】
また、第５の態様によれば、低コストで記憶装置検査システムを提供できる。
【００３５】
また、第７の態様によれば、実運用において劣悪ブロックをアクセス対象から除外することで、良好な書き込みおよび読み出しを実現できる。また、後天性不良ブロックの発生を実運用中に監視する処理、および、発生した後天性不良ブロックを実運用中に他のブロックで代替させる処理、を省略可能である。それにより、実運用中における不揮発性半導体記憶装置の処理負荷を軽減できる。
【００３６】
特に、発生した後天性不良ブロックを実運用中に他のブロックで代替させる処理は複雑であることに鑑みると、第７の態様によってそのような代替処理が不要になることは好ましい。具体的には、代替処理にかかる処理負荷が軽減でき、それによりアクセス動作の遅延の防止、消費電力の削減、等をさらに推進することができる。また、代替処理に関する設計および回路が不要になるので、不揮発性半導体記憶装置について、動作設計の簡略化、回路規模の削減、回路コストの削減、等をさらに推進することができる。また、動作設計の簡略化および回路規模の削減は不揮発性半導体記憶装置の信頼性向上に資するので、より高い信頼性を提供できる。
【００３７】
また、第８の態様によれば、実運用においてリフレッシュ対象ブロックにリフレッシュ処理を実行することで、良好な書き込みおよび読み出しを実現できる。また、リフレッシュ対象ブロックの発生を実運用中に監視する処理を省略可能である。それにより、実運用中における不揮発性半導体記憶装置の処理負荷を軽減できる。ここで、リフレッシュ対象ブロックの発生を監視するために読み出しアクセスを実運用中に継続的に実行すると、過多の読み出しアクセスによってメモリセルを劣化させてしまうおそれがある。これに対し、第７の態様によれば、そのような過多の読み出しアクセスを省略可能であり、過多の読み出しアクセスによる劣化を回避可能である。
【００３８】
第１０の態様によれば、第１の態様と同様の効果を得ることができる。
【００３９】
第１１の態様によれば、第２の態様と同様の効果を得ることができる。
【００４０】
第１２の態様によれば、第３の態様と同様の効果を得ることができる。
【００４１】
第１３の態様によれば、第５の態様と同様の効果を得ることができる。
【００４２】
第１４の態様によれば、第７の態様と同様の効果を得ることができる。
【００４３】
第１５の態様によれば、第８の態様と同様の効果を得ることができる。
【００４４】
第１６の態様によれば、第９の態様と同様の効果を得ることができる。
【００４５】
第１７の態様によれば、第１〜第１６の態様のいずれかと同様の効果を得ることができる。
【００４６】
第１８の態様によれば、第１および第７の態様と同様の効果を得ることができる。
【００４７】
第１９の態様によれば、第１および第８の態様と同様の効果を得ることができる。
【００４８】
第２０の態様によれば、第４の態様と同様の効果を得ることができる。
【００４９】
本発明の目的、特徴、局面、および利点は、以下の詳細な説明と添付図面とによって、より明白となる。
【図面の簡単な説明】
【００５０】
【図１】実施の形態１について記憶装置検査システムの構成を例示するブロック図である。
【図２】実施の形態１についてブロック情報を例示する概念図である。
【図３】実施の形態１について記憶装置検査システムの動作（実運用前検査）を例示するフローチャートである。
【図４】実施の形態２について記憶装置検査システムの構成を例示するブロック図である。
【図５】実施の形態３について記憶装置検査システムの構成を例示するブロック図である。
【図６】実施の形態４についてブロック情報を例示する概念図である。
【図７】実施の形態５についてブロック情報を例示する概念図である。
【発明を実施するための形態】
【００５１】
＜実施の形態１＞
図１に、実施の形態１に係る記憶装置検査システム１の構成を例示する。図１には、不揮発性半導体記憶装置１０がホスト機器３０に接続された状態を図示している。図１の例では、ホスト機器３０によって記憶装置検査システム１が提供される。なお、以下では「記憶装置検査システム」を「検査システム」と称し、「不揮発性半導体記憶装置」を「記憶装置」と称し、「ホスト機器」を「ホスト」と称する場合もある。
【００５２】
＜記憶装置１０＞
まず、記憶装置１０を説明する。なお、記憶装置１０の外観は特に限定されない。例えば、ＳＤカードのようなカード型であってもよいし、あるいは、回路基板に取り付けられる部品の状態であってもよい。また、記憶装置１０の実運用（換言すれば、通常使用）において、用途、格納する情報の種類、等も特に限定されない。
【００５３】
ここで、記憶装置１０の実運用とは、記憶装置としての本来的な機能（具体的には、情報の書き込みおよび読み出し）を利用した使用状態をいうものとする。換言すれば、出荷前の検査、起動時の検査、等は実運用に含めないものとする。
【００５４】
図１の例によれば、記憶装置１０は、メモリアレイ１１と、ホストインターフェース（以下「ホストＩ／Ｆ」とも称する）１２と、コマンド制御部１３と、ブロック情報格納部１４と、メモリ制御部１５とを含んでいる。
【００５５】
メモリアレイ１１は、例えばＮＡＮＤ型フラッシュメモリやＮＯＲ型フラッシュメモリのように、読み書き自在であり、電源供給が切断されても記憶内容が消えない不揮発性メモリである。メモリアレイ１１は複数のブロック１１ａに分割されており、このブロック単位でデータの書き込みおよび読み出しが行われる。各ブロック１１ａは複数のページに分割されており、各ページは複数のセルで構成されている。各セルはデータ記憶の最小単位を提供する。各セルの記憶容量は、１ビットであってもよいし、多ビット（２ビット以上）であってもよい。
【００５６】
ホストＩ／Ｆ１２は、記憶装置１０をホスト３０に接続するためのＩ／Ｆであり、例えばホスト３０側と記憶装置１０側との間の動作電圧や応答速度の相違を調整する。
【００５７】
コマンド制御部１３は、ホスト３０から送信されたコマンドをホストＩ／Ｆ１２を介して受信し、受信したコマンドを認識し、その認識結果に応じた処理を実行する。コマンド制御部１３による処理は、ブロック情報格納部１４に対する処理、および、メモリ制御部１５に対する処理を含む。
【００５８】
ブロック情報格納部１４は、ブロック情報１４ａを格納する記憶部である。ブロック情報格納部１４は、いわゆるメモリによって構成され、そのメモリは不揮発性であってもよいし、あるいは、揮発性であってもよい。
【００５９】
ここで、図２にブロック情報１４ａの概念図を示す。図２の例によれば、ブロック情報１４ａは、論物変換情報１４ｂと、非良質ブロック情報１４ｃとに大別される。論物変換情報１４ｂは、論理アドレスと物理アドレスとの変換を行うための情報であり、論理アドレスと物理アドレスとの対応付けが記述されている。
【００６０】
非良質ブロック情報１４ｃは、非良質ブロックに関する情報である。非良質ブロック情報１４ｃに登録する情報は、非良質ブロックを特定可能であれば、特に限定されない。例えば、非良質ブロックの物理アドレスを登録してもよいし、あるいは、非良質ブロックの論理アドレスを登録してもよい。
【００６１】
非良質ブロックは、記憶装置１０の実運用において取り扱いに留意を要する（換言すれば、所定の対策を要する）ブロック１１ａである。非良質ブロックは、例えば、実運用においてアクセスを禁止するブロック１１ａであるアクセス不可ブロックである。すなわち、非良質ブロック情報１４ｃには、アクセス不可ブロックに関するアクセス不可ブロック情報１４ｄが含まれる。また、図２の例によれば、アクセス不可ブロック情報１４ｄは、先天性不良ブロックに関する先天性不良ブロック情報１４ｅと、劣悪ブロックに関する劣悪ブロック情報１４ｆとに分類される。
【００６２】
ここで、メモリアレイ１１の不良として、先天性不良（「ハード不良」または「ハードエラー」とも称される）と、後天性不良（「ソフト不良」または「ソフトエラー」とも称される）とが挙げられる。
【００６３】
先天性不良では、メモリアレイ１１内のワードラインおよびビットラインが、独立的または複合的に、電気的なオープン状態または短絡状態となっている。また、ゲート酸化膜の著しい劣化も、先天性不良の原因となる。先天性不良は、初期テストの段階（例えば、ウェハーテストまたは／および出荷テストの段階）で比較的容易にスクリーニングできる。
【００６４】
このため、先天性不良ブロック（すなわち、先天性不良セルを有しているブロック１１ａ）には、例えば工場出荷時に、そのブロック１１ａ内の所定領域（例えば、フラグ領域）に不良ブロックであることを示す情報（例えば、論理値「Ｔｒｕｅ」）が記録される。これに対し、工場出荷時までに不良ブロックと判断されていないブロック１１ａについては、そのブロック１１ａの所定領域に、不良が検出されていないことを示す情報（例えば、論理値「Ｆａｌｓｅ」）が記録される。つまり、各ブロック１１ａの所定領域には、そのブロック１１ａが先天性不良ブロックであるか否かの識別情報が記録されている。したがって、そのような先天性不良ブロック識別情報から、各ブロック１１ａについて先天性不良ブロックであるか否かを識別可能である。
【００６５】
なお、先天性不良ブロックが存在しない場合、先天性不良ブロック情報１４ｅは省略可能である。
【００６６】
後天性不良は、初期テストの段階でスクリーニングされず、その後に発現する。このため、データ書き込み回数およびデータ消去回数が所定の保証回数に達する前に、換言すれば、記憶装置１０の寿命に達する前に、不良になる。後天性不良は、ワードライン等の上記の欠陥が、初期テストの段階では軽微であったが、実運用に伴って進行することにより、引き起こる。
【００６７】
ここで、記憶装置１０の実運用によって将来的に後天性不良ブロック（すなわち、後天性不良セルを有するブロック１１ａ）になるおそれがあるブロックを「劣悪ブロック」と称することにする。劣悪ブロックでは、良質ブロックと比べて、データ誤り（換言すれば、ビット誤り）の発生傾向が強い。このため、データ誤りの度合い（例えば、ビット誤り率）によって、劣悪ブロックと良質ブロックとを選別可能である。
【００６８】
ブロック情報１４ａは例えばテーブル形式によって管理される。但し、他のデータ形式を採用することも可能である。また、例えば、先天性不良ブロック情報１４ｅと劣悪ブロック情報１４ｆとを別々のテーブルに格納してもよいし、あるいは、それらの情報１４ｅ，１４ｆを単一のテーブルに格納してもよい。また、例えば、先天性不良ブロック情報１４ｅと劣悪ブロック情報１４ｆと論物変換情報１４ｂとを単一のテーブルに格納してもよい。
【００６９】
図１に戻り、メモリ制御部１５を説明する。図１の例では、メモリ制御部１５は、メモリアクセス部１５ａと、誤り訂正部１５ｂと、セレクタ１５ｃとを含んでいる。
【００７０】
メモリアクセス部１５ａは、コマンド制御部１３の制御の下、ブロック情報１４ａを参照しつつ、メモリアレイ１１に対するアクセス（具体的には、書き込み、読み出しおよび消去）を制御する。特に実運用中、メモリアクセス部１５ａは、ブロック情報１４ａに基づいて非良質ブロックを特定し、その非良質ブロック向けの対策を適用しつつ、アクセス制御を行う。非良質ブロック向け対策は、ここでは、先天性不良ブロックおよび劣悪ブロックを実運用中のアクセス対象から除外する処理である。
【００７１】
誤り訂正部１５ｂは、データの書き込みおよび読み出しの際に、誤り訂正に関する処理を実行する。
【００７２】
具体的には、誤り訂正部１５ｂは、書き込みデータの誤り訂正用データ（例えば、シンドローム）を所定方法によって生成する。生成された誤り訂正用データは、書き込みデータと共に、メモリアクセス部１５ａによって指定されたブロック１１ａに転送される。
【００７３】
また、誤り訂正部１５ｂは、メモリアクセス部１５ａの制御によってメモリアレイ１１から読み出されたデータと、それに付随する誤り訂正用データとを受け取る。そして、誤り訂正部１５ｂは、読み出しデータに対して、誤り訂正用データを使って、誤り検出を実行する。誤りが検出された場合、誤り訂正部１５ｂは、誤り訂正用データを使って、読み出しデータを訂正する。読み出しデータ（場合によっては、誤り訂正された読み出しデータ）は、誤り訂正用データと切り離されて、メモリアクセス部１５ａに転送される。
【００７４】
ここでは、誤り訂正部１５ｂがそれ専用に構成された回路によって実現される場合を例示する。すなわち、誤り訂正部１５ｂによって実現される各種手段または各種機能が、ハードソフトウェアによって実現される。なお、誤り訂正部１５ｂによって実現される各種手段または各種機能の一部または全部を、ソフトウェア（換言すれば、プログラムの実行）によって実現することも可能である。
【００７５】
セレクタ１５ｃは、書き込みデータおよび読み出しデータに、誤り訂正部１５ｂによる上記処理を実行するか否かを選択する。かかる選択は、コマンド制御部１３によって（より具体的には、ホスト３０から送信される選択指示をコマンド制御部１３が認識することによって）制御される。後述するが、記憶装置１０の実運用では誤り訂正部１５ｂの機能がＯＮに設定され、記憶装置１０の検査では誤り訂正部１５ｂの機能がＯＦＦに設定される。
【００７６】
図１の例では、誤り訂正部１５ｂを経由した書き込みデータと、誤り訂正部１５ｂを経由しない書き込みデータとが、セレクタ１５ｃに入力され、それらのうちの一方がセレクタ１５ｃによって選択され、メモリアレイ１１に転送される。また、図１の例では、メモリアレイ１１から読み出したデータを、誤り訂正部１５ｂを経由してメモリアクセス部１５ａへ転送するか、あるいは、誤り訂正部１５ｂを経由せずにメモリアクセス部１５ａへ転送するかが、セレクタ１５ｃによって選択される。但し、誤り訂正部１５ｂのＯＮ／ＯＦＦ制御を、他の手法で行ってもよい。
【００７７】
＜ホスト３０＞
ホスト３０は、例えば、記憶装置１０の検査機器である。あるいは、ホスト３０は、記憶装置１０を実運用目的で利用する各種機器（例えば、携帯情報端末）であってもよい。すなわち、ホスト３０の具体的形態は特に限定されないが、検査システム１（実施の形態１ではホスト３０によって具現化される）による検査は、実運用前（具体的には、出荷前、起動時、等）に実行される。
【００７８】
図１の例によれば、ホスト３０は、制御部３１と、ＲＡＭ（Random Access Memory）３２と、メモリコントローラ３３と、検査用誤り訂正部３４と、シンドローム格納部３５と、検査結果格納部３６とを含んでいる。これらの要素３１〜３６は、図１の例では、バス３７を介して互いに接続されている。
【００７９】
制御部３１は、ホスト３０自身および記憶装置１０を制御する。ここでは、制御部３１が、マイクロコンピュータと、当該マイクロコンピュータが実行するプログラムが格納されたプログラム格納部とで構成される場合を例示する。なお、プログラム格納部は、ＲＯＭ（Read Only Memory）、書き換え可能かつ不揮発性の半導体メモリ、等で構成可能である。
【００８０】
この場合、マイクロコンピュータがプログラムに記述されている各処理ステップ（換言すれば手順）を実行する。これにより、マイクロコンピュータは処理ステップに対応した各種手段として機能し、または、マイクロコンピュータによって処理ステップに対応した各種機能が実現される。すなわち、制御部３１によって実現される各種手段または各種機能が、ソフトウェアによって実現される。なお、制御部３１によって実現される各種手段または各種機能の一部または全部を、ハードウェアによって実現することも可能である。
【００８１】
ＲＡＭ３２は、制御部３１等が利用するデータ等を格納し、また、制御部３１がプログラムを実行する際の作業領域を提供する。
【００８２】
メモリコントローラ３３は、ホスト３０を記憶装置１０（より具体的には、ホストＩ／Ｆ１２）に接続するためのＩ／Ｆであり、例えばホスト３０側と記憶装置１０側との間の動作電圧や応答速度の相違を調整する。
【００８３】
誤り訂正部３４は、基本的には、記憶装置１０の誤り訂正部１５ｂと同様に構成可能である。但し、記憶装置１０の誤り訂正部１５ｂは、記憶装置１０の実運用向けであるのに対し、ホスト３０の誤り訂正部３４は検査用である。検査用誤り訂正部３４については、後述する。
【００８４】
シンドローム格納部３５は、誤り訂正部３４によって生成されるシンドローム（誤り訂正用データの一例である）を格納するための記憶部である。検査結果格納部３６は、検査システム１が記憶装置１０を検査した結果を格納するための記憶部である。これらの格納部３５，３６は例えばＲＡＭで構成可能である。なお、図１の例ではこれらの格納部３５，３６がＲＡＭ３２とは別個に設けられているが、格納部３５，３６の一方または両方をＲＡＭ３２の記憶領域の一部を使って構成してもよい。
【００８５】
＜検査システム１の動作＞
図１および図２に加え、図３のフローチャートを参照しつつ、検査システム１が記憶装置１０の実運用の前に行う実運用前検査Ｓ１０を例示する。なお、既述のように、実施の形態１では、検査システム１はホスト３０によって具現化される。
【００８６】
＜検査モードの設定＞
まず、検査システム１は、記憶装置１０を検査モードに設定する（ステップＳ１１）。
【００８７】
具体的には、制御部３１は、実運用向け誤り訂正部１５ｂの機能を停止させるための停止コマンドを、メモリコントローラ３３に対して発行する。メモリコントローラ３３はその停止コマンドをホストＩ／Ｆ１２に送信し、ホストＩ／Ｆ１２は、受信した停止コマンドをコマンド制御部１３に転送する。
【００８８】
コマンド制御部１３は、その停止コマンドを認識し、メモリ制御部１５に停止制御信号を出力する。メモリ制御部１５は停止制御信号に従って、記憶装置１０における誤り訂正部１５ｂの機能を停止させる。図１の例では、セレクタ１５ｃが停止制御信号に従って、誤り訂正部１５ｂとメモリアレイ１１との間の経路をＯＦＦにすると共にメモリアクセス部１５ａとメモリアレイ１との間の経路をＯＮにすることにより、記憶装置１０における誤り訂正部１５ｂの機能が停止される。
【００８９】
＜先天性不良ブロック情報の格納＞
次に、検査システム１は、先天性不良ブロック情報１４ｅをブロック情報格納部１４に格納する（ステップＳ１２）。換言すれば、先天性不良ブロック情報１４ｅをブロック情報１４ａに登録する。
【００９０】
具体的には、制御部３１は、先天性不良ブロック検出コマンドを、メモリコントローラ３３に対して発行する。メモリコントローラ３３は、その先天性不良ブロック検出コマンドをホストＩ／Ｆ１２に送信し、ホストＩ／Ｆ１２は、受信した先天性不良ブロック検出コマンドをコマンド制御部１３に転送する。
【００９１】
コマンド制御部１３は、その先天性不良ブロック検出コマンドを認識し、メモリ制御部１５に、検出対象とするブロック１１ａのアドレスと、読み出し制御信号と、を出力する。メモリ制御部１５（より具体的には、メモリアクセス部１５ａ）は、メモリアレイ１１に対して、指定されたブロック１１ａの先天性不良ブロック識別情報（既述のように、例えば工場出荷時までに各ブロック１１ａに記録されている）の読み出し制御を行う。メモリアレイ１１は、指定されたブロック１１ａに記録されている上記識別情報を、メモリ制御部１５（メモリアクセス部１５ａ）に出力する。メモリ制御部１５（メモリアクセス部１５ａ）はメモリアレイ１１から取得した先天性不良ブロック識別情報をホストＩ／Ｆ１２に転送し、ホストＩ／Ｆ１２は、取得した識別情報をメモリコントローラ３３に送信する。制御部３１は、メモリコントローラ３３が取得した先天性不良ブロック識別情報を、ＲＡＭ３２に格納する。
【００９２】
検査システム１は、全てのブロック１１ａの先天性不良ブロック識別情報がＲＡＭ３２に格納されるまで、制御部３１が先天性不良ブロック検出コマンドを発行するステップから、先天性不良ブロック識別情報をＲＡＭ３２に格納するステップまでを繰り返す。
【００９３】
全てのブロック１１ａの先天性不良ブロック識別情報がＲＡＭ３２に格納されたならば、制御部３１は、ＲＡＭ３２内のそれらの識別情報を、先天性不良ブロック情報１４ｅとして、記憶装置１０へ送信する。すなわち、制御部３１は、先天性不良ブロック情報１４ｅとブロック情報格納コマンドとを、メモリコントローラ３３に対して発行する。
【００９４】
ここで、先天性不良ブロック情報１４ｅは、先天性不良ブロックを特定可能であればよい。このため、先天性不良ブロック情報１４ｅは、例えば、全てのブロック１１ａの情報（より具体的には、ブロック番号と先天性不良ブロック識別情報とを１セットにした情報）によって構成可能である。あるいは、例えば、先天性不良ブロックだけの情報（より具体的には、ブロック番号）によって、先天性不良ブロック情報１４ｅを構成してもよい。
【００９５】
メモリコントローラ３３は、先天性不良ブロック情報１４ｅおよびブロック情報格納コマンドをホストＩ／Ｆ１２に送信し、ホストＩ／Ｆ１２は、受信した先天性不良ブロック情報１４ｅおよびブロック情報格納コマンドをコマンド制御部１３に転送する。
【００９６】
コマンド制御部１３は、そのブロック情報格納コマンドを認識し、ブロック情報格納部１４に対して、先天性不良ブロック情報１４ｅの書き込み制御を行う。これにより、ブロック情報１４ａに先天性不良ブロック情報１４ｅが登録される。先天性不良ブロック情報１４ｅは、メモリ制御部１５によって適宜、読み出され、メモリ制御部１５による制御に利用される。
【００９７】
＜劣悪ブロックの検出＞
次に、検査システム１は、劣悪ブロックを検出する（ステップＳ１３）。このステップＳ１３は、所定データを使ってアクセス処理を行うステップＳ１３ａと、ステップＳ１３ａで使った所定データに対して誤り訂正処理を行うステップＳ１３ｂと、ステップＳ１３ｂの結果に基づいて劣悪ブロック選別処理を行うステップＳ１３ｃとに大別される。
【００９８】
概略として、上記アクセス処理は、制御部３１が記憶装置１０に、所定データの書き込みおよび読み出しを行わせる処理である。また、上記誤り訂正処理は、検査用誤り訂正部３４が、読み出した所定データに対して誤り訂正を行う処理である。また、上記劣悪ブロック選別処理は、制御部３１が、誤り訂正処理の結果に所定の選別基準を適用することによって、劣悪ブロックを選別する処理である。
【００９９】
ここで、上記所定データは検査用データまたはPre-Code（正規データ）である。なお、検査データとして例えば、インクリメントデータ、デクリメントデータ、千鳥データ（５５ｈ、ＡＡｈ、Ａ５ｈ、５Ａｈ）を利用可能である。
【０１００】
＜所定データの書き込みと読み出し＞
ステップＳ１３ａは、例えば次のように行われる。まず、制御部３１は、検査用誤り訂正部３４とメモリコントローラ３３とに、所定サイズの所定データを出力する。
【０１０１】
誤り訂正部３４は、その所定データのシンドローム（誤り訂正用データの一例である）を所定方法によって生成する。生成されたシンドロームは、誤り訂正部３４によって、または、制御部３１によって、シンドローム格納部３５に格納される。
【０１０２】
また、制御部３１は、書き込みコマンドを、メモリコントローラ３３に対して発行する。メモリコントローラ３３は、その書き込みコマンドと上記所定データを、ホストＩ／Ｆ１２に送信し、ホストＩ／Ｆ１２は、受信した書き込みコマンドと所定データをコマンド制御部１３に転送する。
【０１０３】
コマンド制御部１３は、その書き込みコマンドを認識し、メモリ制御部１５に書き込みページアドレスと書き込み制御信号を出力する。メモリ制御部１５（メモリアクセス部１５ａ）は、ブロック情報格納部１４内の先天性不良ブロック情報１４ｅに基づいて書き込みページアドレスを補正する（換言すれば、先天性不良ブロックを避けつつ論物変換を行う）。また、メモリ制御部１５（メモリアクセス部１５ａ）は、ホストＩ／Ｆ１２が受信した所定データを取得する。そして、メモリ制御部１５（メモリアクセス部１５ａ）は、メモリアレイ１１に対して、所定データの書き込み制御を行う。なお、実運用向け誤り訂正部１５ｂの機能はＯＦＦになっているので、所定データは誤り訂正部１５ｂによって処理されない状態で、メモリアレイ１１に書き込まれる。
【０１０４】
その後、制御部３１は、所定データを書き込んだ記憶領域に対する読み出しコマンドを、メモリコントローラ３３に対して発行する。メモリコントローラ３３は、その読み出しコマンドをホストＩ／Ｆ１２に送信し、ホストＩ／Ｆ１２は、受信した読み出しコマンドをコマンド制御部１３に転送する。
【０１０５】
コマンド制御部１３は、その読み出しコマンドを認識し、メモリ制御部１５に読み出しページアドレスと読み出し制御信号を出力する。メモリ制御部１５（メモリアクセス部１５ａ）は、ブロック情報格納部１４内の先天性不良ブロック情報１４ｅに基づいて読み出しページアドレスを補正する（換言すれば、論物変換を行う）。メモリ制御部１５（メモリアクセス部１５ａ）は、メモリアレイ１１に対して、所定データの読み出し制御を行う。メモリアレイ１１は、その読み出し制御に従って読み出したデータを、メモリ制御部１５に出力する。なお、実運用向け誤り訂正部１５ｂの機能はＯＦＦになっているので、読み出された所定データは、誤り訂正部１５ｂによって処理されない状態で、メモリアクセス部１５ａに転送される。
【０１０６】
メモリ制御部１５（メモリアクセス部１５ａ）は、読み出した所定データをホストＩ／Ｆ１２に転送し、ホストＩ／Ｆ１２は、その読み出した所定データをメモリコントローラ３３に送信する。
【０１０７】
＜読み出した所定データの誤り訂正＞
ステップＳ１３ｂは、例えば次のように行われる。制御部３１は、メモリコントローラ３３が取得した、読み出した所定データを、検査用誤り訂正部３４に転送する。また、制御部３１は、シンドローム格納部３５に格納しておいたシンドローム（所定データを書き込む際に作成しておいたシンドローム）を、検査用誤り訂正部３４に転送する。
【０１０８】
そして、誤り訂正部３４は、シンドロームを使って、読み出した所定データの誤りを検出し、誤り検出の結果として誤り発生傾向を求める。例えば、誤り発生傾向として、誤り発生率（より具体的には、誤りビット数）を算出する。なお、検査用の誤り検出では、“０”から“１”へのビット状態変化を誤りとしてカウントしないという規則を採用してもよい。逆に、“１”から“０”へのビット状態変化を誤りとしてカウントしないという規則を採用してもよい。
【０１０９】
ステップＳ１３ａ，１３ｂは、メモリアレイ１１内の全ての記憶領域について検査が終了するまで、繰り返される。
【０１１０】
＜劣悪ブロックの選別＞
ステップＳ１３ｃは、例えば次のように行われる。制御部３１は、ステップＳ１３ｂによって得られた誤り発生率に対して、所定の選別基準を適用することによって、劣悪ブロックを選別する。そして、制御部３１は、劣悪ブロックとして選別したブロック１１ａを特定する情報（例えばブロック番号）を、劣悪ブロック情報１４ｆとして、検査結果格納部３６に格納する。
【０１１１】
所定の選別基準の一例は、誤り発生率の高い方から降順に所定個数のブロック１１を、劣悪ブロックとして選別するという基準である。また、所定閾値よりも誤り発生率が高いブロック１１ａを劣悪ブロックとして選別するという基準を、所定の選別基準として採用してもよい。
【０１１２】
また、劣悪ブロックのブロック番号を検査結果格納部３６に格納する処理は、各ブロック１１ａの誤り発生率を順次ＲＡＭ３２等に蓄積していき全てのブロック１１ａの誤り発生率が出揃った後に、行うことが可能である。あるいは、各ブロック１１ａの誤り発生率が得られる度に、検査結果格納部３６の内容を更新していく手法を採用してもよい。
【０１１３】
＜劣悪ブロックの登録＞
次に、検査システム１は、劣悪ブロック情報１４ｆを、記憶装置１０内のブロック情報格納部１４に登録する（ステップＳ１４）。換言すれば、劣悪ブロック情報１４ｆをブロック情報１４ａに登録する。
【０１１４】
具体的には、制御部３１は、検査結果格納部３６に格納されている劣悪ブロック情報１４ｆと、ブロック情報格納コマンドとを、メモリコントローラ３３に対して発行する。メモリコントローラ３３は、そのブロック情報格納コマンドと劣悪ブロック情報１４ｆをホストＩ／Ｆ１２に送信し、ホストＩ／Ｆ１２は、受信したブロック情報格納コマンドと劣悪ブロック情報１４ｆをコマンド制御部１３に転送する。
【０１１５】
コマンド制御部１３は、そのブロック情報格納コマンドを認識し、ブロック情報格納部１４に対して、劣悪ブロック情報１４ｆの書き込み制御を行う。これにより、ブロック情報１４ａに劣悪ブロック情報１４ｆが登録される。劣悪ブロック情報１４ｆは、メモリ制御部１５によって適宜、読み出され、メモリ制御部１５による制御に利用される。
【０１１６】
劣悪ブロック情報１４ｆの登録後のこの段階で、ブロック情報１４ａは（より具体的には、アクセス不可ブロック情報１４ｄは）先天性不良ブロック情報１４ｅと劣悪ブロック情報１４ｆとが登録された状態になる。
【０１１７】
＜実運用モードの設定＞
次に、検査システム１は、記憶装置１０を実運用モードに設定する（ステップＳ１５）。
【０１１８】
具体的には、制御部３１は、実運用向け誤り訂正部１５ｂの機能を開始させるための開始コマンドを、メモリコントローラ３３に対して発行する。メモリコントローラ３３はその開始コマンドをホストＩ／Ｆ１２に送信し、ホストＩ／Ｆ１２は、受信した開始コマンドをコマンド制御部１３に転送する。
【０１１９】
コマンド制御部１３は、その開始コマンドを認識し、メモリ制御部１５に開始制御信号を出力する。メモリ制御部１５は開始制御信号に従って、記憶装置１０における誤り訂正部１５ｂの機能を開始させる。図１の例では、セレクタ１５ｃが開始制御信号に従って、誤り訂正部１５ｂとメモリアレイ１１との間の経路をＯＮにすると共にメモリアクセス部１５ａとメモリアレイ１との間の経路をＯＦＦにすることにより、記憶装置１０における誤り訂正部１５ｂの機能が開始される。
【０１２０】
ステップＳ１１〜Ｓ１５の完了により、記憶装置１０は実運用が可能な状態になる。
【０１２１】
このように、記憶装置１０の実運用前に、劣悪ブロックが選別され記憶装置１０内のブロック情報１４ａに登録される。記憶装置１０は実運用中に、そのブロック情報１４ａを参照することによって、劣悪ブロック向けの対策（具体的には、劣悪ブロックをアクセス対象から除外するという対策）を適用する。このため、劣悪ブロックが存在する場合であっても、実運用中に良好な書き込みおよび読み出しを実現できる。
【０１２２】
また、実運用中にブロック１１ａの状態を監視する必要がなくなる。したがって、実運用中における記憶装置１０の処理負荷を軽減でき、その結果、アクセス動作の遅延の防止、消費電力の削減、等を図ることができる。また、実運用中のブロック状態監視が不要であることは、記憶装置１０においてそのような監視のための設計および回路を不要にできる。その結果、記憶装置１０について、動作設計の簡略化、回路規模の削減、回路コストの削減、等を図ることができる。また、動作設計の簡略化および回路規模の削減は、不揮発性半導体記憶装置の信頼性向上に資する。
【０１２３】
特に、発生した後天性不良ブロックを実運用中に他のブロックで代替させる処理は複雑である。このため、実運用前の検査で劣悪ブロックを事前に選別しておき、実運用中にはその劣悪ブロック向けの対策（具体的には、劣悪ブロックをアクセス対象から除外するという対策）を適用することによって、後天性不良ブロックの代替処理が不要になることは好ましい。具体的には、代替処理にかかる処理負荷が軽減でき、それによりアクセス動作の遅延の防止、消費電力の削減、等をさらに推進することができる。また、代替処理に関する設計および回路が不要になるので、記憶装置１０について、動作設計の簡略化、回路規模の削減、回路コストの削減、等をさらに推進することができる。また、動作設計の簡略化および回路規模の削減は記憶装置１０の信頼性向上に資するので、より高い信頼性を提供できる。
【０１２４】
また、検査用誤り訂正部３４は、記憶装置１０に接続される機器であるホスト３０に設けられている、すなわち記憶装置１０の外部に設けられている。このため、記憶装置１０に検出用誤り訂正部３４を設ける必要がないので、記憶装置１０のコストを抑制しつつ、上記の各種効果を得ることができる。
【０１２５】
なお、検査用誤り訂正部３４が記憶装置１０の外部に設けられていることに鑑みれば、原理的には、実運用向け誤り訂正部１５ｂが省略された記憶装置１０に対しても、実運用前検査Ｓ１０を適用可能である。
【０１２６】
ここで、検査用誤り訂正部３４の誤り訂正能力が、実運用向け誤り訂正部１５ｂの誤り訂正能力と同様である場合、記憶装置１０の実運用において支障を来すおそれのあるレベルのブロック１１ａを、劣悪ブロックとして検出できる。その結果、記憶装置１０の信頼性確保に資する。特に検査用誤り訂正部３４の誤り訂正能力が実運用向け誤り訂正部１５ｂの誤り訂正能力よりも高い場合、劣悪ブロックをより高い検出能力で以て検出でき、より高い信頼性を提供可能である。
【０１２７】
なお、誤り訂正能力は各種の指標で評価可能である。例えば、所定データサイズの符号長における誤りビット数の総数（換言すれば、所定データサイズの符号長に対して検出可能な誤りビットの最大数）を、上記指標とすることが可能である。また、ページサイズの符号長またはブロックサイズの符号長を基準にして、上記指標を定義してもよい。また、複数の指標によって、誤り訂正能力を評価してもよい。
【０１２８】
＜実施の形態２＞
実施の形態２では、実施の形態１で例示した検査用誤り訂正部３４とシンドローム格納部３５と検査結果格納部３６とを、記憶装置１０内の要素を利用して実現する例を説明する。図４に、実施の形態２に係る検査システム１０１の構成を例示する。
【０１２９】
図４の例において、ホスト１３０は、図１のホスト３０から、検査用誤り訂正部３４とシンドローム格納部３５と検査結果格納部３６とが省略された構成を有している。また、記憶装置１１０は、図１の記憶装置１０においてメモリ制御部１５をメモリ制御部１１５に変更した構成を有している。メモリ制御部１１５は、図１のメモリ制御部１５からセレクタ１５ｃを省略した構成を有している。
【０１３０】
図４の例では、記憶装置１０に搭載された実運用向け誤り訂正部１５ｂを、検査用誤り訂正部としても利用する。また、実運用前検査Ｓ１０（図３参照）において生成されるシンドロームを、メモリアレイ１１の所定記憶領域（例えばサイドバンド）に格納する。また、実運用前検査Ｓ１０において得られる検査結果を、ブロック情報格納部１４に格納する。
【０１３１】
この場合、検査システム１０１は、ホスト１３０と、誤り訂正部１５ｂと、メモリアレイ１１の所定記憶領域と、ブロック情報格納部１４とによって構成される。検査システム１０１においても実施の形態１と同様に実運用前検査Ｓ１０が実行され、実施の形態１で説明した各種効果を得ることができる。
【０１３２】
特に実施の形態２によれば、検査システム１０１を、図１の検査システム１と比べて、低コストで提供できる。
【０１３３】
＜実施の形態３＞
実施の形態３では、実施の形態２の変形例を説明する。図５に、実施の形態３に係る検査システム２０１の構成を例示する。
【０１３４】
図５の例において、ホスト１３０は図４と同様の構成を有している。また、記憶装置２１０は、図４の記憶装置１１０においてメモリ制御部１１５をメモリ制御部２１５に変更した構成を有している。メモリ制御部２１５は、図４のメモリ制御部１１５に、図１の検査用誤り訂正部３４と、セレクタ１５ｄとを追加した構成を有している。
【０１３５】
なお、図５の例では、検査用誤り訂正部３４の誤り訂正能力は、実運用向け誤り訂正部１５ｂよりも高いものとする。また、セレクタ１５ｄは、図１のセレクタ１５ｃに対応し、検査時には検査用誤り訂正部３４を選択し、実運用時には実運用向け誤り訂正部１５ｂを選択するように制御される。
【０１３６】
この場合、検査システム２０１は、ホスト１３０と、検査用誤り訂正部３４（記憶装置２１０に搭載されている）と、メモリアレイ１１の所定記憶領域と、ブロック情報格納部１４とによって構成される。検査システム２０１においても実施の形態１，２と同様に実運用前検査Ｓ１０が実行され、実施の形態１，２で説明した各種効果を得ることができる。
【０１３７】
特に実施の形態３によれば、記憶装置２１０が接続されるホスト１３０に、検査用誤り訂正部３４（実運用向け誤り訂正部１５ｂよりも誤り訂正能力が高い）と同等能力の誤り訂正部が無い場合であっても、上記の各種効果を得ることができる。
【０１３８】
＜実施の形態４＞
実施の形態１で例示した検査システム１は、劣悪ブロックに代えて、リフレッシュ対象ブロック向けに利用することも可能である。リフレッシュ対象ブロックは、記憶装置１０の実運用中にリフレッシュ処理（電荷を補充する処理）が必要なブロック１１ａであり、非良質ブロックに分類される。
【０１３９】
この場合、実運用中に行われる劣悪ブロック向け対策に代えて、実運用中の所定のタイミングでリフレッシュ対象ブロックに対してリフレッシュ処理を行うという、リフレッシュ対象向け対策を実行することになる。
【０１４０】
また、劣悪ブロック選別処理（図３のステップＳ１３ｃ参照）は、非良質ブロックとしてリフレッシュ対象ブロックを選別するリフレッシュ対象ブロック選別処理と改称される。同様に、劣悪ブロック登録処理（図３のステップＳ１４参照）は、選別したリフレッシュ対象ブロックをブロック情報１４ａに登録するリフレッシュ対象ブロック登録処理と改称される。
【０１４１】
図６に、実施の形態４におけるブロック情報１４ａの概念図を示す。図６の例によれば、非良質ブロック情報１４ｃは、先天性不良ブロック情報１４ｅ（アクセス不可ブロック情報１４ｄに分類される）と、リフレッシュ対象ブロック情報（リフレッシュ対象ブロックを特定する情報）１４ｇとに大別される。
【０１４２】
実施の形態４によれば、実施の形態１，２で説明した各種効果を得ることができる。
【０１４３】
特に、実運用においてリフレッシュ対象ブロックにリフレッシュ処理を実行することで、良好な書き込みおよび読み出しを実現できる。また、リフレッシュ対象ブロックの発生を実運用中に監視する処理を省略可能である。それにより、実運用中における記憶装置１０の処理負荷を軽減できる。
【０１４４】
さらに、リフレッシュ対象ブロックの発生を監視するために読み出しアクセスを実運用中に継続的に実行すると、過多の読み出しアクセスによってメモリセルを劣化させてしまうおそれがある。これに対し、実施の形態４によれば、そのような過多の読み出しアクセスを省略可能であり、過多の読み出しアクセスによる劣化を回避可能である。
【０１４５】
なお、実施の形態２，３で例示した検査システム１０１，２０１も、リフレッシュ対象ブロック向けに利用可能である。
【０１４６】
＜実施の形態５＞
実施の形態４は実施の形態１〜３と組み合わせることが可能であり、実施の形態１〜４で説明した各種の効果を得ることができる。
【０１４７】
例えば、誤り発生率の高い方から降順に所定個数のブロック１１を、劣悪ブロックとして選別し、それに引き続く所定個数のブロック１１を、リフレッシュ対象ブロックとして選別する。あるいは、誤り発生率が第１閾値よりも高いブロック１１ａを、劣悪ブロックとして選別し、誤り発生率が第１閾値以下かつ第２閾値よりも高いブロック１１ａを、リフレッシュ対象ブロックとして選別してもよい。なお、第１閾値および第２閾値は予め設定され、第１閾値の方が第２閾値よりも大きいものとする。
【０１４８】
図７に、実施の形態５におけるブロック情報１４ａの概念図を示す。図７の例によれば、非良質ブロック情報１４ｃはアクセス不可ブロック情報１４ｄとリフレッシュ対象ブロック情報１４ｇとに分類され、アクセス不可ブロック情報１４ｄは先天性不良ブロック情報１４ｅと劣悪ブロック情報１４ｆとに分類される。
【０１４９】
＜変形例＞
本発明は詳細に説明されたが、上記した説明は、すべての局面において、例示であって、本発明がそれに限定されるものではない。例示されていない無数の変形例が、本発明の範囲から外れることなく想定され得るものと解される。
【符号の説明】
【０１５０】
１，１０１，２０１  記憶装置検査システム
１０，１１０，２１０  不揮発性半導体記憶装置
１１  メモリアレイ
１１ａ  ブロック
１４  ブロック情報格納部
１４ａ  ブロック情報
１４ｄ  先天性不良ブロック情報
１４ｅ  劣悪ブロック情報
１５，１１５，２１５  メモリ制御部
１５ｂ  実運用向け誤り訂正部
３１  制御部
３４  検査用誤り訂正部
Ｓ１０  実運用前検査
Ｓ１３ａ  アクセス処理
Ｓ１３ｂ  誤り訂正処理
Ｓ１３ｃ  非良質ブロック（劣悪ブロック、リフレッシュ対象ブロック）選別処理
Ｓ１４  非良質ブロック（劣悪ブロック、リフレッシュ対象ブロック）登録処理
【図１】
2014154186.tif 000003
【図２】
2014154186.tif 000004
【図３】
2014154186.tif 000005
【図４】
2014154186.tif 000006
【図５】
2014154186.tif 000007
【図６】
2014154186.tif 000008
【図７】
2014154186.tif 000009