(57)【要約】【課題】メモリセルとしてバイト単位のアクセスが可能であり、求められるアクセスに対して最適な単位でＥＣＣ処理を行うことが可能な不揮発性メモリ、メモリコントローラ、不揮発性メモリのアクセス方法、およびプログラムを提供する。【解決手段】ワード単位でアクセス可能で固定レイテンシでアクセス可能な第１アクセスモードと可変レイテンシでアクセス可能な第２アクセスモードによりアクセス可能な不揮発性メモリセルアレイを少なくとも含む不揮発性メモリセルデバイスと、第１アクセス経路に配置され、第１アクセスモード時にメモリセルアレイから出力されたデータに対してＥＣＣを適用した誤り検出処理および訂正処理を行う第１ＥＣＣ処理部と、第２アクセス経路に配置され、第２アクセスモード時にメモリセルアレイから出力されたデータに対してＥＣＣを適用した誤り検出処理および訂正処理を行う第２ＥＣＣ処理部とを有する。【選択図】図１
2012252558.tif 000002
【特許請求の範囲】
【請求項１】
ワード単位でアクセス可能で、少なくとも固定レイテンシでアクセス可能な第１アクセスモードと可変レイテンシでアクセス可能な第２アクセスモードによりアクセス可能な不揮発性メモリセルアレイを少なくとも含む不揮発性メモリセルデバイスと、
上記第１アクセスモード時に適用される第１アクセス経路と、
上記第２アクセスモード時に適用される第２アクセス経路と、
上記第１アクセス経路に配置され、上記第１アクセスモード時に上記不揮発性メモリセルアレイから出力されたデータに対して誤り訂正コード（ＥＣＣ）を適用した誤り検出処理および訂正処理を行う第１ＥＣＣ処理部と、
上記第２アクセス経路に配置され、上記第２アクセスモード時に上記不揮発性メモリセルアレイから出力されたデータに対して、ＥＣＣを適用した誤り検出処理および訂正処理を行う第２ＥＣＣ処理部と
を有する不揮発性メモリ。
【請求項２】
上記第１アクセスモードにおいて、
固定時間である読み出し時のアクセスレイテンシは、上記不揮発性メモリセルアレイからの読み出し時間と、上記第１ＥＣＣ処理部のビット誤り検出時間と、上記第１ＥＣＣ処理部のビット訂正時間を含む
請求項１記載の不揮発性メモリ。
【請求項３】
上記第１アクセスモードにおいて、
上記第１ＥＣＣ処理部は、書き込み時には生成した第１ＥＣＣをデータに付加し、
書き込み時のアクセスレイテンシとして、上記第１ＥＣＣの生成時間と、上記不揮発性メモリセルアレイへの書き込み時間を含む
請求項１記載の不揮発性メモリ。
【請求項４】
上記第２アクセスモードにおいて、
可変である読み出し時のアクセスレイテンシは、最小の場合として、上記不揮発性メモリセルアレイからの読み出し時間と、上記第２ＥＣＣ処理部のビット誤り検出時間を含み、最大の場合として、上記不揮発性メモリセルアレイからの読み出し時間と、上記第２ＥＣＣ処理部のビット誤り検出時間と、上記第２ＥＣＣ処理部のビット訂正時間を含む
請求項１記載の不揮発性メモリ。
【請求項５】
上記第２アクセスモードにおいて、
上記第２ＥＣＣ処理部は、書き込み時には生成した第２ＥＣＣをデータに付加し、
書き込み時のアクセスレイテンシとして、上記第２ＥＣＣの生成時間と、上記不揮発性メモリセルアレイへの書き込み時間を含む
請求項１記載の不揮発性メモリ。
【請求項６】
上記不揮発性メモリセルデバイスにアクセスするインターフェースは、
データの授受を監視するハンドシェーク信号による制御が可能で、
上記第１アクセスモード時にはハンドシェーク信号による制御を行わず、
上記第２アクセスモード時にハンドシェーク信号による制御を行う
請求項１記載の不揮発性メモリ。
【請求項７】
上記第１アクセス経路および上記第２アクセス経路に接続された第１バッファと、
上記第２アクセス経路に接続された第２バッファと、を含み、
上記第１バッファは、
上記不揮発性メモリセルアレイから読み出され上記第１アクセス経路を伝送され第１ＥＣＣ処理部で処理されたデータ、上記不揮発性メモリセルアレイから読み出され上記第２アクセス経路を伝送されたデータ、上記不揮発性メモリセルアレイに書き込むために上記第１アクセス経路を伝送されたデータ、上記不揮発性メモリセルアレイに書き込むために上記第２アクセス経路を伝送され上記第２バッファおよび上記第２ＥＣＣ処理部を介したデータのうちの少なくともいずれかのデータを保持し、
上記第２バッファは、
上記不揮発性メモリセルアレイから読み出され上記第２アクセス経路を伝送され、上記第１バッファに保持され、さらに上記第２ＥＣＣ処理部で処理されたデータ、上記不揮発性メモリセルアレイに書き込むために上記第２アクセス経路を伝送されたデータのうちの少なくともいずれかのデータを保持する
請求項１から６のいずれか一に記載の不揮発性メモリ。
【請求項８】
上記第１バッファと上記第２バッファが共用され、上記第１バッファが上記第２バッファの機能を併せ持つ
請求項７記載の不揮発性メモリ。
【請求項９】
ホスト装置とのホストインターフェースおよび上記不揮発性メモリセルアレイとのメモリインターフェースを含み、上記不揮発性メモリセルデバイスへのアクセスを制御するメモリコントローラを有し、
上記メモリコントローラは、
上記第１アクセス経路、上記第２アクセス経路、並びに当該第２アクセス経路に配置された第２ＥＣＣ処理部および上記第２バッファを含み、
上記不揮発性メモリセルデバイスは、
上記不揮発性メモリセルアレイ、上記第１アクセス経路、上記第２アクセス経路、当該第１アクセス経路に接続された上記第１ＥＣＣ処理部、並びに、上記第１アクセス経路および上記第２アクセス経路に接続された上記第１バッファを含む
請求項７記載の不揮発性メモリ。
【請求項１０】
ホスト装置とのホストインターフェースを含み、
上記不揮発性メモリセルデバイスは、
上記不揮発性メモリセルアレイ、上記ホストインターフェース、上記第１アクセス経路、上記第２アクセス経路、当該第１アクセス経路に接続された上記第１ＥＣＣ処理部、上記第１アクセス経路および上記第２アクセス経路に接続された上記第１バッファ、並びに当該第２アクセス経路に配置された第２ＥＣＣ処理部および上記第２バッファを含む
請求項７または８記載の不揮発性メモリ。
【請求項１１】
ワード単位でアクセス可能で、少なくとも固定レイテンシでアクセス可能な第１アクセスモードと可変レイテンシでアクセス可能な第２アクセスモードによりアクセス可能な不揮発性メモリセルアレイと、
上記第１アクセスモード時に適用される第１アクセス経路と、
上記第２アクセスモード時に適用される第２アクセス経路と、
上記第１アクセス経路に配置され、上記第１アクセスモード時に上記不揮発性メモリセルアレイから出力されたデータに対して、誤り訂正コード（ＥＣＣ）を適用した誤り検出処理および訂正処理を行い、上記不揮発性メモリセルアレイへの書き込みデータに生成した第１ＥＣＣを付加第１ＥＣＣ処理部と
を有する不揮発性メモリ。
【請求項１２】
上記第１アクセス経路および上記第２アクセス経路に接続された第１バッファを含み、
上記第１バッファは、
上記不揮発性メモリセルアレイから読み出され上記第１アクセス経路を伝送され第１ＥＣＣ処理部で処理されたデータ、上記不揮発性メモリセルアレイから読み出され上記第２アクセス経路を伝送されたデータ、上記不揮発性メモリセルアレイに書き込むために外部の第１アクセス経路を伝送されたデータ、上記不揮発性メモリセルアレイに書き込むために外部の第２アクセス経路を伝送され第２ＥＣＣ処理が施された入力データのうちの少なくともいずれかのデータを保持する
請求項１１記載の不揮発性メモリ。
【請求項１３】
ホスト装置とのホストインターフェースと、
ワード単位でアクセス可能な不揮発性メモリセルアレイとのメモリインターフェースと、
上記ホストインターフェースと上記メモリインターフェース間に接続され、固定レイテンシでアクセス可能な第１アクセスモード時に適用する第１アクセス経路と、
上記ホストインターフェースと上記メモリインターフェース間に接続され、可変レイテンシでアクセス可能な第２アクセスモード時に適用する第２アクセス経路と、
上記第２アクセス経路に配置され、上記第２アクセスモード時に、上記不揮発性メモリセルアレイから出力され上記メモリインターフェースを介して入力したデータに対して、誤り訂正符号（ＥＣＣ）を適用した誤り検出処理および訂正処理を行い、上記ホストインターフェースを通して入力された書き込みデータに第２ＥＣＣを付加して、上記メモリインターフェースに出力する第２ＥＣＣ処理部と、を少なくとも含み、
上記第１アクセス経路には、
上記第１アクセスモード時に、上記不揮発性メモリセルアレイから出力され第１ＥＣＣ処理が施され、上記メモリインターフェースを介して入力したデータ、および第１アクセスモード時に、上記ホストインターフェースを通して入力された書き込みデータが伝送される
メモリコントローラ。
【請求項１４】
上記第１アクセス経路に配置され、上記第１アクセスモード時に、上記不揮発性メモリセルアレイから出力され上記メモリインターフェースを介して入力したデータに対して、ＥＣＣを適用した誤り検出処理および訂正処理を行い、上記ホストインターフェースを通して入力された書き込みデータに第１ＥＣＣを付加して、上記メモリインターフェースに出力する第１ＥＣＣ処理部を含む
請求項１３記載のメモリコントローラ。
【請求項１５】
上記ホストインターフェースと上記第２ＥＣＣ処理部との間の上記第２アクセス経路に接続された第２バッファを含む
請求項１３記載のメモリコントローラ。
【請求項１６】
上記ホストインターフェースと上記第１ＥＣＣ処理部との間の上記第１アクセス経路、並びに、上記メモリインターフェースと上記第２ＥＣＣ処理部との間の上記第２アクセス経路に接続された第１バッファと、
上記ホストインターフェースと上記第２ＥＣＣ処理部との間の上記第２アクセス経路に接続された第２バッファと、を含む
請求項１４記載のメモリコントローラ。
【請求項１７】
ワード単位でアクセス可能で不揮発性メモリセルアレイにアクセスする際に、
固定レイテンシでアクセス可能な第１アクセスモードで第１アクセス経路を介してアクセスする第１アクセスステップと、
可変レイテンシでアクセス可能な第２アクセスモードにより第２アクセス経路を介してアクセスする第２アクセスステップと、を含み
上記第１アクセスステップにおいては、
上記第１アクセス経路に配置され第１ＥＣＣ処理部で、上記第１アクセスモード時に上記不揮発性メモリセルアレイから出力されたデータに対して、誤り訂正コード（ＥＣＣ）を適用した誤り検出処理および訂正処理を行い、上記不揮発性メモリセルアレイへの書き込みデータに上記第１ＥＣＣ処理部で生成した第１ＥＣＣを付加し、
上記第２アクセスステップにおいては、
上記第２アクセス経路に配置され第２ＥＣＣ処理部で、上記第２アクセスモード時に上記不揮発性メモリセルアレイから出力されたデータに対して、ＥＣＣを適用した誤り検出処理および訂正処理を行い、上記不揮発性メモリセルアレイへの書き込みデータに上記第２ＥＣＣ処理部で生成した第２ＥＣＣを付加する
不揮発性メモリのアクセス方法。
【請求項１８】
ワード単位でアクセス可能で不揮発性メモリセルアレイにアクセスする際に、
固定レイテンシでアクセス可能な第１アクセスモードで第１アクセス経路を介してアクセスする第１アクセス処理と、
可変レイテンシでアクセス可能な第２アクセスモードにより第２アクセス経路を介してアクセスする第２アクセス処理と、を含み
上記第１アクセス処理においては、
上記第１アクセス経路に配置され第１ＥＣＣ処理部で、上記第１アクセスモード時に上記不揮発性メモリセルアレイから出力されたデータに対して、誤り訂正コード（ＥＣＣ）を適用した誤り検出処理および訂正処理を行い、上記不揮発性メモリセルアレイへの書き込みデータに上記第１ＥＣＣ処理部で生成した第１ＥＣＣを付加し、
上記第２アクセス処理においては、
上記第２アクセス経路に配置され第２ＥＣＣ処理部で、上記第２アクセスモード時に上記不揮発性メモリセルアレイから出力されたデータに対して、ＥＣＣを適用した誤り検出処理および訂正処理を行い、上記不揮発性メモリセルアレイへの書き込みデータに上記第２ＥＣＣ処理部で生成した第２ＥＣＣを付加する
不揮発性メモリのアクセス処理をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ワード単位にアクセス可能な不揮発性メモリ、メモリコントローラ、不揮発性メモリのアクセス方法、およびプログラムに関するものである。
【背景技術】
【０００２】
不揮発性メモリ（ＮＶＭ）を代表するＮＡＮＤフラッシュではプロセスの微細化が進むに従ってデータ保持特性が低下するため、より強力なデータ誤り検出・訂正能力を持った誤り訂正符号（ＥＣＣ：Error Correction Code）が必要とされてきた。
【０００３】
また近年開発、製品化の進む新しい不揮発性メモリであるＰＣＲＡＭやＲeＲＡＭにおいても、データ保持特性の改善は重要な課題の一つである。
ＰＣＲＡＭやＲｅＲＡＭはＮＡＮＤフラッシュと異なり、ＤＲＡＭやＳＲＡＭのようにワード単位でアクセスが可能であることから、ＮＶＲＡＭと呼ばれる。
ＮＡＮＤフラッシュが連続データのシーケンシャルアクセスで高速であるのに対し、ＮＶＲＡＭはＮＡＮＤフラッシュでは実現できない高速なランダムアクセスに対応できることを大きな特徴とする不揮発性メモリである。
【０００４】
ＮＡＮＤフラッシュは、ストレージとして、セクタ単位でデータをワークメモリ上に読み出して実行するＳｔｏｒｅ ａＮｄ  Ｄｏｗｎｌｏａｄ（ＳｎＤ）モデルの用途で使用される。
これに対して、ワード単位でアクセス可能なＮＶＲＡＭは、ＣＰＵから直接データにアクセスが可能であるため不揮発性のワークメモリとしてｅＸｅｃｕｔｅ  Ｉｎ  Ｐｌａｃｅ（ＸＩＰ）モデルの用途で使用できることを特徴としている。
【０００５】
ＸＩＰに対応するには、ＮＶＲＡＭのワード単位にアクセス可能である特徴を最大限に発揮する必要があるが、上記のようにデータ保持特性を改善するためにＥＣＣを付加することは、アクセス性能を低下させる。
【０００６】
特許文献１には、ＮＡＮＤフラッシュデバイスを搭載した不揮発性メモリにおいて、ランダムアクセス性能を改善するための構成が開示されている。
ＮＡＮＤフラッシュをベースとした不揮発性メモリは、セクタ単位にＥＣＣを計算しており、エラー検出訂正には、最小でもセクタ単位で読み出す必要があるため、セクタ以下のサイズでのランダムアクセスが遅い欠点があった。
特許文献１では、３２〜１２８ビットのデータに対してＥＣＣによるエラー検出訂正をすることで、セクタより小さいデータのランダムアクセスパフォーマンスを改善している。
つまり、特許文献１では、ＮＡＮＤフラッシュを対象としているため、メモリセルのアクセスがページ単位であり、アクセス単位よりも小さいデータに対してＥＣＣ処理を行う手法を提案している。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００８−８４４９９号公報
【特許文献２】特開２００７−３１０９２７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
上述したように、ＸＩＰに対応するにはＮＶＲＡＭのワード単位にアクセス可能である特徴を最大限に発揮する必要があるが、上記のようにデータ保持特性を改善するためにＥＣＣを付加することは、そのアクセス性能に対して以下のような課題があった。
・アクセスのレイテンシは固定であることが望ましい。
ＥＣＣ処理によるアクセスのレイテンシへの影響を最小限にすることが望ましい。
前者については、メモリインターフェースではハンドシェークを省き、固定レイテンシでアクセスする方が高速である。ハンドシェーク信号をポーリングし、その結果を判断して信号制御に反映することは、アクセスサイクルを増加させる要因になる。
後者については、ＥＣＣ処理に必要とするクロック数が単純に少ない方が好ましいことに加え、ビット誤りの訂正処理が発生した場合には、その分アクセスサイクルを増やす必要があり、前者の課題とも関連性を持つ。
また、逆にシーケンシャルアクセスでは、固定アクセスタイムにされたアクセスを複数繰り返した場合には、固定化によるパフォーマンスのオーバーヘッドが累積され、本来のパフォーマンスからの低下が増大する課題も発生する。
ＸＩＰ対応と、シーケンシャルアクセス対応を両立させることにも課題がある。
【０００９】
また、上記のようにＮＡＮＤフラッシュを対象としている場合、書き込みにおいてはページ単位で行う必要があるため、特許文献１の手法を用いてもパフォーマンス改善の効果は得られない。
また、特許文献２にも同様の技術が開示されているが、この手法を用いてもパフォーマンス改善の効果を得ることは困難である。
【００１０】
本発明は、メモリセルとしてバイト単位のアクセスが可能であり、求められるアクセスに対して最適な単位でＥＣＣ処理を行うことが可能な不揮発性メモリ、メモリコントローラ、不揮発性メモリのアクセス方法、およびプログラムを提供することにある。
【課題を解決するための手段】
【００１１】
本発明の第１の観点の不揮発性メモリは、ワード単位でアクセス可能で、少なくとも固定レイテンシでアクセス可能な第１アクセスモードと可変レイテンシでアクセス可能な第２アクセスモードによりアクセス可能な不揮発性メモリセルアレイを少なくとも含む不揮発性メモリセルデバイスと、上記第１アクセスモード時に適用される第１アクセス経路と、上記第２アクセスモード時に適用される第２アクセス経路と、上記第１アクセス経路に配置され、上記第１アクセスモード時に上記不揮発性メモリセルアレイから出力されたデータに対して誤り訂正コード（ＥＣＣ）を適用した誤り検出処理および訂正処理を行う第１ＥＣＣ処理部と、上記第２アクセス経路に配置され、上記第２アクセスモード時に上記不揮発性メモリセルアレイから出力されたデータに対して、ＥＣＣを適用した誤り検出処理および訂正処理を行う第２ＥＣＣ処理部とを有する。
【００１２】
本発明の第２の観点の不揮発性メモリは、ワード単位でアクセス可能で、少なくとも固定レイテンシでアクセス可能な第１アクセスモードと可変レイテンシでアクセス可能な第２アクセスモードによりアクセス可能な不揮発性メモリセルアレイと、上記第１アクセスモード時に適用される第１アクセス経路と、上記第２アクセスモード時に適用される第２アクセス経路と、上記第１アクセス経路に配置され、上記第１アクセスモード時に上記不揮発性メモリセルアレイから出力されたデータに対して、誤り訂正コード（ＥＣＣ）を適用した誤り検出処理および訂正処理を行い、上記不揮発性メモリセルアレイへの書き込みデータに生成した第１ＥＣＣを付加する第１ＥＣＣ処理部とを有する。
【００１３】
本発明の第３の観点のメモリコントローラは、ホスト装置とのホストインターフェースと、ワード単位でアクセス可能な不揮発性メモリセルアレイとのメモリインターフェースと、上記ホストインターフェースと上記メモリインターフェース間に接続され、固定レイテンシでアクセス可能な第１アクセスモード時に適用する第１アクセス経路と、上記ホストインターフェースと上記メモリインターフェース間に接続され、可変レイテンシでアクセス可能な第２アクセスモード時に適用する第２アクセス経路と、上記第２アクセス経路に配置され、上記第２アクセスモード時に、上記不揮発性メモリセルアレイから出力され上記メモリインターフェースを介して入力したデータに対して、誤り訂正符号（ＥＣＣ）を適用した誤り検出処理および訂正処理を行い、上記ホストインターフェースを通して入力された書き込みデータに第２ＥＣＣを付加して、上記メモリインターフェースに出力する第２ＥＣＣ処理部と、を少なくとも含み、上記第１アクセス経路には、上記第１アクセスモード時に、上記不揮発性メモリセルアレイから出力され第１ＥＣＣ処理が施され、上記メモリインターフェースを介して入力したデータ、および第１アクセスモード時に、上記ホストインターフェースを通して入力された書き込みデータが伝送される。
【００１４】
本発明の第４の観点の不揮発性メモリのアクセス方法は、ワード単位でアクセス可能で不揮発性メモリセルアレイにアクセスする際に、固定レイテンシでアクセス可能な第１アクセスモードで第１アクセス経路を介してアクセスする第１アクセスステップと、可変レイテンシでアクセス可能な第２アクセスモードにより第２アクセス経路を介してアクセスする第２アクセスステップと、を含み、上記第１アクセスステップにおいては、上記第１アクセス経路に配置され第１ＥＣＣ処理部で、上記第１アクセスモード時に上記不揮発性メモリセルアレイから出力されたデータに対して、誤り訂正コード（ＥＣＣ）を適用した誤り検出処理および訂正処理を行い、上記不揮発性メモリセルアレイへの書き込みデータに上記第１ＥＣＣ処理部で生成した第１ＥＣＣを付加し、上記第２アクセスステップにおいては、上記第２アクセス経路に配置され第２ＥＣＣ処理部で、上記第２アクセスモード時に上記不揮発性メモリセルアレイから出力されたデータに対して、ＥＣＣを適用した誤り検出処理および訂正処理を行い、上記不揮発性メモリセルアレイへの書き込みデータに上記第２ＥＣＣ処理部で生成した第２ＥＣＣを付加する。
【００１５】
本発明の第５の観点は、ワード単位でアクセス可能で不揮発性メモリセルアレイにアクセスする際に、固定レイテンシでアクセス可能な第１アクセスモードで第１アクセス経路を介してアクセスする第１アクセス処理と、可変レイテンシでアクセス可能な第２アクセスモードにより第２アクセス経路を介してアクセスする第２アクセス処理と、を含み、上記第１アクセス処理においては、上記第１アクセス経路に配置され第１ＥＣＣ処理部で、上記第１アクセスモード時に上記不揮発性メモリセルアレイから出力されたデータに対して、誤り訂正コード（ＥＣＣ）を適用した誤り検出処理および訂正処理を行い、上記不揮発性メモリセルアレイへの書き込みデータに上記第１ＥＣＣ処理部で生成した第１ＥＣＣを付加し、上記第２アクセス処理においては、上記第２アクセス経路に配置され第２ＥＣＣ処理部で、上記第２アクセスモード時に上記不揮発性メモリセルアレイから出力されたデータに対して、ＥＣＣを適用した誤り検出処理および訂正処理を行い、上記不揮発性メモリセルアレイへの書き込みデータに上記第２ＥＣＣ処理部で生成した第２ＥＣＣを付加する不揮発性メモリのアクセス処理をコンピュータに実行させるプログラムである。
【発明の効果】
【００１６】
本発明によれば、メモリセルとしてバイト単位のアクセスが可能であり、求められるアクセスに対して最適な単位でＥＣＣ処理を行うことが可能となる。
【図面の簡単な説明】
【００１７】
【図１】本第１の実施形態に係る不揮発性メモリの構成を示す図である。
【図２】メモリコントローラとＮＶＲＡＭ間のインターフェースについて説明するための図である。
【図３】ハンドシェーク信号を用いない固定サイクルを処理する第１インターフェースとハンドシェーク信号を用いた可変サイクルの第２インターフェースの制御信号、データの一例を示すタイミングチャートである。
【図４】ライト（書き込み）時間の分布について説明するための図である。
【図５】本第２の実施形態に係る不揮発性メモリの構成を示す図である。
【図６】本第３の実施形態に係る不揮発性メモリの構成を示す図である。
【図７】本第４の実施形態に係る不揮発性メモリの構成を示す図である。
【発明を実施するための形態】
【００１８】
以下、本発明の実施形態を図面に関連付けて説明する。
なお、説明は以下の順序で行う。
１．第１の実施形態（不揮発性メモリの第１の構成例）
２．第２の実施形態（不揮発性メモリの第２の構成例）
３．第３の実施形態（不揮発性メモリの第３の構成例）
４．第４の実施形態（不揮発性メモリの第４の構成例）
【００１９】
＜１．第１の実施形態＞
図１は、本第１の実施形態に係る不揮発性メモリの構成を示す図である。
【００２０】
本第１の実施形態に係る不揮発性メモリ１０は、ワード単位でランダムアクセス可能なＮＶＲＡＭセルアレイを含む不揮発性メモリ（ＮＶＭ）セルデバイスとしてのＮＶＲＡＭ２０、メモリコントローラとしてのＮＶＲＡＭコントローラ３０を有する。
不揮発性メモリ１０は、メモリコントローラ３０を通してＮＶＲＡＭ２０にアクセス可能なホスト装置（ＣＰＵ）４０、およびホスト装置４０が直接的にアクセス可能なワークメモリとしてのＤＲＡＭ５０を含んで構成されている。
【００２１】
［本実施形態の特徴的な構成および機能］
本実施形態の不揮発性メモリ１０は、ＮＶＲＡＭ２０の不揮発性記憶領域に対するアクセスモードとして、ＸＩＰ用ＥＣＣ処理を備えた第１アクセスモードと、シーケンシャル用ＥＣＣ処理を備えた第２アクセスモードを持つことを特徴とする。
第１アクセスモードは、たとえばＸＩＰ動作時のパフォーマンスオーバーヘッドについて最適化されたアクセスモードであり、固定レイテンシでアクセスが可能である。
第２アクセスモードは、シーケンシャルアクセスオーバーヘッドについて最適化されたアクセスモードであり、アクセスレイテンシが変化する。
本実施形態の不揮発性メモリ１０は、不揮発性記憶領域について、この２つのアクセスモードによって使い分けることで、メモリシステムとしての動作効率を改善できることを特徴とする。
第１アクセスモードは、ＸＩＰ用として、ＣＰＵ４０からワード単位で直接アクセス可能な領域として使用するモードであって、ＸＩＰに最適な小さいデータ単位に対してＥＣＣ処理を行い、ビット誤りの検出処理と訂正処理を行う。
さらに、第１アクセスモードは、固定時間のアクセスで完了する仕様である、第１アクセスモードは、ビット誤りが発生していないデータに対しても誤り訂正に必要な分の処理時間を含むことになる。本実施形態では、インターフェースで発生するハンドシェークの処理を不要とすることで、アクセスサイクルを短縮することを特徴とする。
第２アクセスモードは、シーケンシャルアクセス用として、第１アクセスモードよりも大きなデータ単位にＥＣＣ処理を行うため、第１のモードを繰り返してアクセスした場合よりも高速にアクセスが可能となる。
また、第１アクセスモードより大きなデータ単位である第２アクセスモードでは、ビット誤りが発生した場合の訂正時間が誤り数が大きいほど長くなるため、ハンドシェークを行うインターフェースを持つことで、アクセス時間を最適化することを特徴とする。
【００２２】
［ＮＶＲＡＭおよびメモリコントローラの構成および機能］
ＮＶＲＡＭ２０は、ＮＶＲＡＭセルアレイ２１、第１ＥＣＣ処理部２２、第１バッファ２３、第１アクセスモード時に適用される第１アクセス経路２４、および第２アクセスモード時に適用される第２アクセス経路２５を有する。
第１アクセス経路２４は固定レイテンシでアクセス可能な第１アクセスモード時に適用され、第２アクセス経路２５は可変レイテンシでアクセス可能な第２アクセスモード時に適用される。
なお、図においては、ＮＶＲＡＭセルアレイ２１の入出力は共通のアクセス経路ＣＭＰとして示されている。
【００２３】
ＮＶＲＡＭセルアレイ２１は、不揮発性メモリセルがアレイ状に配列され、ＮＶＲＡＭインターフェース３２を介してワード単位（バイト単位）でアクセス可能な不揮発性ランダムアクセスメモリとして形成されている。
ＮＶＲＡＭセルアレイ２１は、ホスト装置（ＣＰＵ）４０からＮＶＲＡＭコントローラ３０を通して、固定レイテンシでアクセス可能な第１アクセスモードと可変レイテンシでアクセス可能な第２アクセスモードによりアクセス可能である。
第１ＥＣＣ処理部２２は、第１アクセス経路２４に配置され、第１アクセスモード時にＮＶＲＡＭセルアレイ２１から出力された（読み出された）データに対して、誤り訂正コード（ＥＣＣ）を適用した誤り検出処理および訂正処理を行う。第１ＥＣＣ処理部２２は、ＥＣＣ処理後のデータを第１バッファ２３に出力する。
第１ＥＣＣ処理部２２は、第１アクセスモード時にＮＶＲＡＭコントローラ３０から転送され、第１バッファ２３に保持されたたＮＶＲＡＭセルアレイ２１への書き込みデータに、生成した第１ＥＣＣを付加する。第１ＥＣＣ処理部２２は、第１ＥＣＣが付加された書き込みデータを第１アクセス経路２４を介してＮＶＲＡＭセルアレイ２１に出力する。
【００２４】
第１バッファ２３は、第１アクセス経路２４および第２アクセス経路２５に接続されている。第１バッファ２３は、ＮＶＲＡＭコントローラ３０とのデータの授受が行われるインターフェース側において、第１アクセス経路２４および第２アクセス経路２５に接続されている。
第１バッファ２３は、ＮＶＲＡＭセルアレイ２１から読み出され第１アクセス経路２４を伝送され第１ＥＣＣ処理部２２で処理されたデータ、ＮＶＲＡＭセルアレイ２１から読み出され第２アクセス経路２５を伝送されたデータを保持する。
第１バッファ２３は、ＮＶＲＡＭセルアレイ２１に書き込むために外部のＮＶＲＡＭコントローラ３０の第１アクセス経路を伝送されたデータを保持する。
第１バッファ２３は、ＮＶＲＡＭセルアレイ２１に書き込むためにＮＶＲＡＭコントローラ３０の第２アクセス経路を伝送され第２ＥＣＣ処理が施された入力データを保持する。
【００２５】
ＮＶＲＡＭコントローラ３０は、ホスト装置（ＣＰＵ）４０とのインターフェースであるＣＰＵ（ホスト）インターフェース３１、およびＮＶＲＡＭ２０とのインターフェースであるメモリ（ＮＶＲＡＭ）インターフェース３２を有する。
ＮＶＲＡＭコントローラ３０は、第２ＥＣＣ処理部３３、第２バッファ３４、第１アクセス経路３５、および第２アクセス経路３６を有する。
第１アクセス経路３５および第２アクセス経路３６は、ＣＰＵインターフェース３１とＮＶＲＡＭインターフェース３２との間に並列に配置されている。
第１アクセス経路３５は固定レイテンシでアクセス可能な第１アクセスモード時に適用され、第２アクセス経路３６は可変レイテンシでアクセス可能な第２アクセスモード時に適用される。
【００２６】
第２ＥＣＣ処理部３３は、第２アクセス経路３６に配置され、第２アクセスモード時にＮＶＲＡＭセルアレイ２１から出力されＮＶＲＡＭインターフェース３２を介して入力したデータに対して、ＥＣＣを適用した誤り検出処理および訂正処理を行う。第２ＥＣＣ処理部３３は、ＥＣＣ処理後のデータを第２バッファ３４に出力する。
第２ＥＣＣ処理部３３は、第２アクセスモード時にＣＰＵ４０から転送され、ＣＰＵインターフェース３１を通して入力された書き込みデータに第２ＥＣＣを付加して、第２アクセス経路３６を通ししてＮＶＲＡＭインターフェース３２に出力する。
【００２７】
第２バッファ３４は、ＣＰＵインターフェース３１と第２ＥＣＣ処理部３３との間の第２アクセス経路３６に接続されている（配置されている）。
第２バッファ３４は、ＮＶＲＡＭセルアレイ３２から読み出され、第２アクセス経路２５を伝送され、第１バッファ２３に保持され、ＮＶＲＡＭインターフェース３２を介して入力され、第２ＥＣＣ処理部３３で処理されたデータを保持する。
第２バッファ３４は、ＣＰＵインターフェース３１を通して入力され、ＮＶＲＡＭセルアレイ２１に書き込むために第２アクセス経路３６を伝送されたデータを保持する。
【００２８】
本第１の実施形態においては、第１アクセス経路３５には。次のデータが伝送される。
第１アクセス経路３５には、第１アクセスモード時に、ＮＶＲＡＭセルアレイ２１から出力され第１ＥＣＣ処理部２２で第１ＥＣＣ処理が施され、第１バッファ２３に保持され、さらにＮＶＲＡＭインターフェース３２を介して入力してデータが伝送される。
第１アクセス経路３５には、第１アクセスモード時に、ＣＰＵインターフェース３１を通して入力された書き込みデータが伝送される。
【００２９】
図２は、メモリコントローラとＮＶＲＡＭ間のインターフェースについて説明するための図である。
図３（Ａ）および（Ｂ）は、ハンドシェーク信号を用いない固定サイクルを処理する第１インターフェースとハンドシェーク信号を用いた可変サイクルの第２インターフェースの制御信号、データの一例を示すタイミングチャートである。
【００３０】
前述したように、ＮＶＲＡＭ２０にアクセスするインターフェースは、図２に示すように、データの授受を監視するハンドシェーク信号による制御が可能である。
本技術では、図３（Ａ）に示すように、第１アクセスモード時にはハンドシェーク信号による制御を行わず、第２アクセスモード時には、図３（Ｂ）に示すように、ハンドシェーク信号、図３（Ｂ）の例ではビジー信号ｘＢｓｙによる制御を行う。
【００３１】
図４は、ライト（書き込み）時間の分布について説明するための図である。
一般的に、不揮発性メモリセルの書込みに要するビジー（Busy）時間（Program→Verifyの繰り返し回数）はある分布を持つ。
図４において、横軸はライトビジー（Write Busy）時間を示し、縦軸がメモリセル個数を示している。
固定サイクルにするには、少なくともオールパス（All Pass）の時間が必要である。
時間Ｔｙｐの時間で書き込みが完了できるセルではΔtはオーバーヘッドとなる。
シーケンシャルアクセスを固定サイクルの繰り返しで行うと、このオーバーヘッド分も加算されるため、可変サイクルで実現することが望ましい。
【００３２】
また、第１アクセスモードにおいて、固定時間である読み出し時のアクセスレイテンシは、ＮＶＲＡＭセルアレイ２１からの読み出し時間と、第１ＥＣＣ処理部２２のビット誤り検出時間と、第１ＥＣＣ処理部２２のビット訂正時間を含む。
第１アクセスモードにおいて、書き込み時のアクセスレイテンシとして、第１ＥＣＣの生成時間と、ＮＶＲＡＭセルアレイ２１への書き込み時間を含む。
【００３３】
第２アクセスモードにおいて、可変である読み出し時のアクセスレイテンシは、最小の場合として、ＮＶＲＡＭセルアレイ２１からの読み出し時間と、第２ＥＣＣ処理部３３のビット誤り検出時間を含む。
第２アクセスモードにおいて、可変である読み出し時のアクセスレイテンシは、最大の場合として、ＮＶＲＡＭセルアレイ２１からの読み出し時間と、第２ＥＣＣ処理部３３のビット誤り検出時間と、第２ＥＣＣ処理部３３のビット訂正時間を含む。
２アクセスモードにおいて、書き込み時のアクセスレイテンシとして、第２ＥＣＣの生成時間と、ＮＶＲＡＭセルアレイ２１への書き込み時間を含む。
【００３４】
次に、上記構成による動作を説明する。
図１の構成では、第１アクセスモードの処理を行うために、ＮＶＲＡＭ２０内に、第１アクセス経路２４に配置された第１ＥＣＣ処理部２２、および第１バッファ２３を有する。
ＮＶＲＡＭ２０では、第１ＥＣＣ処理部２２でＮＶＲＡＭセルアレイ２１から出力されたデータに対して直接誤り検出・訂正を行い、検出・訂正を行ったデータを第１バッファ２３に保持する。
ＣＰＵ４０は、ＮＶＲＡＭコントローラ３０を介して固定レイテンシで第１バッファ２３のデータにバイトまたはワード単位でアクセス可能である。
第２アクセスモードの処理を行うために、ＮＶＲＡＭコントローラ３０に、第２アクセス経路３６に配置された第２ＥＣＣ処理部３３、および第２バッファ３３を有する。
ＮＶＲＡＭコントローラ３０では、ＮＶＲＡＭインターフェース３２を介して読み出したデータに対して、第２ＥＣＣ処理部３３でデータの誤り検出・訂正を行い、検出・訂正を行ったデータを第２バッファ３４に保持する。
【００３５】
ＮＶＲＡＭコントローラ３０は、ＣＰＵ４０からの第２アクセスモードでのアクセスに対しては、ハンドシェーク信号を制御する。
そして、ＮＶＲＡＭコントローラ３０は、ＮＶＲＡＭ２０へのアクセスと、ＮＶＲＡＭ２０からＮＶＲＡＭコントローラ３０へのデータ転送と、第２ＥＣＣ処理部３３の処理と、データが第２バッファ３４に格納されるまでビジー信号ｘＢｓｙを出力する。
【００３６】
第１アクセスモードではＣＰＵ４０からプログラム実行やそこに必要となるデータアクセスのために、直接ＮＶＲＡＭ２０上のデータにアクセスするためのモードであり、データ信頼性を改善するために第１ＥＣＣで保護される。
第１ＥＣＣ処理部２２は、第１バッファ２３のサイズのデータに対して処理を行い、書き込み時には第１ＥＣＣ処理部２２が生成した第１ＥＣＣを付加して、ＮＶＲＡＭセルアレイ２１へデータを保存する。
したがって、ＮＶＲＡＭセルアレイ２１としては、第１バッファサイズがアクセスサイズとなるが、第１バッファサイズ上に保存されたデータは、ＮＶＲＡＭインターフェース３２を介してバイトあるいはワード単位でアクセス可能である。
またそのインターフェースは、アクセスサイクルが固定され、第１バッファ２３へのアクセスではＮＶＲＡＭインターフェース３２には、ハンドシェーク信号の制御を必要としない。
第１バッファ２３のサイズの例としては、ＣＰＵ４０の内部のキャッシュエントリのサイズと一致することが望ましく、一般的な値としては、３２バイト、６４バイトといった値になる。
【００３７】
第２アクセスモードは、ＣＰＵ４０から大量のデータへのアクセスや、ストレージからのデータの転送など、シーケンシャルなアクセスを効率よく行うためのモードであり、データ信頼性を改善するために第２ＥＣＣで保護される。
第２ＥＣＣ処理部３３は、第２バッファ３４のサイズのデータに対して処理を行い、書き込み時には第２ＥＣＣ処理部３３が生成した第２ＥＣＣを付加して、ＮＶＲＡＭセルアレイ２１にデータを保存する。
したがって、第２バッファ３４のサイズは、第１バッファ２３のサイズの整数倍であることが望ましい。ここでいう第１バッファサイズは、第１ＥＣＣを格納する領域まで含めたサイズを指す。
第２ＥＣＣ処理はＮＶＲＡＭコントローラ３０内の第２ＥＣＣ処理部３３で処理されるため、第２バッファ３４に読み込まれるデータはＮＶＲＡＭインターフェース３２を介して、複数回の第１バッファへのアクセスによって実行される。
このとき、第１アクセスモードにおいて有効だった第１ＥＣＣは無効とされ、第１ＥＣＣ格納用の領域含めたすべてのデータが、ＮＶＲＡＭ２０のメモリセルから第１バッファ２３に読み込まれたあと、ＮＶＲＡＭインターフェース３３を介して出力される。
ＮＶＲＡＭ２０から出力されたデータは、ＮＶＲＡＭコントローラ３０内で第２ＥＣＣ処理部３３に入力され、ビット誤りの検出、訂正処理が完了後のデータが最終的に第２バッファ３４上に格納される。
ＣＰＵ４０は、第２バッファ３４上のデータにアクセスを行うため、ＮＶＲＡＭコントローラ３０に第２アクセスモードで指示を出したあと、すべての処理が完了するまで待つ必要がある。このため、ＮＶＲＡＭコントローラ３０のインターフェースに存在するハンドシェーク信号（ビジー信号ｘＢｓｙ）を監視する。
第２バッファ３４のサイズとしては、仮想メモリシステムのページサイズに一致することが望ましく、一般的な値としては、２０４８バイト、４０９６バイトといった値になる。
【００３８】
以上説明したように、本実施形態によれば、メモリセルとしてバイト単位のアクセスが可能であり、求められるアクセスに対して最適な単位でＥＣＣ処理を行うことが可能となる。
ＮＶＲＡＭとしてＥＣＣによるデータの信頼性を改善しつつ、高速なランダムアクセス性能を提供する領域と、高速なシーケンシャルアクセス性能を提供する領域を使い分ることが可能であり、高速な不揮発性記メモリを実現することができる。
【００３９】
＜２．第２の実施形態＞
図５は、本第２の実施形態に係る不揮発性メモリの構成を示す図である。
【００４０】
本第２の実施形態に係る不揮発性メモリ１０Ａが第１の実施形態に係る不揮発性メモリ１０と異なる点は次の通りである。
本不揮発性メモリ１０Ａでは、ＮＶＲＡＭ２０ＡにＮＶＲＡＭコントローラの機能を持たせている。
これに対応して、ＮＶＲＡＭ２０Ａに、ＣＰＵインターフェース２６が配置され、第２アクセスモードに必要となる第２ＥＣＣ処理部２７と第２バッファ２８が内蔵されている。
ＮＶＲＡＭインターフェース（図示せず）は、第１アクセスモードではハンドシェーク信号を使用せず、第２アクセスモードではハンドシェーク信号を制御する。
第２ＥＣＣ処理部２７よび第２バッファ２８の構成および機能は、図１の第２ＥＣＣ処理部３３および第２バッファ３４と同様である。
第２ＥＣＣ処理部２７および第２バッファ２８は、ＣＰＵインターフェース２６と第１バッファ２３との間の第２アクセス経路２５に配置されている。
【００４１】
本第２の実施形態によれば、上述した第１の実施形態と同様の効果を得ることができる。
【００４２】
＜３．第３の実施形態＞
図６は、本第３の実施形態に係る不揮発性メモリの構成を示す図である。
【００４３】
本第３の実施形態に係る不揮発性メモリ１０Ｂが第２の実施形態に係る不揮発性メモリ１０Ａと異なる点は次の通りである。
本不揮発性メモリ１０Ｂでは、ＮＶＲＡＭ２０Ｂにおいて、ＮＶＲＡＭセルアレイ２１、第１ＥＣＣ処理部２２、第１バッファ２３、第１アクセス経路２４、第２アクセス経路２５が複数（ｎ個）配置されている。
そして、第１バッファと第２バッファが共用され、複数の第１バッファ２３−１〜２３−ｎが第２バッファの機能を併せ持つ。
本第３の実施形態では、各第１バッファ２１−１〜２１−ｎに接続されたＮＶＲＡＭセルアレイ２１−１〜２１−ｎが同時並列的に制御されることを特徴とする。
そして、ＮＶＲＡＭインターフェースは、第１アクセスモードではハンドシェーク信号を使用せず、第２アクセスモードではハンドシェーク信号を制御する。
【００４４】
＜４．第４の実施形態＞
図７は、本第４の実施形態に係る不揮発性メモリの構成を示す図である。
【００４５】
本第４の実施形態に係る不揮発性メモリ１０Ｃが第１の実施形態に係る不揮発性メモリ１０と異なる点は次の通りである。
本不揮発性メモリ１０Ｃでは、ＮＶＲＡＭ２０ＣにはＮＶＲＡＭセルアレイ２１のみが配置され、ＮＶＲＡＭコントローラ３０Ｃに第１ＥＣＣ処理部３７および第１バッファ３８が配置されている。
第１ＥＣＣ処理部３７および第１バッファ３８の構成および機能は、図１の第１ＥＣＣ処理部２２および第１バッファ２３と同様である。
【００４６】
第１ＥＣＣ処理部３７は、第１アクセス経路３５に配置され、第１アクセスモード時に、ＮＶＲＡＭセルアレイ２１から出力されＮＶＲＡＭインターフェース３２を介して入力したデータに対して、ＥＣＣを適用した誤り検出処理および訂正処理を行う。
第１ＥＣＣ処理部３７は、ＣＰＵインターフェース３１を通して入力された書き込みデータに第１ＥＣＣを付加して、ＮＶＲＡＭインターフェース３２に出力する。
第１バッファ３８は、ＣＰＵインターフェース３１と第１ＥＣＣ処理部３７との間の第１アクセス経路３５、並びに、ＮＶＲＡＭインターフェース３２と第２ＥＣＣ処理部３３との間の第２アクセス経路３６に接続されている。
【００４７】
本第４の実施形態によれば、上述した第１の実施形態と同様の効果を得ることができる。
【００４８】
また、以上詳細に説明した方法は、上記手順に応じたプログラムとして形成し、ＣＰＵ等のコンピュータで実行するように構成することも可能である。
また、このようなプログラムは、半導体メモリ、磁気ディスク、光ディスク、フロッピー（登録商標）ディスク等の記録媒体、この記録媒体をセットしたコンピュータによりアクセスし上記プログラムを実行するように構成可能である。
【００４９】
なお、本技術は以下のような構成もとることができる。
（１）ワード単位でアクセス可能で、少なくとも固定レイテンシでアクセス可能な第１アクセスモードと可変レイテンシでアクセス可能な第２アクセスモードによりアクセス可能な不揮発性メモリセルアレイを少なくとも含む不揮発性メモリセルデバイスと、
上記第１アクセスモード時に適用される第１アクセス経路と、
上記第２アクセスモード時に適用される第２アクセス経路と、
上記第１アクセス経路に配置され、上記第１アクセスモード時に上記不揮発性メモリセルアレイから出力されたデータに対して誤り訂正コード（ＥＣＣ）を適用した誤り検出処理および訂正処理を行う第１ＥＣＣ処理部と、
上記第２アクセス経路に配置され、上記第２アクセスモード時に上記不揮発性メモリセルアレイから出力されたデータに対して、ＥＣＣを適用した誤り検出処理および訂正処理を行う第２ＥＣＣ処理部と
を有する不揮発性メモリ。
（２）上記第１アクセスモードにおいて、
固定時間である読み出し時のアクセスレイテンシは、上記不揮発性メモリセルアレイからの読み出し時間と、上記第１ＥＣＣ処理部のビット誤り検出時間と、上記第１ＥＣＣ処理部のビット訂正時間を含む
上記（１）記載の不揮発性メモリ。
（３）上記第１アクセスモードにおいて、
上記第１ＥＣＣ処理部は、書き込み時には生成した第１ＥＣＣをデータに付加し、
書き込み時のアクセスレイテンシとして、上記第１ＥＣＣの生成時間と、上記不揮発性メモリセルアレイへの書き込み時間を含む
上記（１）または（２）記載の不揮発性メモリ。
（４）上記第２アクセスモードにおいて、
可変である読み出し時のアクセスレイテンシは、最小の場合として、上記不揮発性メモリセルアレイからの読み出し時間と、上記第２ＥＣＣ処理部のビット誤り検出時間を含み、最大の場合として、上記不揮発性メモリセルアレイからの読み出し時間と、上記第２ＥＣＣ処理部のビット誤り検出時間と、上記第２ＥＣＣ処理部のビット訂正時間を含む
上記（１）から（３）のいずれか一に記載の不揮発性メモリ。
（５）上記第２アクセスモードにおいて、
上記第２ＥＣＣ処理部は、書き込み時には生成した第２ＥＣＣをデータに付加し、
書き込み時のアクセスレイテンシとして、上記第２ＥＣＣの生成時間と、上記不揮発性メモリセルアレイへの書き込み時間を含む
上記（１）から（４）のいずれか一に記載の不揮発性メモリ。
（６）上記不揮発性メモリセルデバイスにアクセスするインターフェースは、
データの授受を監視するハンドシェーク信号による制御が可能で、
上記第１アクセスモード時にはハンドシェーク信号による制御を行わず、
上記第２アクセスモード時にハンドシェーク信号による制御を行う
上記（１）から（５）のいずれか一に記載の不揮発性メモリ。
（７）上記第１アクセス経路および上記第２アクセス経路に接続された第１バッファと、
上記第２アクセス経路に接続された第２バッファと、を含み、
上記第１バッファは、
上記不揮発性メモリセルアレイから読み出され上記第１アクセス経路を伝送され第１ＥＣＣ処理部で処理されたデータ、上記不揮発性メモリセルアレイから読み出され上記第２アクセス経路を伝送されたデータ、上記不揮発性メモリセルアレイに書き込むために上記第１アクセス経路を伝送されたデータ、上記不揮発性メモリセルアレイに書き込むために上記第２アクセス経路を伝送され上記第２バッファおよび上記第２ＥＣＣ処理部を介したデータのうちの少なくともいずれかのデータを保持し、
上記第２バッファは、
上記不揮発性メモリセルアレイから読み出され上記第２アクセス経路を伝送され、上記第１バッファに保持され、さらに上記第２ＥＣＣ処理部で処理されたデータ、上記不揮発性メモリセルアレイに書き込むために上記第２アクセス経路を伝送されたデータのうちの少なくともいずれかのデータを保持する
上記（１）から（６）のいずれか一に記載の不揮発性メモリ。
（８）上記第１バッファと上記第２バッファが共用され、上記第１バッファが上記第２バッファの機能を併せ持つ
上記（７）記載の不揮発性メモリ。
（９）ホスト装置とのホストインターフェースおよび上記不揮発性メモリセルアレイとのメモリインターフェースを含み、上記不揮発性メモリセルデバイスへのアクセスを制御するメモリコントローラを有し、
上記メモリコントローラは、
上記第１アクセス経路、上記第２アクセス経路、並びに当該第２アクセス経路に配置された第２ＥＣＣ処理部および上記第２バッファを含み、
上記不揮発性メモリセルデバイスは、
上記不揮発性メモリセルアレイ、上記第１アクセス経路、上記第２アクセス経路、当該第１アクセス経路に接続された上記第１ＥＣＣ処理部、並びに、上記第１アクセス経路および上記第２アクセス経路に接続された上記第１バッファを含む
上記（７）記載の不揮発性メモリ。
（１０）ホスト装置とのホストインターフェースを含み、
上記不揮発性メモリセルデバイスは、
上記不揮発性メモリセルアレイ、上記ホストインターフェース、上記第１アクセス経路、上記第２アクセス経路、当該第１アクセス経路に接続された上記第１ＥＣＣ処理部、上記第１アクセス経路および上記第２アクセス経路に接続された上記第１バッファ、並びに当該第２アクセス経路に配置された第２ＥＣＣ処理部および上記第２バッファを含む
上記（７）または（８）記載の不揮発性メモリ。
（１１）ワード単位でアクセス可能で、少なくとも固定レイテンシでアクセス可能な第１アクセスモードと可変レイテンシでアクセス可能な第２アクセスモードによりアクセス可能な不揮発性メモリセルアレイと、
上記第１アクセスモード時に適用される第１アクセス経路と、
上記第２アクセスモード時に適用される第２アクセス経路と、
上記第１アクセス経路に配置され、上記第１アクセスモード時に上記不揮発性メモリセルアレイから出力されたデータに対して、誤り訂正コード（ＥＣＣ）を適用した誤り検出処理および訂正処理を行い、上記不揮発性メモリセルアレイへの書き込みデータに生成した第１ＥＣＣを付加第１ＥＣＣ処理部と
を有する不揮発性メモリ。
（１２）上記第１アクセス経路および上記第２アクセス経路に接続された第１バッファを含み、
上記第１バッファは、
上記不揮発性メモリセルアレイから読み出され上記第１アクセス経路を伝送され第１ＥＣＣ処理部で処理されたデータ、上記不揮発性メモリセルアレイから読み出され上記第２アクセス経路を伝送されたデータ、上記不揮発性メモリセルアレイに書き込むために外部の第１アクセス経路を伝送されたデータ、上記不揮発性メモリセルアレイに書き込むために外部の第２アクセス経路を伝送され第２ＥＣＣ処理が施された入力データのうちの少なくともいずれかのデータを保持する
上記（１１）記載の不揮発性メモリ。
（１３）ホスト装置とのホストインターフェースと、
ワード単位でアクセス可能な不揮発性メモリセルアレイとのメモリインターフェースと、
上記ホストインターフェースと上記メモリインターフェース間に接続され、固定レイテンシでアクセス可能な第１アクセスモード時に適用する第１アクセス経路と、
上記ホストインターフェースと上記メモリインターフェース間に接続され、可変レイテンシでアクセス可能な第２アクセスモード時に適用する第２アクセス経路と、
上記第２アクセス経路に配置され、上記第２アクセスモード時に、上記不揮発性メモリセルアレイから出力され上記メモリインターフェースを介して入力したデータに対して、誤り訂正符号（ＥＣＣ）を適用した誤り検出処理および訂正処理を行い、上記ホストインターフェースを通して入力された書き込みデータに第２ＥＣＣを付加して、上記メモリインターフェースに出力する第２ＥＣＣ処理部と、を少なくとも含み、
上記第１アクセス経路には、
上記第１アクセスモード時に、上記不揮発性メモリセルアレイから出力され第１ＥＣＣ処理が施され、上記メモリインターフェースを介して入力したデータ、および第１アクセスモード時に、上記ホストインターフェースを通して入力された書き込みデータが伝送される
メモリコントローラ。
（１４）上記第１アクセス経路に配置され、上記第１アクセスモード時に、上記不揮発性メモリセルアレイから出力され上記メモリインターフェースを介して入力したデータに対して、ＥＣＣを適用した誤り検出処理および訂正処理を行い、上記ホストインターフェースを通して入力された書き込みデータに第１ＥＣＣを付加して、上記メモリインターフェースに出力する第１ＥＣＣ処理部を含む
上記（１３）記載のメモリコントローラ。
（１５）上記ホストインターフェースと上記第２ＥＣＣ処理部との間の上記第２アクセス経路に接続された第２バッファを含む
上記（１４）記載のメモリコントローラ。
（１６）上記ホストインターフェースと上記第１ＥＣＣ処理部との間の上記第１アクセス経路、並びに、上記メモリインターフェースと上記第２ＥＣＣ処理部との間の上記第２アクセス経路に接続された第１バッファと、
上記ホストインターフェースと上記第２ＥＣＣ処理部との間の上記第２アクセス経路に接続された第２バッファと、を含む
上記（１４）のメモリコントローラ。
（１７）ワード単位でアクセス可能で不揮発性メモリセルアレイにアクセスする際に、
固定レイテンシでアクセス可能な第１アクセスモードで第１アクセス経路を介してアクセスする第１アクセスステップと、
可変レイテンシでアクセス可能な第２アクセスモードにより第２アクセス経路を介してアクセスする第２アクセスステップと、を含み
上記第１アクセスステップにおいては、
上記第１アクセス経路に配置され第１ＥＣＣ処理部で、上記第１アクセスモード時に上記不揮発性メモリセルアレイから出力されたデータに対して、誤り訂正コード（ＥＣＣ）を適用した誤り検出処理および訂正処理を行い、上記不揮発性メモリセルアレイへの書き込みデータに上記第１ＥＣＣ処理部で生成した第１ＥＣＣを付加し、
上記第２アクセスステップにおいては、
上記第２アクセス経路に配置され第２ＥＣＣ処理部で、上記第２アクセスモード時に上記不揮発性メモリセルアレイから出力されたデータに対して、ＥＣＣを適用した誤り検出処理および訂正処理を行い、上記不揮発性メモリセルアレイへの書き込みデータに上記第２ＥＣＣ処理部で生成した第２ＥＣＣを付加する
不揮発性メモリのアクセス方法。
（１８）ワード単位でアクセス可能で不揮発性メモリセルアレイにアクセスする際に、
固定レイテンシでアクセス可能な第１アクセスモードで第１アクセス経路を介してアクセスする第１アクセス処理と、
可変レイテンシでアクセス可能な第２アクセスモードにより第２アクセス経路を介してアクセスする第２アクセス処理と、を含み
上記第１アクセス処理においては、
上記第１アクセス経路に配置され第１ＥＣＣ処理部で、上記第１アクセスモード時に上記不揮発性メモリセルアレイから出力されたデータに対して、誤り訂正コード（ＥＣＣ）を適用した誤り検出処理および訂正処理を行い、上記不揮発性メモリセルアレイへの書き込みデータに上記第１ＥＣＣ処理部で生成した第１ＥＣＣを付加し、
上記第２アクセス処理においては、
上記第２アクセス経路に配置され第２ＥＣＣ処理部で、上記第２アクセスモード時に上記不揮発性メモリセルアレイから出力されたデータに対して、ＥＣＣを適用した誤り検出処理および訂正処理を行い、上記不揮発性メモリセルアレイへの書き込みデータに上記第２ＥＣＣ処理部で生成した第２ＥＣＣを付加する
不揮発性メモリのアクセス処理をコンピュータに実行させるプログラム。
【符号の説明】
【００５０】
１０，１０Ａ〜１０Ｃ・・・不揮発性メモリ、２０，２０Ａ〜２０Ｃ・・・ＮＶＲＡＭ（ＮＶＲＡＭ）セルデバイス、２１，２１−１〜２１−ｎ・・・ＮＶＲＡＭセルアレイ、２２，２２−１〜２２−ｎ・・・第１ＥＣＣ処理部、２３，２３−１〜２３−ｎ・・・第１バッファ、２４，２４−１〜２４−ｎ・・・第１アクセス経路、２５，２５−１〜２５−ｎ・・・第２アクセス経路、２６・・・ＣＰＵインターフェース（ホストインターフェース）、２７・・・第２ＥＣＣ処理部、２８・・・第２バッファ、３０，３０Ｃ・・・ＮＶＲＡＭコントローラ（メモリコントローラ）、３１・・・ＣＰＵインターフェース（ホストインターフェース）、３２・・・ＮＶＲＡＭインターフェース（メモリインターフェース）、３３・・・第２ＥＣＣ処理部、３４・・・第２バッファ、３５・・・第１アクセス経路、３６・・・第２アクセス経路、３７・・・第１ＥＣＣ処理部、３８・・・第１バッファ。
【図１】
2012252558.tif 000003
【図２】
2012252558.tif 000004
【図３】
2012252558.tif 000005
【図４】
2012252558.tif 000006
【図５】
2012252558.tif 000007
【図６】
2012252558.tif 000008
【図７】
2012252558.tif 000009