以下に実施形態が図面を参照して記述される。以下の記述において、略同一の機能および構成を有する構成要素は同一符号を付され、繰り返しの説明は省略される場合がある。或る実施形態についての記述は全て、明示的にまたは自明的に排除されない限り、別の実施形態の記述としても当てはまる。
各機能ブロックは、ハードウェア、コンピュータソフトウェアのいずれかまたは両者を組み合わせたものとして実現することができる。このため、各機能ブロックがこれらのいずれでもあることが明確となるように、概してそれらの機能の観点から記述される。また、各機能ブロックが、以下の例のように区別されていることは必須ではない。例えば、一部の機能が例示の機能ブロックとは別の機能ブロックによって実行されてもよい。さらに、例示の機能ブロックがさらに細かい機能サブブロックに分割されていてもよい。
また、実施形態の方法のフローにおけるいずれのステップも、例示の順序に限定されず、そうでないと示されない限り、例示の順序とは異なる順序でおよび(または)別のステップと並行して起こることが可能である。
本明細書および特許請求の範囲において、ある第1要素が別の第2要素に「接続されている」とは、第1要素が直接的または常時あるいは選択的に導電性となる要素を介して第2要素に接続されていることを含む。
<第1実施形態>
<1.1.構造(構成)>
図1は、第1実施形態のメモリシステム中の要素および接続、ならびに関連する要素を示す。図1に示されるように、メモリシステム100は、2以上の記憶装置MCおよびメモリコントローラ2を含む。メモリシステム100は、例えば、SSD(solid state drive)またはSDTMカードであることが可能である。図1および以下の記述は、一例として、メモリシステム100が4つの記憶装置MC、すなわち記憶装置MC0、MC1、MC2、およびMC3を含む例に基づく。記憶装置MCは、例えば、半導体メモリチップであることが可能である。
メモリコントローラ2は記憶装置MCと接続されている。メモリコントローラ2は、ホスト装置200から要求を受け取り、ホスト装置200からの要求に基づいて動作し、記憶装置MCを制御する。メモリコントローラ2は、例えば、ホスト装置200から受け取った要求に基づいて記憶装置MCを制御する。具体的には、メモリコントローラ2は、記憶装置MCにデータを書込み、記憶装置MCからデータをリードする。
メモリコントローラ2は、NANDバスを介して記憶装置MCと接続されている。NANDバスは、複数の種類の制御信号および8ビットの幅の入出力信号DQを伝送する。複数の種類の制御信号のうちの何種類かの制御信号および入出力信号DQは、記憶装置MC0、MC1、MC2、およびMC3で共通である。一方、別の制御信号は記憶装置MCごとに設けられる。制御信号は、信号 ̄CE、CLE、ALE、 ̄WE、 ̄RE、 ̄WP、データストローブ信号DQSならびに ̄DQS、レディ・ビジー信号RBを含む。符号「 ̄」は、反転論理を示し、「 ̄」を付された信号がローレベルのときにアサートされていることを示す。レディ・ビジー信号RBは、記憶装置MCごとに用意されており、すなわち、レディ・ビジー信号RBは、記憶装置MC0、MC1、MC2、およびMC3のそれぞれのためのレディ・ビジー信号RB0、RB1、RB2、およびRB3を含む。チップイネーブル信号 ̄CEは、記憶装置MCごとに用意されており、すなわち、チップイネーブル信号 ̄CEは、記憶装置MC0、MC1、MC2、およびMC3のそれぞれのためのチップイネーブル信号 ̄CE0、 ̄CE1、 ̄CE2、および ̄CE3を含む。
チップイネーブル信号 ̄CE0、 ̄CE1、 ̄CE2、および ̄CE3は、アサートされていると、それぞれ、記憶装置MC0、MC1、MC2、およびMC3をイネーブルにする。アサートされている信号CLEは、この信号CLEと並行して記憶装置MCに入力されている入出力信号DQがコマンドであることを記憶装置MCに通知する。アサートされている信号ALEは、この信号ALEと並行して記憶装置MCに入力されている入出力信号DQがアドレス信号であることを記憶装置MCに通知する。アサートされている信号 ̄WEは、この信号 ̄WEと並行して記憶装置MCに入力されている入出力信号DQを記憶装置MCに取り込ませることを指示する。アサートされている信号 ̄REは、記憶装置MCに入出力信号DQを出力することを指示する。レディ・ビジー信号RB0、RB1、RB2、およびRB3は、各信号を出力する記憶装置MCがレディ状態であるか、ビジー状態であるかを示し、ローレベルによってビジー状態を示す。記憶装置MCは、レディ状態においてメモリコントローラ2からの命令を受け付け、ビジー状態においてメモリコントローラ2からの命令を受け付けない。
入出力信号DQは、8ビットの幅を有し、コマンド(CMD)、書き込みデータまたはリードデータ(DAT)、アドレス(Add)、ステータス(STA)等を含む。「DQ」の後ろに付されているような「<M:0>」(Mは自然数)との記述は、対応する信号が第0ビットから第Mビットを有することを示す。
データストローブ信号DQSおよび ̄DQSは、入出力信号DQを取り込むタイミングを指定する。
<1.1.1.メモリコントローラ>
図1は、また、メモリコントローラ2のハードウェアの構成を示す。メモリコントローラ2は、図1に示されるように、ホストインターフェイス21、CPU(central processing unit)22、RAM(random access memory)23、ROM(read only memory)24、メモリインターフェイス25、誤り訂正回路(ECC(error correction code)26を含む。ROM24に格納されていてRAM23上にロードされたファームウェア(プログラム)がCPU22によって実行されることによって、メモリコントローラ2は種々の動作、およびホストインターフェイス21ならびにメモリインターフェイス25の機能の一部を実行する。ファームウェアは、メモリコントローラ2に、各実施形態として記述される動作を行わせることができるように構成されている。これにより、後述のデータマネージャ211、リードコントローラ212、書き込みコントローラ213は、各実施形態として記述される動作されるように構成されている。
ホストインターフェイス21は、バスを介してホスト装置200と接続され、メモリコントローラ2とホスト装置200との通信を司る。メモリインターフェイス25は、記憶装置MCと接続され、メモリコントローラ2と記憶装置MCとの通信を司る。
誤り訂正回路(ECC回路)26は、記憶装置MCに書き込まれるデータに対して符号化を行う。また、誤り訂正回路26は、記憶装置MCからリードされたデータに対して、復号化を行う。この符号化と復号化は誤りの検出および訂正に必要な処理である。具体的には、誤り訂正回路26は、記憶装置MCに書き込まれるデータ(実書き込みデータ)に対して誤り訂正符号化処理を行う。誤り訂正符号の生成方式に基づいて、誤り訂正符号化によって誤り訂正のための情報を含んだ実書き込みデータとは異なるデータが生成される場合もある。誤り訂正符号化後の冗長データを含んだデータは、書き込みデータとして記憶装置MCに書き込まれる。また、誤り訂正復号化処理では、誤り訂正回路26は、記憶装置MCからリードされたデータの中の誤りを検出し、誤りがある場合に誤りの訂正を試みる。
図2は、第1実施形態のメモリコントローラ2の機能ブロックを示す。各機能ブロックは、RAM23上のファームウェアに従ったCPU22の動作、RAM23の記憶空間の一部、および(または)専用のハードウェア(回路)により実現されることが可能である。
図2に示されるように、メモリコントローラ2は、データマネージャ211、リードコントローラ212、書き込みコントローラ213を含む。データマネージャ211は、ホスト装置200から与えられたデータの論理アドレスと、当該データの記憶装置MC中の位置(物理アドレス)を管理する。そのために、データマネージャ211は、アドレス変換テーブル221を含む。
リードコントローラ212は、例えばホスト装置200から受け取られたコマンドに基づいて、記憶装置MCからのデータをリードするための処理を実行する。具体的には、リードコントローラ212は、例えばホスト装置200からメモリシステム100において或るデータをリードすることを要求されると、このリード要求データの論理アドレスとアドレス変換テーブル221を参照して、リード要求データが保持されている物理アドレスを割り出す。リードコントローラ212は、割り出された物理アドレスからデータをリードすることを指示するコマンドセットをメモリインターフェイス25を介して記憶装置MCに送信する。
書き込みコントローラ213は、例えばホスト装置200から受け取られたコマンドに基づいて、記憶装置MCにデータを書き込むための処理を実行する。具体的には、書き込みコントローラ213は、例えばホスト装置200からメモリシステム100において或るデータを保持することを要求されると、書き込まれるべきデータ(書き込みデータ)が書き込まれる記憶装置MC中の位置を決定し、書き込みデータの論理アドレスと書き込まれる位置の物理アドレスとの関係をアドレス変換テーブル221において保持する。そして、書き込みコントローラ213は、決定された物理アドレスに書き込みデータの書き込みを指示するコマンドセットをメモリインターフェイス25を介して記憶装置MCに送信する。
<1.1.2.記憶装置>
図3は、第1実施形態の記憶装置MCの機能ブロックを示す。各記憶装置MCは、図3に示される機能ブロックを有する。各記憶装置MCは、複数のプレーンPB(PB0およびPB1)、入出力回路11、およびシーケンサ12等の要素を含む。図3は記憶装置MCが2つのプレーンPB0およびPB1を含む例を示すが、第1実施形態はこの例に限られず、3以上のプレーンPBが設けられていてもよい。
入出力回路11は、NANDバスを介してメモリコントローラ2と接続されている。シーケンサ12は、入出力回路11からコマンドおよびアドレス信号を受け取り、コマンドおよびアドレス信号に基づいて、プレーンPBを制御する。
各プレーンPBは、互いに独立しており、互いに独立してデータのリード、書き込み、および消去を実行できる。各プレーンPBは、メモリセルアレイ13、電位生成回路14、ドライバ15、センスアンプ16、およびロウデコーダ17を含む。すなわち、プレーンPB0は、メモリセルアレイ13_0、電位生成回路14_0、ドライバ15_0、センスアンプ16_0、およびロウデコーダ17_0を含む。プレーンPB1は、メモリセルアレイ13_1、電位生成回路14_1、ドライバ15_1、センスアンプ16_1、およびロウデコーダ17_1を含む。
各メモリセルアレイ13は複数のメモリブロック(ブロック)BLK(BLK0、BLK1、…)を含む。相違するプレーンPBは、同じアドレスのブロックBLKを含む。相違するプレーンPBの同じアドレスのブロックBLKは、プレーンPBの特定によって区別される。各ブロックBLKは複数のストリングユニットSU(SU0、SU1、…)の集合である。各ストリングユニットSUは複数のNANDストリング(ストリング)STR(STR0、STR1、…)(図示せず)の集合である。ストリングSTRは、複数のメモリセルトランジスタMTを含む。
電位生成回路14は、シーケンサ12の制御に基づいて、データの書き込み、リード、および消去を含む種々の動作に必要な種々の電位を生成する。電位生成回路14_0および14_1は、互いに独立して動作でき、互いに独立して電位を生成できる。
ドライバ15は、同じプレーンPBに属する(対応する)電位生成回路14から複数の電位を受け取り、受け取られた電位のうちの選択されたものを対応するロウデコーダ17に供給する。ロウデコーダ17は、ドライバ15から種々の電位を受け取り、入出力回路11からアドレス信号を受け取り、対応するメモリセルアレイ13のうちの受け取られたアドレス信号に基づいて選択された1つのブロックBLKに対応するドライバ15からの電位を転送する。
センスアンプ16は、対応するメモリセルアレイ13中のメモリセルトランジスタMTの状態をセンスし、センスされた状態に基づいてリードデータを生成し、また、書き込みデータをメモリセルトランジスタMTに転送する。
<1.1.3.メモリセルアレイ>
図4は、第1実施形態のメモリセルアレイ11中のいくつかの要素および接続の例を示し、1つのブロックBLK0の要素および接続、ならびに関連する要素を示す。複数のブロックBLK、例えば全てのブロックBLKは、みな図4に示される要素および接続を含む。
1つのブロックBLKは、複数(例えば4つ)のストリングユニットSU0からSU3を含む。
p(pは自然数)本のビット線BL0からBL(p-1)の各々は、各ブロックBLKにおいて、ストリングユニットSU0からSU3の各々からの1つのストリングSTRと接続されている。
各ストリングSTRは、1つの選択ゲートトランジスタST、複数(図では例として8つ)のメモリセルトランジスタMT(MT0からMT7)、および1つの選択ゲートトランジスタDT(DT0、DT1、DT2、またはDT3)を含む。トランジスタST、MT、およびDTは、この順で、ソース線CELSRCと1つのビット線BLとの間に直列に接続されている。メモリセルトランジスタMTは、制御ゲート電極(ワード線WL)、および周囲から絶縁された電荷蓄積層を含み、電荷蓄積層中の電荷の量に基づいてデータを不揮発に保持することができる。
相違する複数のビット線BLとそれぞれ接続された複数のストリングSTRは1つのストリングユニットSUを構成する。各ストリングユニットSUにおいて、メモリセルトランジスタMT0からMT7の制御ゲート電極は、ワード線WL0からWL7とそれぞれ接続されている。1つのストリングユニットSU中でワード線WLを共有するメモリセルトランジスタMTの組は、セルユニット(メモリセルセット)CUと称される。また、各ストリングユニットSU中の複数のストリングSTRのそれぞれの選択ゲートトランジスタDTのゲート電極は互いに接続されている。
トランジスタDT0からDT3(図4において、DT2、DT3は図示せず)はストリングユニットSU0からSU3にそれぞれ属する。ストリングユニットSU0の複数のストリングSTRの各々のトランジスタDT0のゲートは選択ゲート線SGDL0に接続されている。同様に、ストリングユニットSU1、SU2、SU3のそれぞれの複数のストリングSTRの各々のトランジスタDT1、DT2、DT3のゲートは選択ゲート線SGDL1、SGDL2、SGDL3に接続されている。
<1.1.4.セルトランジスタ>
図5を参照して、メモリセルトランジスタMTについて記述される。各記憶装置MCは、1つのメモリセルトランジスタMTにおいて2ビット以上のデータを保持することができる。図5は、第1実施形態のメモリシステムの1メモリセルトランジスタMTあたり4ビットのデータを保持するメモリセルトランジスタMTの閾値電圧の分布とデータのマッピングを示す。各メモリセルトランジスタMTの閾値電圧は、保持されるデータに応じた値を有する。メモリセルトランジスタMTあたり4ビットの記憶の場合、各メモリセルトランジスタMTは、16個の状態のうちの閾値電圧に応じた1つの状態にあることが可能である。16個の状態は、それぞれ、“0”、“1”、“2”、“3”、“4”、“5”、“6”、“7”、“8”、“9”、“10”、“11”、“12”、“13”、“14”、および“15”ステートと称される。“0”ステート、“1”ステート、“2”ステート、“3”ステート、“4”ステート、“5”ステート、“6”ステート、“7”ステート、“8”ステート、“9”ステート、“10”ステート、“11”ステート、“12”ステート、“13”ステート、“14”ステート、および“15”ステートにあるメモリセルトランジスタMTは、この順でより高い閾値電圧を有する。“0”ステートは消去状態に相当する。
データ書き込みによって、書き込み対象のメモリセルトランジスタMTは、書き込まれるデータに基づいて、“0”ステートに維持されるか、または“1”ステート、“2”ステート、“3”ステート、“4”ステート、“5”ステート、“6”ステート、“7”ステート、“8”ステート、“9”ステート、“10”ステート、“11”ステート、“12”ステート、“13”ステート、“14”ステート、および“15”ステートのいずれかに移される。“0”ステートにあるメモリセルトランジスタMTは、データ書き込みによっても閾値電圧を上昇されないメモリセルトランジスタMTであるが、以下、データ書き込みによってメモリセルトランジスタMTを“0”ステートにとどめることも書き込みと称される。
各ステートに4ビットのデータが任意の形で割り当てられることが可能である。第1実施形態では、各ステートは、以下の4ビットデータを有しているものとして扱われる。以下の記述の“ABCD”は、A、B、C、およびDが、それぞれ、トップ、アッパー、ミドル、ロワーのビットの値を示す。
“0”ステート :“1111”
“1”ステート :“1110”
“2”ステート :“0110”
“3”ステート :“0010”
“4”ステート :“0000”
“5”ステート :“0001”
“6”ステート :“0011”
“7”ステート :“0111”
“8”ステート :“0101”
“9”ステート :“1101”
“10”ステート:“1001”
“11”ステート:“1011”
“12”ステート:“1010”
“13”ステート:“1000”
“14”ステート:“1100”
“15”ステート:“0100”
ある同じ4ビットデータを保持する複数のメモリセルトランジスタMTであっても、メモリセルトランジスタMTの特性のばらつき等に起因して、互いに相違する閾値電圧を有し得る。
データリード対象のメモリセルトランジスタ(選択メモリセルトランジスタ)MTによって保持されているデータの割り出しのために、選択メモリセルトランジスタMTのステートが判断される。選択メモリセルトランジスタMTの閾値電圧がどの範囲にあるかが、この選択メモリセルトランジスタMTのステートの割り出しに用いられる。選択メモリセルトランジスタMTの閾値電圧の範囲の割り出しのために、当該選択メモリセルトランジスタMTが、或るリード電圧VCGRを超える閾値電圧を有するか否かが判断される。リード電圧VCGR以上の閾値電圧を有するメモリセルトランジスタMTは、制御ゲート電極においてリード電圧VCGRを受け取ってもオフを維持する。一方、リード電圧VCGR未満の閾値電圧を有するメモリセルトランジスタMTは、制御ゲート電極においてリード電圧VCGRを受け取っていると、オンしている。
選択メモリセルトランジスタMTが、“0”ステート、“1”ステート、“2”ステート、“3”ステート、“4”ステート、“5”ステート、“6”ステート、“7”ステート、“8”ステート、“9”ステート、“10”ステート、“11”ステート、“12”ステート、“13”ステート、および“14”ステートより上のステートにあるかの判断のためのリードは、それぞれ、1R(リード)、2R、3R、4R、5R、6R、7R、8R、9R、10R、11R、12R、13R、14R、および15Rと称される。1R、2R、3R、4R、5R、6R、7R、8R、9R、10R、11R、12R、13R、14R、および15Rにおいて、それぞれ、リード電圧V1、V2、V3、V4、V5、V6、V7、V8、V9、V10、V11、V12、V13、V14、およびV15が用いられることが可能である。リード電圧V1、V2、V3、V4、V5、V6、V7、V8、V9、V10、V11、V12、V13、V14、およびV15は、例えばデフォルトの大きさを有する。
リード電圧V1は、“0”ステート中のメモリセルトランジスタMTの最も高い閾値電圧より高く、書き込まれた直後の“1”ステート中のメモリセルトランジスタMTの最も低い閾値電圧より低い。
同様に、α(αは自然数)が2から15の各々のケースについて、リード電圧Vαは、書き込まれた直後の“(α-1)”ステート中のメモリセルトランジスタMTの最も高い閾値電圧より高く、書き込まれた直後の“α”ステート中のメモリセルトランジスタMTの最も低い閾値電圧より低い。
1つのセルユニットCUのメモリセルトランジスタMTの同じ位置(桁)のビットのデータの組は、1つのページを構成する。各セルユニットCUのメモリセルトランジスタMTの最上位(1桁目)のビット(トップビット)のデータの組は、トップページと称される。各セルユニットCUのメモリセルトランジスタMTの最上位から2桁目のビット(アッパービット)のデータの組は、アッパーページと称される。各セルユニットCUのメモリセルトランジスタMTの最上位から3桁目のビット(ミドルビット)のデータの組は、ミドルページと称される。各セルユニットCUのメモリセルトランジスタMTの最下位(4桁目)のビット(ロワービット)のデータの組は、ロワーページと称される。
各ページのデータは、値の相違する複数のリード電圧VCGRを用いたリードにより割り出される。どの大きさのリード電圧VCGRが使用されるかは、“0”ステートから“15”ステートの各々にどの組み合わせの4ビットデータがマッピングされるかに基づいて定まる。図5のステートのビットの組(ビットセット)へのマッピングの例では、ロワーページの各ビットのステートは、1R、5R、および12Rによって割り出される。すなわち、1Rおよび5Rによって、リード電圧V1とリード電圧V5の間にあると割り出された選択メモリセルトランジスタMTは、ロワービットにおいて0を保持していると割り出されることが可能である。同様にして、1R、5R、12Rによって、各選択メモリセルが、“0”ステートにあるか、“1”、“2”、“3”、および“4”ステートのいずれかにあるか、“5”、“6”、“7”、“8”、“9”、“10”、および“11”ステートのいずれかにあるか、あるいは“12”、“13”、“14”、および“15”ステートのいずれかにあるかの割り出しを通じて、各選択メモリセルがロワービットにおいて“0”データを保持するか、“1”データを保持するかが割り出されることが可能である。1以上のリード電圧を使用して、選択セルユニットCUのロワーページのデータをリードする(割り出す)ことは、ロワーページリードと称される。
ミドルページ、アッパーページ、およびトップページのリードも同様であり、図5のステートとビットセットのマッピングの例に基づくと、以下の通りである。
各選択メモリセルトランジスタMTのミドルビットの値は、4R、6R、8R、11R、および13Rによって割り出されることが可能である。1以上のリード電圧を使用して、選択セルユニットCUのミドルページのデータをリードすることは、ミドルページリードと称される。
各選択メモリセルトランジスタMTのアッパービットの値は、3R、7R、10R、および14Rによって割り出されることが可能である。1以上のリード電圧を使用して、選択セルユニットCUのアッパーページのデータをリードすることは、アッパーページリードと称される。
各選択メモリセルトランジスタMTのトップビットの値は、2R、9R、および15Rによって割り出されることが可能である。1以上のリード電圧を使用して、選択セルユニットCUのトップページのデータをリードすることは、トップページリードと称される。
図5のステートとビットセットのマッピングは、ロワー、ミドル、アッパー、およびトップページリードに、それぞれ、3つ、5つ、4つ、および3つのリード電圧VCGRが使用される。このようなマッピングは、ロワー、ミドル、アッパー、およびトップページリードに必要なリード電圧VCGRの数を用いて、「3543マッピング」と称される。すなわち、「HIJKマッピング」(H、I、J、およびKは自然数)なる記載は、ロワー、ミドル、アッパー、およびトップページリードにそれぞれH個、I個、J個、およびK個のリード電圧VCGRが使われることになるマッピングを指す。
最小の個数のリード電圧VCGRの印加によりデータが割り出されることが可能なページは、高速ページと称される場合がある。また、最小の個数以外のリード電圧VCGRの印加によりデータが割り出されることが可能なページは、非高速ページと称される場合がある。図5の3543マッピングの例では、ロワーページおよびトップページが高速ページに相当し、ミドルページおよびアッパーページが非高速ページに相当する。
<1.2.動作>
<1.2.1.データ書き込み>
メモリコントローラ2は、以下に記述されるように記憶装置MCにデータを書き込む。
図6は、第1実施形態のメモリコントローラ2でのデータ書き込みのためのデータの処理の例を示す。図6の最上段に示されるように、メモリコントローラ2は、ホスト装置200から、或る大きさのデータをメモリシステム100において保持する要求(命令)を、保持要求の対象のデータとともに受け取る。保持要求の対象のデータは、保持要求データと称される。
保持要求データは、メモリコントローラ2に受け取られると、RAM23に保持される。書き込みコントローラ213は、図6の最下段に示されるように、保持要求データから、複数のページデータを生成する。各ページデータは、図6の最下段の1つの四角に相当し、ページのサイズと同じかそれより小さいサイズを有し、書き込みはページサイズのデータ単位で管理される。以下、ページサイズのデータは、単にページデータと称される場合がある。書き込まれる場合、ページデータは、書き込みデータに相当する。書き込まれる各ページデータ(書き込みページデータ)は、書き込みコントローラ213によって付された1つの論理アドレスを有する。図6の例では、書き込みページデータは、論理アドレスPG0からPG7の固有の1つを有する。このような保持要求データからの複数の書き込みページデータの生成は任意の方法で行われることが可能であり、以下に一例が記述される。
書き込みコントローラ213は、図6の2段目に示されるように、保持要求データを複数の部分(データユニットDUと称される)へと分け、各データユニットDUと当該データユニットDUに誤り訂正符号化処理を施すことによって、当該データユニットDUに由来する書き込みページデータを生成する。図6の例では、保持要求データは、8個のデータユニットDU(DU0からDU7)へと分けられる。データユニットDU0からDU7は、例えば、保持要求データ中でこの順に並び、または、保持要求データの中の任意の位置にあることが可能である。各データユニットDUは、1つのデータユニットDUと当該データユニットDUのために生成される冗長データの組がページサイズと同じかそれより小さいサイズになることを可能にするサイズを有する。書き込みコントローラ213は、誤り訂正回路26を制御して、データユニットDU0からDU7のそれぞれについての冗長データRD0からRD7を生成する。
書き込みコントローラ213は、各データユニットDUと対応する冗長データRDの組を含んだ書き込みページデータに論理アドレスを付す。図6の例では、データユニットDU0と冗長データRD0の組を含んだ書き込みページデータには、論理アドレスPG0が割り当てられる。同様に、βが1から7の各々のケースについて、データユニットDUβと冗長データRDβを含んだ書き込みページデータには、論理アドレスPGβが割り当てられる。以下、論理アドレスPG0を付された書き込みページデータは、書き込みページデータ(または単にページデータ)PG0と称される場合がある。同様に論理アドレスPGz(zは自然数)を付された書き込みページデータは書き込みページデータPGzと称される場合がある。
図6に示されるようなデータ処理は、例えば、データユニットDU0~DU7の「DUz」のzの値の昇順に行われることが可能である。しかしながら、第1実施形態はこの例に限られず、データユニットDU0からDU7は、任意の順番で処理されることが可能である。
メモリコントローラ2(特に、書き込みコントローラ213)は、書き込みページデータPGzを、以下に記述される方法で記憶装置MCに書き込む。
メモリコントローラ2は、連続する論理アドレスを有するn個のページデータPGを、独立して動作可能なn個のプレーンPBまたはn個の記憶装置MCに1つずつ書き込み、かつ、n個のページデータPG(第1ページデータ)を或る高速ページに書き込み、残るn-1個のページデータPGを第1ページデータが書き込まれるページとは別のページ(高速ページまたは非高速ページ)に書き込む。例として、書き込みページデータPGが1セルユニットCUにページごとに書き込まれるが、このことは実施形態で必須ではなく、1セルユニットCU中の1つの選択セルユニットの1つのメモリセルトランジスタのみに書き込まれてもよい。以上のような特徴の書き込みの第1実施形態での具体的な例は以下の通りである。
図7は、第1実施形態のメモリシステム100でのデータ書き込みのフローを示す。特に、図7は、図6に示されるような論理アドレスの連続する8つのページデータPGを或る記憶装置MCw(wは0または自然数)に書き込むためのフローを示す。以下、記憶装置MCwのプレーンPBkの選択セルユニットCUは、「選択セルユニットCUswk」と称される。
8つのページデータPGは、ある記憶装置MCのプレーンPB0中の或る選択セルユニットCUsw0の4つのページ、およびプレーンPB1中の或る選択セルユニットCUsw1の4つのページに書き込まれる。以下、記憶装置MC0が例として使用される。ページデータPGが書き込まれる領域は、記憶領域ユニットMAと称される。記憶領域ユニットMAを構成する2つの選択セルユニットCUsのアドレス(接続されたワード線WLのアドレス)は、プレーンPB0とPB1とで同じであってもよいし、異なっていてもよい。以下、記憶装置MC中で、或る個数(本例では8個)の論理アドレスの連続する現行の例では、記憶領域ユニットMAは、プレーンPB0中のセルユニットCUs00のロワー、ミドル、アッパー、およびトップページ、プレーンPB1中のセルユニットCUs01のロワー、ミドル、アッパー、およびトップページの集合である。以下、図6のような書き込みページデータPG0~PG7の書き込みのケースが例として記述される。他の8個の連続する論理アドレスを有するページデータPGzからPG(z+7)についても、同じであり、以下の記述のページデータPG0~PG7の書き込みが、それぞれ当てはまる。
書き込みコントローラ213は、複数のページデータPGを以下に記述される規則に則って複数の組に分け、各組の中のページデータPGを以下に記述される規則に則って記憶装置MCに書き込む。以下、ページデータPGの組は、データセットと称される。
書き込みコントローラ213は、論理アドレスの連続する2つのページデータPGから1つのデータセットを構成する。具体的には、書き込みコントローラ213は、ページデータPGx(xは0または自然数)およびPG(x+1)からデータセットを構成する。そして、書き込みコントローラ213は、データセットの2つの書き込みデータの一方をプレーンPB0に書き込み、他方をプレーンPB1に書き込む。さらに、書き込みコントローラ213は、ページデータPGxおよびPG(x+1)のうちのより小さい論理アドレスを有するページデータPGxを4つのページのうちの高速ページに書き込み、ページデータPGxおよびPG(x+1)のうちのより大きい論理アドレスを有する書き込みページデータPG(x+1)を4つのページのうちの非高速ページに書き込む。
図7に示されるように、メモリコントローラ2は、パラメータrを、1つの記憶領域ユニットMAに書き込まれるべき複数のページデータPGのうちの最小の論理アドレスに設定する(ステップST1)。図7に示す例では、rは0に設定される。書き込みコントローラ213は、ページデータPGrおよびPG(r+1)のデータセットを書き込む。データセットの書き込みは数回行われ、第1ループでは、rは0である。まず、書き込みコントローラ213は、ページデータPGrを記憶領域ユニットMAのプレーンPB0の空いている(消去済みの)高速ページに書き込む(ステップST3)。次いで、書き込みコントローラ213は、ページデータPG(r+1)を記憶領域ユニットMAのプレーンPB1の空いている非高速ページに書き込む(ステップST4)。
書き込みコントローラ213は、ページデータPG(r+2)およびPG(r+3)のデータセットを書き込む。具体的には、まず、書き込みコントローラ213は、ページデータPG(r+2)を記憶領域ユニットMAのプレーンPB1の空いている高速ページに書き込む(ステップST6)。次いで、書き込みコントローラ213は、ページデータPG(r+3)を記憶領域ユニットMAのプレーンPB0の空いている非高速ページに書き込む(ステップST7)。
書き込みコントローラ213は、記憶領域ユニットMAに書き込まれるべき全てのページデータPGの書き込みが完了したかを判断する(ステップST8)。本例では、r=7であるかが判断される。完了している場合(Yes分岐)、図7のフローは終了する。全ページデータPGの書き込みが完了していない場合(No分岐)、処理は、ステップST9に移行する。
ステップST9において、書き込みコントローラ213は、r==r+4とする。すなわち、現在のrの値に4を加える。ステップST9は、ステップST3に継続する。
図8は、第1実施形態の記憶装置MC中でページデータPGが書き込まれる位置の例を示す。具体的には、図8は、図7の書き込みによってページデータPGが書き込まれる位置の例を示し、例として記憶装置MC0について示す。
図8に示されるように、ページデータPG0は、プレーンPB0の高速ページ、例えばロワーページに書き込まれ、ページデータPG1は、プレーンPB1の非高速ページ、例えばミドルページに書き込まれる。
ページデータPG2は、プレーンPB1の高速ページ、例えばロワーページに書き込まれ、ページデータPG3は、プレーンPB0の非高速ページ、例えばミドルページに書き込まれる。
ページデータPG4は、プレーンPB0の高速ページ、例えばトップページに書き込まれ、ページデータPG5は、プレーンPB1の非高速ページ、例えばアッパーページに書き込まれる。
ページデータPG6は、プレーンPB1の高速ページ、例えばトップページに書き込まれ、ページデータPG7は、プレーンPB0の非高速ページ、例えばアッパーページに書き込まれる。
図8の書き込みは例であり、第1実施形態はこの例に限られない。例えば、より小さい論理アドレスを有するページデータ(例えばページデータPG0および(または)PG2)がトップページに書き込まれ、ページデータPG1およびPG3がアッパーページに書き込まれてもよい。この場合、より大きい論理アドレスを有するページデータ(例えばページデータPG4および(または)PG5)がロワーページに書き込まれ、ページデータPG6およびPG7がミドルページに書き込まれる。
図9は、第1実施形態のメモリシステム100でのデータ書き込みのための入出力信号DQの流れ、ならびにレディ・ビジー状態を示す。より具体的には、図9は、図8のデータ書き込みを行うためのメモリコントローラ2から記憶装置MC0に向かって流れる入出力信号DQの例を示す。
メモリコントローラ2は、例えば、ページデータPG0~PG7の論理アドレスの昇順で、書き込みを記憶装置MC0に指示する。図9は、この例に基づく。
図9に示されるように、メモリコントローラ2は、まず、ページデータPG0の書き込みのための信号DQを送信する。すなわち、メモリコントローラ2は、ページデータPG0と、ページデータPG0をプレーンPB0の選択セルユニットCUs00のロワーページに書き込むことを指示するコマンドセットを送信する。そのために、例えば、メモリコントローラ2は、コマンド01h、コマンド80h、アドレスAdd、ページデータPG0、およびコマンド1Ahを、この順で送信する。コマンド01hはロワーページを指定する。すなわち、コマンド01hは、コマンド01hに後続するコマンドのセットにより示される指示の対象がロワーページであることを指定する。コマンド80hは書き込みを指示し、コマンド1Ahは、選択セルユニットCUsに書き込まれるべきデータが後続することを示す。アドレスAddは、プレーンPB0を指定するとともに、セルユニットCUs00が含まれるブロックBLKおよびストリングユニットSU、ならびにセルユニットCUs00と接続されたワード線(選択ワード線)WLを指定する。アドレスAddは、例えば5サイクルにわたって送信され、図では、1サイクルとして描かれている。記憶装置MC0は、コマンド1Ahを受け取ると、一時的にビジー状態になり、その後、レディ状態になる。
以下、メモリコントローラ2は、ページデータPG0の書き込みのための信号DQと同様にして、ページデータPG1~PG7を書き込むための信号DQを順に送信する。ページデータPG1~PG7を書き込むための信号DQとページデータPG0の書き込みのための信号DQとの違いは、指定されるプレーンPB、指定されるページ、およびページデータPGである。ページデータPG7を書き込むための信号DQとページデータPG0の書き込みのための信号DQとの違いは、指定されるプレーンPB、指定されるページデータに加えて、コマンド1Ahに代えてコマンド10hを含むことである。メモリコントローラ2は、ミドルページ、アッパーページ、およびトップページを指定するために、コマンド01hに代えて、それぞれ、コマンド02h、03h、および04hを送信する。
具体的には、メモリコントローラ2は、ページデータPG1の書き込みのために、ページデータPG1、およびページデータPG1をプレーンPB1のミドルページに書き込むことを指示するコマンドセットを送信する。
メモリコントローラ2は、ページデータPG1の書き込みのための信号DQの送信後、ページデータPG2、およびページデータPG2をプレーンPB1のロワーページに書き込むことを指示するコマンドセットを送信する。
メモリコントローラ2は、ページデータPG2の書き込みのための信号DQの送信後、ページデータPG3、およびページデータPG3をプレーンPB0のミドルページに書き込むことを指示するコマンドセットを送信する。
メモリコントローラ2は、ページデータPG3の書き込みのため信号DQの送信後、ページデータPG4、およびページデータPG4をプレーンPB0のトップページに書き込むことを指示するコマンドセットを送信する。
メモリコントローラ2は、ページデータPG4の書き込みのための信号DQの送信後、ページデータPG5、およびページデータPG5をプレーンPB1のアッパーページに書き込むことを指示するコマンドセットを送信する。
メモリコントローラ2は、ページデータPG5の書き込みのための信号DQの送信後、ページデータPG6、およびページデータPG6をプレーンPB1のトップページに書き込むことを指示するコマンドセットを送信する。記憶装置MC0は、ページデータPG6の書き込みを指示するコマンドセット中のコマンド10hを受け取ると、プレーンPB0のセルユニットCUs00に、ページデータPG0、PG3、PG4、およびPG7を書き込む。
メモリコントローラ2は、ページデータPG6の書き込みのための信号DQの送信後、ページデータPG7、およびページデータPG7をプレーンPB0のアッパーページに書き込むことを指示するコマンドセットを送信する。記憶装置MC0は、ページデータPG7の書き込みを指示するコマンドセット中のコマンド10hを受け取ると、プレーンPB1のセルユニットCUs00に、ページデータPG1、PG2、PG5、およびPG6を書き込む。この書き込みの間、記憶装置MC0はビジー状態を維持する。書き込みが完了すると、記憶装置MC0はレディ状態に戻る。
<1.2.2.データリード>
図10は、第1実施形態のメモリシステム100でのデータリードにおける入出力信号DQ、レディ・ビジー信号RB、および選択ワード線WLの電位を時間に沿って示す。図10は、或る1つのプレーンPBでの選択セルユニットCUsのロワーページ、ミドルページ、アッパーページ、およびトップページからのデータリードを順に示している。しかしながら、図10は、選択セルユニットCUsのロワーページ、ミドルページ、アッパーページ、およびトップページからのデータリードを示すことを意図されており、示されているデータリードの対象のページの順番に意味はない。
図10に示されるように、ロワーページからのリードのために、メモリコントローラ2は、選択セルユニットCUsのロワーページからのデータのリードを指示するコマンドセットを送信する。そのために、例えば、メモリコントローラ2は、コマンド01h、コマンド00h、アドレスAdd、コマンド30hを、この順で送信する。コマンド00hはアドレスの送信が続くことを宣言し、コマンド30hは、指定されたアドレスのページからのデータのリードを指示する。アドレスAddは、プレーンPB、選択セルユニットCUsが含まれるブロックBLKおよびストリングユニットSU、ならびに選択ワード線WLを指定する。記憶装置MCは、コマンド30hを受け取ると、ロワーページリードを開始する。
指定されたページからのデータリードのために、記憶装置MCは、指定されたページに応じて定まる複数のリード電圧VCGRを選択ワード線WLに印加する。そして、各リード電圧VCGRを使用したシングルレベルリードを行い、結果をセンスアンプ16中のラッチに保持する。シングルレベルリードは、選択メモリセルトランジスタMTがリード電圧VCGR以上の閾値電圧を有しているか否かに基づいて定まる1ビットデータの集合を取得することを指す。各リード電圧VCGRでのシングルレベルリードにより、当該リード電圧VCGRによるシングルレベルリードの結果が得られ、こうして得られる複数のシングルレベルリードにそれぞれ基づくシングルレベルリードデータの論理演算により、ページデータが取得される。具体的には、以下の通りである。
図10に示されるとともに図5を参照して記述されるように、ロワーページリードのために、記憶装置MCは、リード電圧V1、V5、およびV12を順に印加する。そして、記憶装置MCは、リード電圧V1、V5、およびV12の各々が印加されている間にシングルレベルリード(1R、5R、または12R)を行って、結果をデータラッチに保持し、シングルレベルリードの結果を論理演算して、ロワーページデータを取得する。記憶装置MCは、メモリコントローラ2の指示(信号 ̄RE)に従って、得られたロワーページデータ(L-DAT)をメモリコントローラ2に送信する。
ミドルページリード、アッパーページリード、およびトップページリードについても同様である。記憶装置MCは、ミドルページリードのために、リード電圧V4、V6、V8、V11、およびV13を順に印加する。そして、記憶装置MCは、リード電圧V4、V6、V8、V11、およびV13の各々が印加されている間にシングルレベルリード(4R、6R、8R、11R、または13R)を行って、結果をデータラッチに保持し、シングルレベルリードの結果を論理演算して、ミドルページデータを取得する。記憶装置MCは、メモリコントローラ2の指示に従って、得られたミドルページデータ(M-DAT)をメモリコントローラ2に送信する。
記憶装置MCは、アッパーページリードのために、リード電圧V3、V7、V10、およびV14を順に印加する。そして、記憶装置MCは、リード電圧V3、V7、V10、およびV14の各々が印加されている間にシングルレベルリード(3R、7R、10R、または14R)を行って、結果をデータラッチに保持し、シングルレベルリードの結果を論理演算して、アッパーページデータを取得する。記憶装置MCは、メモリコントローラ2の指示に従って、得られたアッパーページデータ(U-DAT)をメモリコントローラ2に送信する。
記憶装置MCは、トップページリードのために、リード電圧V2、V9、およびV15を順に印加する。そして、記憶装置MCは、リード電圧V2、V9、およびV15の各々が印加されている間にシングルレベルリード(2R、9R、または15R)を行って、結果をデータラッチに保持し、シングルレベルリードの結果を論理演算して、トップページデータを取得する。記憶装置MCは、メモリコントローラ2の指示に従って、得られたトップページデータ(T-DAT)をメモリコントローラ2に送信する。
図11は、第1実施形態のメモリシステム100でのデータリードのフローの例を示す。特に、図11は、ある記憶装置MCの1つの記憶領域ユニットMAからのデータリードについて示す。記憶領域ユニットMAは、例として、記憶装置MC0中にある。
図11に示されるように、メモリコントローラ2は、ステップST11において、ページデータPGt(tは0または偶数の自然数)のリードを指示するコマンドセットを記憶装置MCに送信する。記憶装置MC0は、コマンドセットを受け取ると、ステップST12において、ページデータPGtのリードを開始する。
ステップST13において、メモリコントローラ2は、ページデータPG(t+1)のリードを記憶装置MC0に指示する。記憶装置MC0は、コマンドセットを受け取ると、ステップST14において、ページデータPG(t+1)のリードを開始する。
ステップST16において、記憶装置MC0中でのページデータPGtのリードが完了する。ステップST17において、メモリコントローラ2は、記憶装置MC0にページデータPGtの出力を指示する。
ステップST18において、記憶装置MC0中でのページデータPG(t+1)のリードが完了する。ステップST19において、メモリコントローラ2は、記憶装置MC0にページデータPG(t+1)の出力を指示する。
ステップST21において、メモリコントローラ2は、リード対象の記憶領域ユニットMAの全てのページからのデータリードが完了したかを判断する。この判断は、現行の例では、tが7であるかの判断に相当する。
リード対象の記憶領域ユニットMAの全てのページからのデータリードが完了していない場合(No分岐)、メモリコントローラ2は、ステップST22においてt==t+2とする。ステップST22は、ステップST11に継続する。リード対象の記憶領域ユニットMAの全てのページからのデータリードが完了した場合(Yes分岐)、処理は終了する。
図12は、第1実施形態のメモリシステム100でのデータリードの間の入出力信号DQの流れを時間に沿って示す。図12は、特に、図11の動作の間の状態を示し、記憶領域ユニットMAからのリード、すなわち、プレーンPB0およびプレーンPB1のそれぞれの選択セルユニットCUs00およびCUs01の各々の4つのページからのデータリードについて示す。
メモリコントローラ2は、1つの記憶領域ユニットMA中から、データセットごとにデータをリードし、各データセット中のいくつかのページデータPGを並行してリードする。データセットは、任意の順番でリードされることが可能であるが、例えばページデータPGの論理アドレスの昇順でリードが行われることが可能である。以下に、具体的な例が記述される。
図12に示されるように、メモリコントローラ2は、ページデータPG0およびPG1のデータセットを並行してリードすることを記憶装置MC0に指示する。そのために、メモリコントローラ2は、プレーンPB0の選択セルユニットCUs00に対するロワーページリードを指示するコマンドセット、および、プレーンPB1の選択セルユニットCUs00に対するミドルページリードを指示するコマンドセットを送信する。プレーンPB0の選択セルユニットCUs00に対するロワーページリードと、プレーンPB1の選択セルユニットCUs01に対するミドルページリードは、並行して行われる。送信されるコマンドセットは、このようなプレーンPB0およびPB1からの並行したリード(マルチプレーンリード)を指示する。
例として、メモリコントローラ2は、プレーンPB0の選択セルユニットCUs00のロワーページのデータをマルチプレーンリードすることを指示するコマンドセットを送信する。そのようなコマンドは、例えば、ロワーページを指示するコマンド01h、コマンド00h、リード対象のプレーンPB0と選択セルユニットCUs00を特定するアドレスAdd、コマンド32hを含む。コマンド32hは、マルチプレーンリードのために、コマンドセットが後続することを示す。記憶装置MC0は、コマンドセットを受け取ると、時刻t1からビジー状態になる。当該コマンドセットは、当該コマンドセットにより指示されるデータリードともにマルチプレーンリードされるコマンドセットが後続することを示しているので、記憶装置MC0は、時刻t1から短時間だけビジー状態になった後、時刻t2でレディ状態に戻る。
記憶装置MC0はまた、時刻t1までのコマンドセットの受領に応答して、時刻t1からプレーンPB0の選択セルユニットCUs00に対するロワーページリード(図では“ロワーリード”)を開始する。上に記述されるように、ロワーページリードは、1R、5R、および12Rを含む。
メモリコントローラ2は、時刻t2から、プレーンPB1の選択セルユニットCUs00に対するミドルページリードとともにマルチプレーンリードするためのコマンドセットを送信する。すなわち、記憶装置MC0は、時刻t2から、プレーンPB1の選択セルユニットCUs01に対するミドルページリードを指示するコマンドセットを送信する。このコマンドセットは、マルチプレーンリードの対象のデータリードを指定するコマンドセットが後続しないことを示し、例えば、ミドルページを指示するコマンド02h、コマンド00h、アドレスAdd、およびコマンド30hを含む。記憶装置MC0は、当該コマンドセットを受け取ると、ビジー状態にとどまる。
記憶装置MC0はまた、時刻t3までのコマンドセットの受領に応答して、時刻t3からプレーンPB1の選択セルユニットCUs01に対するミドルページリード(図では“ミドルリード”)を開始する。プレーンPB1の選択セルユニットCUs01に対するミドルページリードは、進行中のプレーンPB0の選択セルユニットCUs01に対するロワーページリードと並行して進行する。上に記述されるように、ミドルページリードは、4R、6R、8R、11R、および13Rを含む。
プレーンPB0の選択セルユニットCUs00に対するロワーページリードは、時刻t4で完了し、ロワーページデータ、すなわちページデータPG0が記憶装置MC0から出力されることが可能になる。記憶装置MC0(特に、シーケンサ12)は、リードの完了を検出して、時刻t4からレディ状態になる。メモリコントローラ2は、このレディ状態への移行を検出して、ページデータPG0の出力を記憶装置MC0に指示し、ページデータPG0を受け取る。時刻t4では、プレーンPB1でのミドルページリードは完了していない。
ページデータPG0の出力の間、プレーンPB1でのミドルページリードが進行し、ミドルページリードは時刻t5で完了し、ミドルページデータ、すなわちページデータPG1が記憶装置MC0から出力されることが可能になる。メモリコントローラ2は、例えば、ページデータPG0の受信の完了後、記憶装置MC0にステータスリードコマンドを送信して、ミドルページデータの完了を確認する。ステータスリードコマンドは、記憶装置MCの内部の状態に関する情報を送信することを記憶装置MCに指示するコマンドである。記憶装置MCは、ステータスリードコマンドを受け取ると、例えば、直前に受け取ったコマンドによる処理(現行の例では、ミドルページリード)の完了または未完了を示すステータスを送信することができる。メモリコントローラ2は、ステータスリードコマンドによってミドルページリードの完了を知り、時刻t5からページデータPG1の出力を記憶装置MC0に指示し、ページデータPG1を受け取る。
以下、ページデータPG0およびPG1のリードと同様にして、記憶装置MC0は、選択セルユニットCUs00およびCUs01中の残りのデータセットをマルチプレーンリードする。この処理の概略が以下に記述される。
ページデータPG1の受信が完了すると、メモリコントローラ2は、次のデータセット中のページデータを並行してリードする。例として、メモリコントローラ2は、ページデータPG2およびPG3のデータセットをマルチプレーンリードにより、並行してリードする。そのために、メモリコントローラ2は、例として、プレーンPB1の選択セルユニットCUs01のロワーページのデータのマルチプレーンリードを指示するコマンドセットを送信する。記憶装置MC0は、このコマンドセットを受け取ると、時刻t6から、プレーンPB1の選択セルユニットCUs01に対するロワーページリードを開始する。
メモリコントローラ2は、時刻t7から、プレーンPB0の選択セルユニットCUsのミドルページのデータのマルチプレーンリードを指示するコマンドセットを送信する。記憶装置MC0は、このコマンドセットを受け取ると、時刻t8から、プレーンPB0の選択セルユニットCUs00に対するミドルページリードを開始する。プレーンPB0でのミドルページリードは、進行中のプレーンPB1でのロワーページリードと並行して進行する。
プレーンPB1でのロワーページリードは、時刻t9で完了し、ロワーページデータ、すなわちページデータPG2が記憶装置MC0から出力されることが可能になる。メモリコントローラ2は、時刻t9から、ページデータPG2の出力を記憶装置MC0に指示し、ページデータPG2を受け取る。
ページデータPG2の出力の間、プレーンPB0でのミドルページリードが進行し、その後、ミドルページリードが完了し、ミドルページデータ、すなわちページデータPG3が記憶装置MC0から出力されることが可能になる。メモリコントローラ2は、ステータスリードを使用して、ミドルページリードの完了を知ると、時刻t10から、ページデータPG3の出力を記憶装置MC0に指示し、ページデータPG3を受け取る。
ページデータPG3の受信が完了すると、メモリコントローラ2は、次のデータセット中のページデータを並行してリードする。例として、メモリコントローラ2は、ページデータPG4およびPG5のデータセットをマルチプレーンリードにより、並行してリードする。そのために、メモリコントローラ2は、例として、プレーンPB0の選択セルユニットCUs00のトップページのデータのマルチプレーンリードを指示するコマンドセットを送信する。記憶装置MC0は、このコマンドセットを受け取ると、時刻t11から、プレーンPB0の選択セルユニットCUs00に対するトップページリードを開始する。
メモリコントローラ2は、時刻t12から、プレーンPB1の選択セルユニットCUs01のアッパーページのデータのマルチプレーンリードを指示するコマンドセットを送信する。記憶装置MC0は、このコマンドセットを受け取ると、時刻t13から、プレーンPB1の選択セルユニットCUs01に対するアッパーページリードを開始する。プレーンPB1でのアッパーページリードは、進行中のプレーンPB0でのトップページリードと並行して進行する。
プレーンPB0でのトップページリードは、時刻t14で完了し、トップページデータ、すなわちページデータPG4が記憶装置MC0から出力されることが可能になる。メモリコントローラ2は、時刻t14から、ページデータPG4の出力を記憶装置MC0に指示し、ページデータPG4を受け取る。
ページデータPG4の出力の間、プレーンPB0でのアッパーページリードが進行し、その後、アッパーページリードが完了し、アッパーページデータ、すなわちページデータPG5が記憶装置MC0から出力されることが可能になる。メモリコントローラ2は、ステータスリードを使用して、アッパーページリードの完了を知ると、時刻t15から、ページデータPG5の出力を記憶装置MC0に指示し、ページデータPG5を受け取る。
ページデータPG5の受信が完了すると、メモリコントローラ2は、次のデータセット中のページデータを並行してリードする。例として、メモリコントローラ2は、ページデータPG6およびPG7のデータセットをマルチプレーンリードにより、並行してリードする。そのために、メモリコントローラ2は、例として、プレーンPB1の選択セルユニットCUs01のトップページのデータのマルチプレーンリードを指示するコマンドセットを送信する。記憶装置MC0は、このコマンドセットを受け取ると、時刻t16から、プレーンPB1の選択セルユニットCUs01に対するトップページリードを開始する。
メモリコントローラ2は、時刻t17から、プレーンPB0の選択セルユニットCUs00のアッパーページのデータのマルチプレーンリードを指示するコマンドセットを送信する。記憶装置MC0は、このコマンドセットを受け取ると、時刻t18から、プレーンPB0の選択セルユニットCUs00に対するアッパーページリードを開始する。プレーンPB0でのアッパーページリードは、進行中のプレーンPB1でのトップページリードと並行して進行する。
プレーンPB1でのトップページリードは、時刻t19で完了し、トップページデータ、すなわちページデータPG6が記憶装置MC0から出力されることが可能になる。メモリコントローラ2は、時刻t19から、ページデータPG6の出力を記憶装置MC0に指示し、ページデータPG6を受け取る。
ページデータPG6の出力の間、プレーンPB0でのアッパーページリードが進行し、その後、アッパーページリードが完了し、アッパーページデータ、すなわちページデータPG7が記憶装置MC0から出力されることが可能になる。メモリコントローラ2は、ステータスリードを使用してアッパーページリードの完了を知ると、時刻t20から、ページデータPG7の出力を記憶装置MC0に指示し、ページデータPG7を受け取る。
<1.3.利点(効果)>
第1実施形態のメモリシステム100によれば、以下に記述されるように、メモリコントローラ2は短時間でデータを取得することができる。
ページデータPG0からPG7は、図13に示されるとともに以下に記述されるように或る記憶装置MC(例えばMC0)に書き込まれることが考えられる。図13は、記憶装置MC0中でのページデータPGが書き込まれる位置の参考用の例を示す。
図13に示されるように、最も単純な書き込みとして、ページデータPG0からPG7の各データセットは、相違するプレーンPBで、ロワーページ、ミドルページ、アッパーページ、およびトップページのうちの同じものに書き込まれる。すなわち、ページデータPG0はプレーンPB0のロワーページに書き込まれ、ページデータPG1はプレーンPB1のロワーページに書き込まれる。ページデータPG2はプレーンPB0のミドルページに書き込まれ、ページデータPG3はプレーンPB1のミドルページに書き込まれる。ページデータPG4はプレーンPB0のアッパーページに書き込まれ、ページデータPG5はプレーンPB1のアッパーページに書き込まれる。ページデータPG6はプレーンPB0のトップページに書き込まれ、ページデータPG7はプレーンPB1のトップページに書き込まれる。
このよう書き込みの結果、ページデータPG0からPG7のリードは、以下のように行われることが想定される。すなわち、ページデータPG0とPG1が並行してリードされ、ページデータPG2とPG3が並行してリードされ、ページデータPG4とPG5が並行してリードされ、ページデータPG6とPG7が並行してリードされる。この一連のリードの間のコマンドセットおよびデータの流れならびにレディ・ビジー信号RBの遷移は図14のようになる。図14は、メモリシステム100でのデータリードの間の入出力信号DQの参考用の例を時間に沿って示す。
図14に示されるように、メモリコントローラ2は、ページデータPG0およびPG1のリードを記憶装置MC0に指示する。記憶装置MC0がコマンドセットを受け取ると、プレーンPB0の選択セルユニットCUs00に対するロワーページリードが開始し、続けて、プレーンPB1の選択セルユニットCUs01に対するロワーページリードが開始する。2つのリードはいずれもロワーページからのリードであり、よって、ほぼ同じタイミングで完了する。ページデータPG0およびPG1が出力可能な状態になったことを受けて、メモリコントローラ2は、一方、例えば、ページデータPG0の出力を記憶装置MC0に指示し、ページデータPG0を受け取る。ページデータPG0の受信が完了すると、メモリコントローラ2は、ページデータPG1の出力を記憶装置MC0に指示する。よって、2つのプレーンPB0およびPB1からのデータリードには、プレーンPB0またはPB1での動作時間と、ページデータPG0の出力時間と、ページデータPG1の出力時間との和の時間を要する。
各ページリードのために、3または4つの相違するリード電圧VCGRの印加が必要なため、記憶領域ユニットMAの全ページからのデータリードの場合など、多くのページデータからのデータリードに時間を要する。
一方で、ページデータPG1は、出力される準備が完了しているにもかかわらず、ページデータPG0が出力されている間は、出力されることができず、この時間の有効活用が考えられる。
第1実施形態のメモリコントローラ2は、連続する論理アドレスを有する第1ページデータおよび第2ページデータの組ごとに書き込み先を決定し、並行して独立に動作できる2つのプレーンPBのうちの第1プレーンPBの高速ページに第1ページデータを書き込み、第2ページデータをもう一方の第2プレーンPBの非高速ページに書き込む。メモリコントローラ2は、このように書き込まれた第1および第2ページデータを並行してリードする。こうすることにより、第1ページデータのメモリセルアレイ13からのデータリードが先に完了し、第1ページデータが記憶装置MCから出力されている間に、第2ページデータのメモリセルアレイ13からのリードが進行することができる。よって、第1ページデータの出力と第2ページデータのリードの一部が並行して行われ、参考例(図14)のケースのような出力される準備が整ったデータが出力されることが可能になるまでの待ち時間は大きく抑制される。このため、第1ページデータの出力の間に第2ページデータのリードを進めることにより、第1および第2ページデータのリードおよび出力が効率よく行われることが可能である。
このような第1実施形態の利点は、以下の条件が満たされるように記憶領域ユニットMAが構成されることにより得られる。すなわち、いずれの非高速ページも高速ページとともに並行してリードされることを可能にする必要がある。そのためには、y(セルユニットCUあたりのページ数)/b(セルユニットCUあたりの高速ページ数)に等しい数の、論理アドレスが昇順で連続するページデータPGがデータセットを構成し、データセット中のページデータPGの数に等しい数の独立動作可能なプレーンPBにわたって記憶領域ユニットMAが構成される。第1実施形態では、1セルユニットCUは4ページのサイズの記憶領域を有し、1セルユニットCUは2つの高速ページを有する。このため、第1実施形態は、記憶領域ユニットMAは2つの独立して動作可能なプレーンPBを必要とし、記憶領域ユニットMAは、1つの記憶装置MC中の独立して動作可能な2つのプレーンPB0およびPB1に亘る。
<第2実施形態>
第2実施形態は、第1実施形態に類似し、第1実施形態とマッピングの点で相違する。以下、第1実施形態と異なる特徴が主に記述される。
第2実施形態のメモリシステム100および記憶装置MCの構成は、第1実施形態のものと同じである。
<2.1.マッピング>
第2実施形態では、4434マッピングが使用される。図15は、第2実施形態のメモリシステムの1メモリセルトランジスタMTあたり4ビットのデータを保持するメモリセルトランジスタMTの閾値電圧の分布とデータのマッピングを示す。図15に示されるように、第2実施形態では、各記憶装置MCは、各ステートを以下の4ビットデータを有しているものとして扱う。
“0”ステート :“1111”
“1”ステート :“1110”
“2”ステート :“1010”
“3”ステート :“1000”
“4”ステート :“1001”
“5”ステート :“0001”
“6”ステート :“0000”
“7”ステート :“0010”
“8”ステート :“0110”
“9”ステート :“0100”
“10”ステート:“1100”
“11”ステート:“1101”
“12”ステート:“0101”
“13”ステート:“0111”
“14”ステート:“0011”
“15”ステート:“1011”
4434マッピングでは、各ページのデータは、以下のリード電圧を使用して割り出される。
ロワーページリード :1R、4R、6R、および11R
ミドルページリード :3R、7R、9R、および13R
アッパーページリード:2R、8R、および14R
トップページリード :5R、10R、12R、および15R
4434マッピングでは、アッパーページが高速ページに相当し、ロワーページ、ミドルページ、およびトップページが非高速ページに相当する。
<2.2.データ書き込み>
第2実施形態では、各セルユニットCUが4ページのサイズのデータを保持し、4つのページはただ1つの高速ページを含む。このことに基づいて、第2実施形態では、記憶領域ユニットMAは、4つの独立して動作できるプレーンPBに亘る。y(セルユニットCUあたりのページ数)/b(セルユニットCUあたりの高速ページ数)=4であり、よって、論理アドレスの連続する4つの書き込みページデータPGがデータセットを構成し、4つの独立動作可能なプレーンPBにわたって記憶領域ユニットMAが構成される。
具体的には、第2実施形態の記憶領域ユニットMAは、記憶装置MC0のプレーンPB0およびPB1、ならびに記憶装置MC1のプレーンPB0およびPB1に亘る。第2実施形態の記憶領域ユニットMAは、以下、記憶領域ユニットMA2と称される。
図16は、記憶領域ユニットMA2、および第2実施形態の記憶装置MC中でページデータが書き込まれる位置の例を示す。図16に示されるように、記憶領域ユニットMA2は、記憶装置MC0のプレーンPB0中のセルユニットCUs00のロワー、ミドル、アッパー、およびトップページ、記憶装置MC0のプレーンPB1中のセルユニットCUs01のロワー、ミドル、アッパー、およびトップページ、記憶装置MC1のプレーンPB0中のセルユニットCUs10のロワー、ミドル、アッパー、およびトップページ、記憶装置MC1のプレーンPB1中のセルユニットCUs11のロワー、ミドル、アッパー、トップページの集合である。
このような記憶領域ユニットMA2の特徴に基づいて、論理アドレスの連続する16のページデータPGごとに1つの記憶領域ユニットMA2に保持される。図16は、具体的な例として、記憶領域ユニットMA2中の、論理アドレスの連続する16のページデータPG0からPG15が書き込まれる位置の例を示す。
γが0、4、8、および12の各ケースについて、ページデータPGγ、PG(γ+1)、PG(γ+2)、およびPG(γ+3)は1つのデータセットを構成する。
図16に示されるように、各データセットのページデータPGγ、PG(γ+1)、PG(γ+2)、およびPG(γ+3)は、記憶装置MC0およびMC1のプレーンPB0およびPB1に1つずつ書き込まれ、かつ、ページデータPGγ、PG(γ+1)、PG(γ+2)、およびPG(γ+3)の1つが高速ページ(アッパーページ)に書き込まれ、残りの3つは非高速ページに書き込まれる。また、1つのデータセットに含まれるとともに非高速ページに書き込まれる各ページデータは、ロワー、ミドル、およびトップページのうちの任意の1つに書き込まれる。そして、4つのデータセットが記憶領域ユニットMA2に書き込まれるように、ページデータPG0からPG15が書き込まれるページが決定される。そのような書き込みであれば、ページデータPG0からPG15が書き込まれる位置は、図16の例に限らない。例として、非高速ページに書き込まれるページデータPGは、ロワー、ミドル、およびトップページの相違する1つに書き込まれることが可能である。
図16に示されるように、ページデータPG0は記憶装置MC0のプレーンPB0の選択セルユニットCUs00のアッパーページに書き込まれる。ページデータPG1は記憶装置MC0のプレーンPB1の選択セルユニットCUs01のミドルページに書き込まれる。ページデータPG2は記憶装置MC1のプレーンPB0の選択セルユニットCUs10のロワーページに書き込まれる。ページデータPG3は記憶装置MC1のプレーンPB1の選択セルユニットCUs11のトップページに書き込まれる。
ページデータPG4は記憶装置MC0のプレーンPB1の選択セルユニットCUs00のアッパーページに書き込まれる。ページデータPG5は記憶装置MC0のプレーンPB0の選択セルユニットCUs00のミドルページに書き込まれる。ページデータPG6は記憶装置MC1のプレーンPB1の選択セルユニットCUs11のロワーページに書き込まれる。ページデータPG7は記憶装置MC1のプレーンPB0の選択セルユニットCUs10のトップページに書き込まれる。
ページデータPG8は記憶装置MC1のプレーンPB0の選択セルユニットCUs10のアッパーページに書き込まれる。ページデータPG9は記憶装置MC1のプレーンPB1の選択セルユニットCUs11のミドルページに書き込まれる。ページデータPG10は記憶装置MC0のプレーンPB0の選択セルユニットCUs00のトップページに書き込まれる。ページデータPG11は記憶装置MC0のプレーンPB1の選択セルユニットCUs01のロワーページに書き込まれる。
ページデータPG12は記憶装置MC1のプレーンPB1の選択セルユニットCUs11のアッパーページに書き込まれる。ページデータPG13は記憶装置MC1のプレーンPB0の選択セルユニットCUs10のミドルページに書き込まれる。ページデータPG14は記憶装置MC0のプレーンPB1の選択セルユニットCUs01のトップページに書き込まれる。ページデータPG15は記憶装置MC0のプレーンPB0の選択セルユニットCUs00のロワーページに書き込まれる。
<2.3.データリード>
図17および図18は、第2実施形態のメモリシステム100でのデータリードの間の入出力信号DQの流れを時間に沿って示す。図18は図17に後続する状態を示す。
図17および図18に示されるように、いずれの非高速ページからのデータリードも高速ページ(アッパーページ)のデータリードと並行して進行する。
メモリコントローラ2は、ページデータPG0からPG3からなるデータセットのリードのために、最初に、高速ページに保持されているページデータPG0のリードを記憶装置MC0に指示する。この指示を受けて、ページデータPG0を取得するための記憶装置MC0のプレーンPB0でのアッパーページリードが開始する。続いて、メモリコントローラ2は、ページデータPG1、PG2、およびPG3のリードを記憶装置MC0および記憶装置MC1に指示する。ページデータPG1を取得するための記憶装置MC0のプレーンPB1でのミドルページリード、ページデータPG2を取得するための記憶装置MC1のプレーンPB0でのロワーページリード、ページデータPG3を取得するための記憶装置MC1のプレーンPB1でのトップページリードは、記憶装置MC0のプレーンPB0でのトップページリードと並行して進行する。
ページデータPG0のリードが完了すると、記憶装置MC0は、メモリコントローラ2の指示に従って、ページデータPG0を出力する。記憶装置MC0がページデータPG0を出力している間に、記憶装置MC0のプレーンPB1でのミドルページリード、記憶装置MC1のプレーンPB0でのロワーページリード、および記憶装置MC1のプレーンPB1でのトップページリードが進行することができる。
以下、同様にして、メモリコントローラ2は、ページデータPG4からPG7からなるデータセットをリードし、ページデータPG8からPG11からなるデータセットをリードし、ページデータPG12からPG15からなるデータセットをリードする。いずれのデータセットのリードについても、各データセットのうちの高速ページからのデータリードが最初に開始され、その後、非高速ページからのデータリードが開始される。そして、各データセットにおいて、記憶装置MC0およびMC1のプレーンPB0ならびにPB1にわたって、ロワーページリード、ミドルページリード、アッパーページリード、およびトップページリードが並行して進行する。
<2.4.書き込みの他の例>
データ書き込みの例は、図19のようなものを含む。図19は、第2実施形態での記憶装置MC中でページデータが書き込まれる位置の第2例を示す。
図19に示されるように、ページデータPG0は記憶装置MC0のプレーンPB0の選択セルユニットCUs00のアッパーページに書き込まれる。ページデータPG1は記憶装置MC0のプレーンPB1の選択セルユニットCUs01のトップページに書き込まれる。ページデータPG2は記憶装置MC1のプレーンPB0の選択セルユニットCUs10のロワーページに書き込まれる。ページデータPG3は記憶装置MC1のプレーンPB1の選択セルユニットCUs11のミドルページに書き込まれる。
ページデータPG4は記憶装置MC0のプレーンPB1の選択セルユニットCUs01のアッパーページに書き込まれる。ページデータPG5は記憶装置MC1のプレーンPB0の選択セルユニットCUs10のトップページに書き込まれる。ページデータPG6は記憶装置MC1のプレーンPB1の選択セルユニットCUs11のロワーページに書き込まれる。ページデータPG7は記憶装置MC0のプレーンPB0の選択セルユニットCUs00のミドルページに書き込まれる。
ページデータPG8は記憶装置MC1のプレーンPB0の選択セルユニットCUs10のアッパーページに書き込まれる。ページデータPG9は記憶装置MC1のプレーンPB1の選択セルユニットCUs11のトップページに書き込まれる。ページデータPG10は記憶装置MC0のプレーンPB0の選択セルユニットCUs00のロワーページに書き込まれる。ページデータPG11は記憶装置MC0のプレーンPB1の選択セルユニットCUs01のミドルページに書き込まれる。
ページデータPG12は記憶装置MC1のプレーンPB1の選択セルユニットCUs11のアッパーページに書き込まれる。ページデータPG13は記憶装置MC0のプレーンPB0の選択セルユニットCUs00のトップページに書き込まれる。ページデータPG14は記憶装置MC0のプレーンPB1の選択セルユニットCUs01のロワーページに書き込まれる。ページデータPG15は記憶装置MC1のプレーンPB0の選択セルユニットCUs10のミドルページに書き込まれる。
<2.5.利点>
第2実施形態によれば、記憶領域ユニットMA2は、独立して動作可能なプレーンPBを含んだ2つの記憶装置MCに亘り、4つの連続する論理アドレスを有する4つのページデータからなるデータセットのうちの第1ページデータは高速ページ(アッパーページ)に書き込まれ、残りのページデータは、ロワー、ミドル、アッパー、およびトップページのうちの第1ページデータが書き込まれたページとは別のページに書き込まれる。このように書き込まれたデータセットのリードにおいて、当該データセットの第1ページデータ以外のページデータのリードは、第1ページデータの出力の間に進行できる。このため、4434マッピングの場合でも、第1実施形態と同じく効率よくデータのリードおよび出力が行われることが可能である。
<第3実施形態>
第3実施形態は、第2実施形態に類似する。第3実施形態では、第2実施形態と同じく、4434マッピングが使用される。以下、第2実施形態と異なる特徴が主に記述される。
第3実施形態のメモリシステム100の構成は、第1実施形態のものと同じである。一方、第3実施形態は、記憶装置MCの詳細の点で、第1実施形態のものと異なる。
<3.1.記憶装置の構成>
第3実施形態では、第1実施形態と異なり、各記憶装置MCでの複数のプレーンPBは、独立して動作できない。
図20は、第3実施形態の記憶装置MCの機能ブロックを示す。第3実施形態の記憶装置MCは、記憶装置MCaと称される場合がある。図20に示されるように、各記憶装置MCaは、第1実施形態(図3)のようにプレーンPB0用の電位生成回路14_0およびドライバ15_0ならびにプレーンPB1用の電位生成回路14_1およびドライバ15_1を有しない。代わりに、各記憶装置MCaは、1つの電位生成回路14およびドライバ15を共用する。
記憶装置MCaでは、このような構成であることに基づいて、プレーンPB0およびPB1からのマルチプレーンリードでは、プレーンPB0およびPB1に同じリード電圧VCGRが印加される。よって、プレーンPB0およびPB1において、並行したデータリードの対象となるのは、ロワー、ミドル、アッパー、およびトップページのうちの同じものである。
<3.2.データ書き込み>
第3実施形態では、各セルユニットCUが4ページのサイズのデータを保持し、4つのページはただ1つの高速ページを含む。このことに基づいて、第3実施形態では、記憶領域ユニットMAは、4つの独立して動作できるプレーンPBに亘る必要がある。第3実施形態では、各記憶装置MC中のプレーンPB0およびPB1は独立して動作できない。このため、記憶領域ユニットMAは、4つの記憶装置MCに亘る必要がある。
この目的で、第3実施形態の記憶領域ユニットMAは、記憶装置MC0の任意のプレーンPB、記憶装置MC1の任意のプレーンPB、記憶装置MC2の任意のプレーンPB、および記憶装置MC3の任意のプレーンPBに亘る。第3実施形態の記憶領域ユニットMAは、以下、記憶領域ユニットMA3と称される。
図21は、記憶領域ユニットMA3、および第3実施形態での記憶装置MC中でページデータが書き込まれる位置の例を示す。図21に示されるように、記憶領域ユニットMA3は、記憶装置MC0のプレーンPBw中の選択セルユニットCUs0wのロワー、ミドル、アッパー、およびトップページ、記憶装置MC1のプレーンPBw中のセルユニットCUs1wのロワー、ミドル、アッパー、およびトップページ、記憶装置MC2のプレーンPBw中のセルユニットCUs2wのロワー、ミドル、アッパー、およびトップページ、記憶装置MC3のプレーンPBw中のセルユニットCUs3wのロワー、ミドル、アッパー、およびトップページの集合である。
このような記憶領域ユニットMA3の特徴に基づいて、論理アドレスの連続する16のページデータPGごとに1つの記憶領域ユニットMA3に保持される。図21は、具体的な例として、記憶領域ユニットMA3中の、論理アドレスの連続する16のページデータPG0からPG15が書き込まれる位置を示す。
γが0、4、8、および12の各ケースについて、ページデータPGγ、ページデータPG(γ+1)、ページデータPG(γ+2)、およびページデータPG(γ+3)は1つのデータセットを構成する。
図21に示されるように、各データセットのページデータPGγ、PG(γ+1)、PG(γ+2)、およびPG(γ+3)は、記憶装置MC0からMC3に1つずつ書き込まれ、かつ、ページデータPGγ、PG(γ+1)、PG(γ+2)、およびPG(γ+3)の1つが高速ページに書き込まれ、残りの3つは非高速ページに書き込まれる。また、1つのデータセットに含まれるとともに非高速ページに書き込まれるページデータは、ロワー、ミドル、トップページのうちの任意の1つに書き込まれる。そして、4つのデータセットが、記憶領域ユニットMA3に書き込まれるように、ページデータPG0~PG15が書き込まれるページが決定される。そのような書き込みであれば、ページデータPG0~PG15が書き込まれる位置は、図21の例に限らない。例として、非高速ページに書き込まれるページデータは、ロワー、ミドル、およびトップページの相違する1つに書き込まれることが可能である。
図21に示されるように、ページデータPG0は記憶装置MC0の選択セルユニットCUs0wのアッパーページに書き込まれる。ページデータPG1は記憶装置MC1の選択セルユニットCUs1wのミドルページに書き込まれる。ページデータPG2は記憶装置MC2の選択セルユニットCUs2wのロワーページに書き込まれる。ページデータPG3は記憶装置MC3の選択セルユニットCUs3wのトップページに書き込まれる。
ページデータPG4は記憶装置MC1の選択セルユニットCUs1wのアッパーページに書き込まれる。ページデータPG5は記憶装置MC0の選択セルユニットCUs0wのミドルページに書き込まれる。ページデータPG6は記憶装置MC3の選択セルユニットCUs3wのロワーページに書き込まれる。ページデータPG7は記憶装置MC2の選択セルユニットCUs2wのトップページに書き込まれる。
ページデータPG8は記憶装置MC2の選択セルユニットCUs2wのアッパーページに書き込まれる。ページデータPG9は記憶装置MC3の選択セルユニットCUs3wのミドルページに書き込まれる。ページデータPG10は記憶装置MC0の選択セルユニットCUs0wのトップページに書き込まれる。ページデータPG11は記憶装置MC1の選択セルユニットCUs1wのロワーページに書き込まれる。
ページデータPG12は記憶装置MC3の選択セルユニットCUs3wのアッパーページに書き込まれる。ページデータPG13は記憶装置MC2の選択セルユニットCUs2wのミドルページに書き込まれる。ページデータPG14は記憶装置MC1の選択セルユニットCUs1wのトップページに書き込まれる。ページデータPG15は記憶装置MC0の選択セルユニットCUs0wのロワーページに書き込まれる。
<3.3.データリード>
図22および図23は、第3実施形態のメモリシステム100でのデータリードの間の入出力信号DQの流れを時間に沿って示す。図23は図22に後続する状態を示す。
図22および図23に示されるように、いずれの非高速ページからのデータリードも高速ページ(アッパーページ)のデータリードと並行して進行する。
メモリコントローラ2は、ページデータPG0からPG3からなるデータセットのリードのために、最初に、高速ページに保持されているページデータPG0のリードを記憶装置MC0に指示する。この指示を受けて、ページデータPG0を取得するための記憶装置MC0でのアッパーページリードが開始する。続いて、メモリコントローラ2は、ページデータPG1のためのミドルページリードを記憶装置MC1に指示し、ページデータPG2のためのロワーページリードを記憶装置MC2に指示し、ページデータPG3のためのトップページリードを記憶装置MC3に指示する。記憶装置MC0でのアッパーページリード、記憶装置MC1でのミドルページリード、記憶装置MC2でのロワーページリード、記憶装置MC3でのトップページリードは、並行して進行する。
ページデータPG0のリードが完了すると、記憶装置MC0は、メモリコントローラ2の指示に従って、ページデータPG0を出力する。記憶装置MC0がページデータPG0を出力している間に、記憶装置MC1でのミドルページリード、記憶装置MC2でのロワーページリード、および記憶装置MC3でのトップページリードが進行することができる。
以下、同様にして、メモリコントローラ2は、ページデータPG4からPG7からなるデータセットをリードし、ページデータPG8からPG11からなるデータセットをリードし、ページデータPG12からPG15からなるデータセットをリードする。いずれのデータセットのリードについても、各データセットのうちの高速ページからのデータリードが最初に開始され、その後、非高速ページからのデータリードが開始される。そして、各データセットにおいて、記憶装置MC0、MC1、MC2、およびMC3にわたって、ロワーページリード、ミドルページリード、アッパーページリード、およびトップページリードが並行して進行する。
<3.4.データ書き込みの他の例>
データ書き込みの例は、図24のようなものを含む。図24は、第3実施形態での記憶装置MC中でページデータが書き込まれる位置の第2例を示す。
図24に示されるように、ページデータPG0は記憶装置MC0の選択セルユニットCUs0wのアッパーページに書き込まれる。ページデータPG1は記憶装置MC1の選択セルユニットCUs1wのトップページに書き込まれる。ページデータPG2は記憶装置MC2の選択セルユニットCUs2wのロワーページに書き込まれる。ページデータPG3は記憶装置MC3の選択セルユニットCUs3wのミドルページに書き込まれる。
ページデータPG4は記憶装置MC1の選択セルユニットCUs1wのアッパーページに書き込まれる。ページデータPG5は記憶装置MC2の選択セルユニットCUs2wのトップページに書き込まれる。ページデータPG6は記憶装置MC3の選択セルユニットCUs3wのロワーページに書き込まれる。ページデータPG7は記憶装置MC0の選択セルユニットCUs0wのミドルページに書き込まれる。
ページデータPG8は記憶装置MC2の選択セルユニットCUs2wのアッパーページに書き込まれる。ページデータPG9は記憶装置MC3の選択セルユニットCUs3wのトップページに書き込まれる。ページデータPG10は記憶装置MC0の選択セルユニットCUs0wのロワーページに書き込まれる。ページデータPG11は記憶装置MC1の選択セルユニットCUs1wのミドルページに書き込まれる。
ページデータPG12は記憶装置MC3の選択セルユニットCUs3wのアッパーページに書き込まれる。ページデータPG13は記憶装置MC0の選択セルユニットCUs0wのトップページに書き込まれる。ページデータPG14は記憶装置MC1の選択セルユニットCUs1wのロワーページに書き込まれる。ページデータPG15は記憶装置MC2の選択セルユニットCUs2wのミドルページに書き込まれる。
<3.5.利点>
第3実施形態によれば、記憶領域ユニットMA3は、4つの記憶装置MCに亘り、4つの連続する論理アドレスを有する4つのページデータからなるデータセットのうちの第1ページデータは高速ページ(アッパーページ)に書き込まれ、残りのページデータは、ロワー、ミドル、アッパー、およびトップページのうちの第1ページデータが書き込まれたページとは別のページに書き込まれる。このように書き込まれたデータセットのリードにおいて、当該データセットの第1ページデータ以外のページデータのリードは、第1ページデータの出力の間に進行できる。このため、記憶装置MCが独立動作できる複数のプレーンPBを有しない場合でも、第1実施形態と同じく効率よくデータのリードおよび出力が行われることが可能である。
<3.5.変形例>
第3実施形態は、マルチプレーン動作に適用されてもよい。ただし、第3実施形態の各記憶装置MCでは、プレーンPB0およびPB1は、並行動作は可能であっても、独立動作はできないため、プレーンPB0およびPB1の各々の同じアドレスのブロックBLKの同じアドレスのセルユニットCUの同じページからのデータリードが並行して行われる。このことに基づいて、論理アドレスの連続する2つのページデータPGが同じ記憶装置MCのプレーンPB0およびPB1の同じページに書き込まれる。
第3実施形態の変形例の記憶領域ユニットMA3aは、記憶装置MC0のプレーンPB0およびPB1、記憶装置MC1のプレーンPB0およびPB1、記憶装置MC2のプレーンPB0およびPB1、および記憶装置MC3のプレーンPB0およびPB1に亘る。
図25は、記憶領域ユニットMA3a、および第3実施形態の変形例での記憶装置MC中でページデータが書き込まれる位置の例を示す。γが0、4、8、および12の各ケースについて、ページデータPGγ、ページデータPG(γ+1)、ページデータPG(γ+2)、ページデータPG(γ+3)、ページデータPG(γ+4)、ページデータPG(γ+5)、ページデータPG(γ+6)、およびページデータPG(γ+7)は1つのデータセットを構成する。
図25に示されるように、記憶領域ユニットMA3aは、記憶装置MC0のプレーンPB0中のセルユニットCU00のロワー、ミドル、アッパー、およびトップページ、記憶装置MC0のプレーンPB1中のセルユニットCU01のロワー、ミドル、アッパー、およびトップページ、記憶装置MC1のプレーンPB0中のセルユニットCUs10のロワー、ミドル、アッパー、およびトップページ、記憶装置MC1のプレーンPB1中のセルユニットCUs11のロワー、ミドル、アッパー、およびトップページ、記憶装置MC2のプレーンPB0中のセルユニットCUs20のロワー、ミドル、アッパー、およびトップページ、記憶装置MC2のプレーンPB1中のセルユニットCUs21のロワー、ミドル、アッパー、およびトップページ、記憶装置MC3のプレーンPB0中のセルユニットCUs30のロワー、ミドル、アッパー、およびトップページ、記憶装置MC3のプレーンPB1中のセルユニットCUs31のロワー、ミドル、アッパー、およびトップページ、の集合である。
このような記憶領域ユニットMA3の特徴に基づいて、論理アドレスの連続する32のページデータPGごとに1つの記憶領域ユニットMA3aに保持される。図25は、具体的な例として、記憶領域ユニットMA3a中の、論理アドレスの連続する32の書き込みページデータPG0からPG31が書き込まれる位置を示す。
γが0、8、16、および24の各ケースについて、ページデータPGγ、PG(γ+1)、PG(γ+2)、PG(γ+3)、PG(γ+4)、PG(γ+5)、PG(γ+6)、およびPG(γ+7)は1つのデータセットを構成する。さらに、ページデータPGγおよびPG(γ+1)は対を構成し、PG(γ+2)およびPG(γ+3)は対を構成し、PG(γ+4)およびPG(γ+5)は対を構成し、PG(γ+6)およびPG(γ+7)は対を構成する。対を構成する2つのページデータPGは、同じ記憶装置MCの相違するプレーンPBの同じページに書き込まれる。
図25に示されるように、各データセットのページデータPGの対は、記憶装置MC0からMC3に1つずつ書き込まれ、各データセットのページデータPGの対の1つが高速ページに書き込まれ、残りの3つの対は非高速ページに書き込まれる。
また、1つのデータセットに含まれるとともに非高速ページに書き込まれるページデータPGの対は、ロワー、ミドル、およびトップページのうちの任意の1つに書き込まれる。そして、4つのデータセットが記憶領域ユニットMA3aに書き込まれるように、ページデータPG0からPG31が書き込まれるページが決定される。そのような書き込みであれば、ページデータPG0からPG31が書き込まれる位置は、図25の例に限らない。例として、非高速ページに書き込まれるページデータPGは、ロワー、ミドル、およびトップページの相違する1つに書き込まれることが可能である。
図25に示されるように、ページデータPG0は記憶装置MC0のプレーンPB0の選択セルユニットCUs00のアッパーページに書き込まれる。ページデータPG1は記憶装置MC0のプレーンPB1の選択セルユニットCUs01のアッパーページに書き込まれる。
ページデータPG2は記憶装置MC1のプレーンPB0の選択セルユニットCUs10のミドルページに書き込まれる。ページデータPG3は記憶装置MC1のプレーンPB1の選択セルユニットCUs11のミドルページに書き込まれる。
ページデータPG4は記憶装置MC2のプレーンPB0の選択セルユニットCUs20のロワーページに書き込まれる。ページデータPG5は記憶装置MC2のプレーンPB1の選択セルユニットCUs21のロワーページに書き込まれる。
ページデータPG6は記憶装置MC3のプレーンPB0の選択セルユニットCUs30のトップページに書き込まれる。ページデータPG7は記憶装置MC3のプレーンPB1の選択セルユニットCUs31のトップページに書き込まれる。
ページデータPG8は記憶装置MC1のプレーンPB0の選択セルユニットCUs10のアッパーページに書き込まれる。ページデータPG9は記憶装置MC1のプレーンPB1の選択セルユニットCUs11のアッパーページに書き込まれる。
ページデータPG10は記憶装置MC0のプレーンPB0の選択セルユニットCUs00のミドルページに書き込まれる。ページデータPG11は記憶装置MC0のプレーンPB1の選択セルユニットCUs01のミドルページに書き込まれる。
ページデータPG12は記憶装置MC3のプレーンPB0の選択セルユニットCUs30のロワーページに書き込まれる。ページデータPG13は記憶装置MC3のプレーンPB1の選択セルユニットCUs31のロワーページに書き込まれる。
ページデータPG14は記憶装置MC2のプレーンPB0の選択セルユニットCUs20のトップページに書き込まれる。ページデータPG15は記憶装置MC2のプレーンPB1の選択セルユニットCUs21のトップページに書き込まれる。
ページデータPG16は記憶装置MC2のプレーンPB0の選択セルユニットCUs20のアッパーページに書き込まれる。ページデータPG17は記憶装置MC2のプレーンPB1の選択セルユニットCUs21のアッパーページに書き込まれる。
ページデータPG18は記憶装置MC3のプレーンPB0の選択セルユニットCUs30のミドルページに書き込まれる。ページデータPG19は記憶装置MC3のプレーンPB1の選択セルユニットCUs31のミドルページに書き込まれる。
ページデータPG20は記憶装置MC0のプレーンPB0の選択セルユニットCUs00のトップページに書き込まれる。ページデータPG21は記憶装置MC0のプレーンPB1の選択セルユニットCUs01のトップページに書き込まれる。
ページデータPG22は記憶装置MC1のプレーンPB0の選択セルユニットCUs10のロワーページに書き込まれる。ページデータPG23は記憶装置MC1のプレーンPB1の選択セルユニットCUs11のロワーページに書き込まれる。
ページデータPG24は記憶装置MC3のプレーンPB0の選択セルユニットCUs30のアッパーページに書き込まれる。ページデータPG25は記憶装置MC3のプレーンPB1の選択セルユニットCUs31のアッパーページに書き込まれる。
ページデータPG26は記憶装置MC2のプレーンPB0の選択セルユニットCUs20のミドルページに書き込まれるページデータPG27は記憶装置MC2のプレーンPB1の選択セルユニットCUs21のミドルページに書き込まれる。
ページデータPG28は記憶装置MC1のプレーンPB0の選択セルユニットCUs10のトップページに書き込まれる。ページデータPG29は記憶装置MC1のプレーンPB1の選択セルユニットCUs11のトップページに書き込まれる。
ページデータPG30は記憶装置MC0のプレーンPB0の選択セルユニットCUs00のロワーページに書き込まれる。ページデータPG31は記憶装置MC0のプレーンPB1の選択セルユニットCUs01のロワーページに書き込まれる。
データリードについては、図22および図23を参照して記述される第3実施形態のデータリードの原則と同じである。異なるのは、ページデータPGの対が並行してリードされることである。すなわち、図22および図23に示される各リードコマンドセットが各記憶装置MCで受け取られると、当該記憶装置MCはプレーンPB0およびPB1の各々の中のリードコマンドセットにより指示される同じアドレスのセルユニットCUの同じページから並行してデータをリードする。リードにより得られたデータは、ページデータPGの対である。メモリコントローラ2は、ページデータPGの対の出力を各記憶装置MCに指示し、ページデータPGの対を受け取る。
<第4実施形態>
第4実施形態は、第2実施形態に類似し、第2実施形態とマッピングの点で相違する。以下、第2実施形態と異なる特徴が主に記述される。
第4実施形態のメモリシステム100および記憶装置MCの構成は、第1実施形態のものと同じである。
<4.1.マッピング>
第4実施形態では、1248マッピングが使用される。図26は、第4実施形態のメモリシステムの1メモリセルトランジスタMTあたり4ビットのデータを保持するメモリセルトランジスタMTの閾値電圧の分布とデータのマッピングを示す。図26に示されるように、第4実施形態では、各記憶装置MCは、各ステートを以下の4ビットデータを有しているものとして扱う。
“0”ステート :“1111”
“1”ステート :“0111”
“2”ステート :“0011”
“3”ステート :“1011”
“4”ステート :“1001”
“5”ステート :“0001”
“6”ステート :“0101”
“7”ステート :“1101”
“8”ステート :“1100”
“9”ステート :“0100”
“10”ステート:“0000”
“11”ステート:“1000”
“12”ステート:“1010”
“13”ステート:“0010”
“14”ステート:“0110”
“15”ステート:“1110”
1248マッピングでは、各ページのデータは、以下のリード電圧を使用して割り出される。
ロワーページリード :8R
ミドルページリード :4Rおよび12R
アッパーページリード:2R、6R、10R、および14R
トップページリード :1R、3R、5R、7R、9R、11R、13R、および15R
1248マッピングでは、ロワーページが高速ページに相当し、ミドルページ、アッパーページ、およびトップページが非高速ページに相当する。
<4.2.データ書き込み>
第4実施形態では、各セルユニットCUが4ページのサイズのデータを保持し、4つのページはただ1つの高速ページを含む。このことに基づいて、第4実施形態では、第2実施形態の記憶領域ユニットMA2が使用される。
図27は、第4実施形態の記憶装置MC中でページデータが書き込まれる位置の例を示す。図27は、具体的な例として、記憶領域ユニットMA2中の、論理アドレスの連続する16の書き込みページデータPG0からPG15が書き込まれる位置を示す。
γが0、4、8、および12の各ケースについて、ページデータPGγ、PG(γ+1)、PG(γ+2)、およびPG(γ+3)は1つのデータセットを構成する。
図27に示されるように、各データセットのページデータPGγ、PG(γ+1)、PG(γ+2)、およびPG(γ+3)は、記憶装置MC0およびMC1のプレーンPB0およびPB1に1つずつ書き込まれ、かつ、ページデータPGγ、PG(γ+1)、PG(γ+2)、およびPG(γ+3)の1つが高速ページ(ロワーページ)に書き込まれ、残りの3つは非高速ページに書き込まれる。また、1つのデータセットに含まれるとともに非高速ページに書き込まれる各ページデータPGは、ミドル、アッパー、およびトップページのうちの任意の1つに書き込まれる。そして、4つのデータセットが記憶領域ユニットMA2に書き込まれるように、ページデータPG0からPG15が書き込まれるページが決定される。そのような書き込みであれば、ページデータPG0からPG15が書き込まれる位置は、図27の例に限らない。例として、非高速ページに書き込まれるページデータPGは、ミドル、アッパー、およびトップページの相違する1つに書き込まれることが可能である。
図27に示されるように、ページデータPG0は記憶装置MC0のプレーンPB0の選択セルユニットCUs00のロワーページに書き込まれる。ページデータPG1は記憶装置MC0のプレーンPB1の選択セルユニットCUs01のミドルページに書き込まれる。ページデータPG2は記憶装置MC1のプレーンPB0の選択セルユニットCUs10のアッパーページに書き込まれる。ページデータPG3は記憶装置MC1のプレーンPB1の選択セルユニットCUs11のトップページに書き込まれる。
ページデータPG4は記憶装置MC0のプレーンPB1の選択セルユニットCUs01のロワーページに書き込まれる。ページデータPG5は記憶装置MC1のプレーンPB0の選択セルユニットCUs10のミドルページに書き込まれる。ページデータPG6は記憶装置MC1のプレーンPB1の選択セルユニットCUs11のアッパーページに書き込まれる。ページデータPG7は記憶装置MC0のプレーンPB0の選択セルユニットCUs00のトップページに書き込まれる。
ページデータPG8は記憶装置MC1のプレーンPB0の選択セルユニットCUs10のロワーページに書き込まれる。ページデータPG9は記憶装置MC1のプレーンPB1の選択セルユニットCUs11のミドルページに書き込まれる。ページデータPG10は記憶装置MC0のプレーンPB0の選択セルユニットCUs00のアッパーページに書き込まれる。ページデータPG11は記憶装置MC0のプレーンPB1の選択セルユニットCUs01のトップページに書き込まれる。
ページデータPG12は記憶装置MC1のプレーンPB1の選択セルユニットCUs11のロワーページに書き込まれる。ページデータPG13は記憶装置MC0のプレーンPB0の選択セルユニットCUs00のミドルページに書き込まれる。ページデータPG14は記憶装置MC0のプレーンPB1の選択セルユニットCUs01のアッパーページに書き込まれる。ページデータPG15は記憶装置MC1のプレーンPB0の選択セルユニットCUs10のトップページに書き込まれる。
<4.3.データリード>
図28から図31は、第4実施形態のメモリシステム100でのデータリードの間の入出力信号DQの流れを時間に沿って示す。図28から図31は、この順で時間的に連続する状態を示す。
図28から図31に示されるように、いずれの非高速ページからのデータリードも高速ページ(ロワーページ)のデータリードと並行して進行する。
メモリコントローラ2は、ページデータPG0からPG3からなるデータセットのリードのために、最初に、高速ページに保持されているページデータPG0のリードを記憶装置MC0に指示する。この指示を受けて、ページデータPG0を取得するための記憶装置MC0のプレーンPB0でのロワーページリードが開始する。続いて、メモリコントローラ2は、ページデータPG1のためのミドルページリードを記憶装置MC0に指示し、ページデータPG2のためのアッパーページリードを記憶装置MC1に指示し、ページデータPG3のためのトップページリードを記憶装置MC1に指示する。記憶装置MC0のプレーンPB0でのロワーページリード、記憶装置MC0のプレーンPB1でのミドルページリード、記憶装置MC1のプレーンPB0でのアッパーページリード、および記憶装置MC1のプレーンPB1でのトップページリードは、並行して進行する。
ページデータPG0のリードが完了すると、記憶装置MC0は、メモリコントローラ2の指示に従って、ページデータPG0を出力する。記憶装置MC0がページデータPG0を出力している間に、記憶装置MC0でのミドルページリード、記憶装置MC1でのアッパーページリード、および記憶装置MC1でのトップページリードが進行することができる。
以下、同様にして、メモリコントローラ2は、ページデータPG4からPG7からなるデータセットをリードし、ページデータPG8からPG11からなるデータセットをリードし、ページデータPG12からPG15からなるデータセットをリードする。いずれのデータセットのリードについても、各データセットのうちの高速ページからのデータリードが最初に開始され、その後、非高速ページからのデータリードが開始される。そして、各データセットにおいて、記憶装置MC0およびMC1のプレーンPB0ならびにPB1にわたって、ロワーページリード、ミドルページリード、アッパーページリード、およびトップページリードが並行して進行する。
<4.4.書き込みの他の例>
データ書き込みの例は、図32のようなものを含む。図32は、第4実施形態での記憶装置MC中でページデータが書き込まれる位置の第2例を示す。
図32に示されるように、ページデータPG0は記憶装置MC0のプレーンPB0の選択セルユニットCUs00のロワーページに書き込まれる。ページデータPG1は記憶装置MC0のプレーンPB1の選択セルユニットCUs01のミドルページに書き込まれる。ページデータPG2は記憶装置MC1のプレーンPB0の選択セルユニットCUs10のアッパーページに書き込まれる。ページデータPG3は記憶装置MC1のプレーンPB1の選択セルユニットCUs11のトップページに書き込まれる。
ページデータPG4は記憶装置MC0のプレーンPB1の選択セルユニットCUs01のロワーページに書き込まれる。ページデータPG5は記憶装置MC0のプレーンPB0の選択セルユニットCUs00のミドルページに書き込まれる。ページデータPG6は記憶装置MC1のプレーンPB1の選択セルユニットCUs11のアッパーページに書き込まれる。ページデータPG7は記憶装置MC1のプレーンPB0の選択セルユニットCUs10のトップページに書き込まれる。
ページデータPG8は記憶装置MC1のプレーンPB0の選択セルユニットCUs10のロワーページに書き込まれる。ページデータPG9は記憶装置MC1のプレーンPB1の選択セルユニットCUs11のミドルページに書き込まれる。ページデータPG10は記憶装置MC0のプレーンPB1の選択セルユニットCUs01のアッパーページに書き込まれる。ページデータPG11は記憶装置MC0のプレーンPB0の選択セルユニットCUs00のトップページに書き込まれる。
ページデータPG12は記憶装置MC1のプレーンPB1の選択セルユニットCUs11のロワーページに書き込まれる。ページデータPG13は記憶装置MC1のプレーンPB0の選択セルユニットCUs10のミドルページに書き込まれる。ページデータPG14は記憶装置MC0のプレーンPB0の選択セルユニットCUs00のアッパーページに書き込まれる。ページデータPG15は記憶装置MC0のプレーンPB1の選択セルユニットCUs11のトップページに書き込まれる。
<4.5.利点>
第4実施形態によれば、第2実施形態での4434マッピングに代えて1248マッピングが使用され、この点に基づく特徴以外、第2実施形態と同じ特徴を有する。1248マッピングによっても、第2実施形態と同じ利点を得られる。
<第5実施形態>
第5実施形態は、第3実施形態に類似し、第3実施形態とマッピングの点で相違する。
第5実施形態のメモリシステム100および記憶装置MCの構成は、第1実施形態のものと同じである。
第5実施形態では、第4実施形態と同じく、1248マッピングが使用される。
<5.1.データ書き込み>
第5実施形態では、第3実施形態と同じく、各セルユニットCUが4ページのサイズのデータを保持し、4つのページはただ1つの高速ページを含む。このことに基づいて、第5実施形態では、第3実施形態と同じく、4つの記憶装置MCに亘る記憶領域ユニットMA3が使用される。
図33は、記憶領域ユニットMA3、および第5実施形態での記憶装置MC中でページデータが書き込まれる位置の例を示す。
γが0、4、8、および12の各ケースについて、ページデータPGγ、ページデータPG(γ+1)、ページデータPG(γ+2)、およびページデータPG(γ+3)は1つのデータセットを構成する。
図33に示されるように、各データセットのページデータPGγ、PG(γ+1)、PG(γ+2)、およびPG(γ+3)は、記憶装置MC0からMC3に1つずつ書き込まれ、かつ、ページデータPGγ、PG(γ+1)、PG(γ+2)、およびPG(γ+3)の1つが高速ページ(ロワーページ)に書き込まれ、残りの3つは非高速ページに書き込まれる。また、1つのデータセットに含まれるとともに非高速ページに書き込まれる各ページデータPGは、ミドル、アッパー、およびトップページのうちの任意の1つに書き込まれる。そして、4つのデータセットが、記憶領域ユニットMA3に書き込まれるように、ページデータPG0からPG15が書き込まれるページが決定される。そのような書き込みであれば、ページデータPG0からPG15が書き込まれる位置は、図33の例に限らない。例として、非高速ページに書き込まれるページデータは、ミドル、アッパー、およびトップページの相違する1つに書き込まれることが可能である。
図33に示されるように、ページデータPG0は記憶装置MC0の選択セルユニットCUs0wのロワーページに書き込まれる。ページデータPG1は記憶装置MC1の選択セルユニットCUs1wのミドルページに書き込まれる。ページデータPG2は記憶装置MC2の選択セルユニットCUs2wのアッパーページに書き込まれる。ページデータPG3は記憶装置MC3の選択セルユニットCUs3wのトップページに書き込まれる。
ページデータPG4は記憶装置MC1の選択セルユニットCUs1wのロワーページに書き込まれる。ページデータPG5は記憶装置MC2の選択セルユニットCUs2wのミドルページに書き込まれる。ページデータPG6は記憶装置MC3の選択セルユニットCUs3wのアッパーページに書き込まれる。ページデータPG7は記憶装置MC0の選択セルユニットCUs0wのトップページに書き込まれる。
ページデータPG8は記憶装置MC2の選択セルユニットCUs2wのロワーページに書き込まれる。ページデータPG9は記憶装置MC3の選択セルユニットCUs3wのミドルページに書き込まれる。ページデータPG10は記憶装置MC0の選択セルユニットCUs0wのアッパーページに書き込まれる。ページデータPG11は記憶装置MC1の選択セルユニットCUs1wのトップページに書き込まれる。
ページデータPG12は記憶装置MC3の選択セルユニットCUs3wのロワーページに書き込まれる。ページデータPG13は記憶装置MC0の選択セルユニットCUs0wのミドルページに書き込まれる。ページデータPG14は記憶装置MC1の選択セルユニットCUs1wのアッパーページに書き込まれる。ページデータPG15は記憶装置MC2の選択セルユニットCUs2wのトップページに書き込まれる。
<5.2.データリード>
データリードは、他の実施形態について記述される原理に従っており、特に、第3実施形態に類似する。すなわち、データセットごとに並行してデータがリードされ、いずれの非高速ページからのデータリードも高速ページ(ロワーページ)のデータリードと並行して進行する。
メモリコントローラ2は、ページデータPG0からPG3からなるデータセットのリードのために、最初に、高速ページに保持されているページデータPG0のリードを記憶装置MC0に指示する。続いて、メモリコントローラ2は、ページデータPG1のためのミドルページリードを記憶装置MC1に指示し、ページデータPG2のためのアッパーページリードを記憶装置MC2に指示し、ページデータPG3のためのトップページリードを記憶装置MC3に指示する。
ページデータPG0のリードが完了すると、記憶装置MC0は、メモリコントローラ2の指示に従って、ページデータPG0を出力する。記憶装置MC0がページデータPG0を出力している間に、記憶装置MC1でのミドルページリード、記憶装置MC2でのアッパーページリード、および記憶装置MC3でのトップページリードが進行することができる。
以下、同様にして、メモリコントローラ2は、ページデータPG4からPG7からなるデータセットをリードし、ページデータPG8からPG11からなるデータセットをリードし、ページデータPG12からPG15からなるデータセットをリードする。いずれのデータセットのリードについても、各データセットのうちの高速ページからのデータリードが最初に開始され、その後、非高速ページからのデータリードが開始される。
<5.3.利点>
第5実施形態によれば、第3実施形態での4434マッピングに代えて1248マッピングが使用され、この点に基づく特徴以外、第3実施形態と同じ特徴を有する。1248マッピングによっても、第3実施形態と同じ利点を得られる。
<5.4.変形例>
第5実施形態は、第3実施形態の変形例と同じく、独立動作が不能なマルチプレーン動作に適用されてもよい。
変形例では、第3実施形態の変形例と同じく、記憶領域ユニットMA3aが使用される。以下、第3実施形態の変形例と異なる特徴が主に記述される。
図34は、第5実施形態の変形例での記憶装置MC中でページデータが書き込まれる位置の例を示す。γが0、4、8、および12の各ケースについて、ページデータPGγ、ページデータPG(γ+1)、ページデータPG(γ+2)、ページデータPG(γ+3)、ページデータPG(γ+4)、ページデータPG(γ+5)、ページデータPG(γ+6)、およびページデータPG(γ+7)は1つのデータセットを構成する。
図34に示されるように、ページデータPG0は記憶装置MC0のプレーンPB0の選択セルユニットCUs00のロワーページに書き込まれる。ページデータPG1は記憶装置MC0のプレーンPB1の選択セルユニットCUs01のロワーページに書き込まれる。
ページデータPG2は記憶装置MC1のプレーンPB0の選択セルユニットCUs10のミドルページに書き込まれる。ページデータPG3は記憶装置MC1のプレーンPB1の選択セルユニットCUs11のミドルページに書き込まれる。
ページデータPG4は記憶装置MC2のプレーンPB0の選択セルユニットCUs20のアッパーページに書き込まれる。ページデータPG5は記憶装置MC2のプレーンPB1の選択セルユニットCUs21のアッパーページに書き込まれる。
ページデータPG6は記憶装置MC3のプレーンPB0の選択セルユニットCUs30のトップページに書き込まれる。ページデータPG7は記憶装置MC3のプレーンPB1の選択セルユニットCUs31のトップページに書き込まれる。
ページデータPG8は記憶装置MC1のプレーンPB0の選択セルユニットCUs10のロワーページに書き込まれる。ページデータPG9は記憶装置MC1のプレーンPB1の選択セルユニットCUs11のロワーページに書き込まれる。
ページデータPG10は記憶装置MC2のプレーンPB0の選択セルユニットCUs00のミドルページに書き込まれる。ページデータPG11は記憶装置MC2のプレーンPB1の選択セルユニットCUs01のミドルページに書き込まれる。
ページデータPG12は記憶装置MC3のプレーンPB0の選択セルユニットCUs30のアッパーページに書き込まれる。ページデータPG13は記憶装置MC3のプレーンPB1の選択セルユニットCUs31のアッパーページに書き込まれる。
ページデータPG14は記憶装置MC0のプレーンPB0の選択セルユニットCUs20のトップページに書き込まれる。ページデータPG15は記憶装置MC0のプレーンPB1の選択セルユニットCUs21のトップページに書き込まれる。
ページデータPG16は記憶装置MC2のプレーンPB0の選択セルユニットCUs20のロワーページに書き込まれる。ページデータPG17は記憶装置MC2のプレーンPB1の選択セルユニットCUs21のロワーページに書き込まれる。
ページデータPG18は記憶装置MC3のプレーンPB0の選択セルユニットCUs30のミドルページに書き込まれる。ページデータPG19は記憶装置MC3のプレーンPB1の選択セルユニットCUs31のミドルページに書き込まれる。
ページデータPG20は記憶装置MC0のプレーンPB0の選択セルユニットCUs00のアッパーページに書き込まれる。ページデータPG21は記憶装置MC0のプレーンPB1の選択セルユニットCUs01のアッパーページに書き込まれる。
ページデータPG22は記憶装置MC1のプレーンPB0の選択セルユニットCUs10のトップページに書き込まれる。ページデータPG23は記憶装置MC1のプレーンPB1の選択セルユニットCUs11のトップページに書き込まれる。
ページデータPG24は記憶装置MC3のプレーンPB0の選択セルユニットCUs30のロワーページに書き込まれる。ページデータPG25は記憶装置MC3のプレーンPB1の選択セルユニットCUs31のロワーページに書き込まれる。
ページデータPG26は記憶装置MC0のプレーンPB0の選択セルユニットCUs00のミドルページに書き込まれる。ページデータPG27は記憶装置MC0のプレーンPB1の選択セルユニットCUs01のミドルページに書き込まれる。
ページデータPG28は記憶装置MC1のプレーンPB0の選択セルユニットCUs10のアッパーページに書き込まれる。ページデータPG29は記憶装置MC1のプレーンPB1の選択セルユニットCUs11のアッパーページに書き込まれる。
ページデータPG30は記憶装置MC2のプレーンPB0の選択セルユニットCUs20のトップページに書き込まれる。ページデータPG31は記憶装置MC2のプレーンPB1の選択セルユニットCUs21のトップページに書き込まれる。
データリードについては、第5実施形態のデータリードの原則と同じである。異なるのは、第3実施形態の変形例と同じくページデータPGの対が並行してリードされることである。
<第6実施形態>
第6実施形態は、第3実施形態に類似する。第6実施形態では、各記憶装置MCは、1メモリセルトランジスタMTあたり、3ビットのデータを保持する。
第6実施形態のメモリシステム100および記憶装置MCの構成は、第3実施形態のものと同じである。
<6.1.マッピング>
第6実施形態では、133マッピングが使用される。「HIJマッピング」なる記載は、ロワー、ミドル、およびアッパーページリードにそれぞれH個、I個、およびJ個のリード電圧VCGRが使われることになるマッピングを指す。
図35は、第6実施形態の1メモリセルトランジスタMTあたり3ビットのデータを保持するメモリセルトランジスタMTの閾値電圧の分布とデータのマッピングを示す。図35に示されるように、第6実施形態では、各記憶装置MCは、各ステートを以下の3ビットデータを有しているものとして扱う。以下の記述の“ABC”は、A、B、およびCが、それぞれ、アッパー、ミドル、およびロワーのビットの値を示す。
“0”ステート :“111”
“1”ステート :“101”
“2”ステート :“001”
“3”ステート :“011”
“4”ステート :“010”
“5”ステート :“110”
“6”ステート :“100”
“7”ステート :“000”
133マッピングでは、各ページのデータは、以下のリード電圧を使用して割り出される。
ロワーページリード :4R
ミドルページリード :1R、3R、および6R
アッパーページリード:2R、5R、および7R
133マッピングでは、ロワーページが高速ページに相当し、ミドルページおよびアッパーページが非高速ページに相当する。
<6.2.データ書き込み>
第6実施形態では、各セルユニットCUが3ページのサイズのデータを保持し、3つのページはただ1つの高速ページを含む。このことに基づいて、第6実施形態では、記憶領域ユニットMAは、3つの独立して動作できるプレーンPBに亘る必要がある。第6実施形態では、各記憶装置MC中のプレーンPB0およびPB1は独立して動作できない。このため、記憶領域ユニットMAは、3つの記憶装置MCに亘る必要がある。
この目的で、第6実施形態の記憶領域ユニットMAは、記憶装置MC0の任意のプレーンPB、記憶装置MC1の任意のプレーンPB、記憶装置MC2の任意のプレーンPB、および記憶装置MC3の任意のプレーンPBに亘る。第6実施形態の記憶領域ユニットMAは、以下、記憶領域ユニットMA4と称される。
図36は、記憶領域ユニットMA4、および第6実施形態での記憶装置MC中でページデータが書き込まれる位置の例を示す。図36に示されるように、記憶領域ユニットMA4は、記憶装置MC0のプレーンPBw中のセルユニットCUs0wのロワー、ミドル、およびアッパーページ、記憶装置MC1のプレーンPBw中のセルユニットCUs1wのロワー、ミドル、およびアッパーページ、記憶装置MC2のプレーンPBw中のセルユニットCUs2wのロワー、ミドル、およびアッパーページの集合である。
このような記憶領域ユニットMA4の特徴に基づいて、論理アドレスの連続する9つのページデータPGごとに1つの記憶領域ユニットMA4に保持される。図36は、具体的な例として、記憶領域ユニットMA4中の、論理アドレスの連続する9つのページデータPG0からPG8が書き込まれる位置を示す。
γが0、3、および6の各ケースについて、ページデータPGγ、ページデータPG(γ+1)、およびページデータPG(γ+2)は1つのデータセットを構成する。
図36に示されるように、各データセットのページデータPGγ、PG(γ+1)、およびPG(γ+2)は、記憶装置MC0からMC2に1つずつ書き込まれ、かつ、ページデータPGγ、PG(γ+1)、およびPG(γ+2)の1つが高速ページに書き込まれ、残りの2つは非高速ページに書き込まれる。また、1つのデータセットに含まれるとともに非高速ページに書き込まれるページデータは、ミドルおよびアッパーページのうちの任意の1つに書き込まれる。そして、3つのデータセットが、記憶領域ユニットMA4に書き込まれるように、ページデータPG0からPG8が書き込まれるページが決定される。そのような書き込みであれば、ページデータPG0からPG8が書き込まれる位置は、図36の例に限らない。例として、非高速ページに書き込まれるページデータは、ミドルおよびアッパーページの相違する1つに書き込まれる。
図36に示されるように、ページデータPG0は記憶装置MC0の選択セルユニットCUs0wのロワーページに書き込まれる。ページデータPG1は記憶装置MC1の選択セルユニットCUs1wのミドルページに書き込まれる。ページデータPG2は記憶装置MC2の選択セルユニットCUs2wのアッパーページに書き込まれる。
ページデータPG3は記憶装置MC1の選択セルユニットCUs1wのロワーページに書き込まれる。ページデータPG4は記憶装置MC2の選択セルユニットCUs2wのミドルページに書き込まれる。ページデータPG5は記憶装置MC0の選択セルユニットCUs0wのアッパーページに書き込まれる。
ページデータPG6は記憶装置MC2の選択セルユニットCUs2wのロワーページに書き込まれる。ページデータPG7は記憶装置MC0の選択セルユニットCUs0wのミドルページに書き込まれる。ページデータPG8は記憶装置MC1の選択セルユニットCUs1wのアッパーページに書き込まれる。
<6.3.データリード>
図37および図38は、第6実施形態のメモリシステム100でのデータリードの間の入出力信号DQの流れを時間に沿って示す。図38は、図37に後続する状態を示す。
図37および図38に示されるように、いずれの非高速ページからのデータリードも高速ページ(ロワーページ)のデータリードと並行して進行する。
メモリコントローラ2は、ページデータPG0からPG2からなるデータセットのリードのために、最初に、高速ページに保持されているページデータPG0のリードを記憶装置MC0に指示する。この指示を受けて、ページデータPG0を取得するための記憶装置MC0でのロワーページリードが開始する。続いて、メモリコントローラ2は、ページデータPG1のためのミドルページリードを記憶装置MC1に指示し、ページデータPG2のためのアッパーページリードを記憶装置MC2に指示する。記憶装置MC0でのロワーページリード、記憶装置MC1でのミドルページリード、および記憶装置MC2でのアッパーページリードは、並行して進行する。
ページデータPG0のリードが完了すると、記憶装置MC0は、メモリコントローラ2の指示に従って、ページデータPG0を出力する。記憶装置MC0がページデータPG0を出力している間に、記憶装置MC1でのミドルページリード、および記憶装置MC2でのアッパーページリードが進行することができる。
以下、同様にして、メモリコントローラ2は、ページデータPG3からPG5からなるデータセットをリードし、ページデータPG6からPG8からなるデータセットをリードする。いずれのデータセットのリードについても、各データセットのうちの高速ページからのデータリードが最初に開始され、その後、非高速ページからのデータリードが開始される。そして、各データセットにおいて、記憶装置MC0、MC1、およびMC2にわたって、ロワーページリード、ミドルページリード、およびアッパーページリードが並行して進行する。
<6.4.マッピングの他の例>
第6実施形態において、別のマッピングが使用されてもよい。そのようなマッピングは124マッピングを含む。図39は、第6実施形態の1メモリセルトランジスタMTあたり3ビットのデータを保持するメモリセルトランジスタMTの閾値電圧の分布とデータのマッピングの第2例を示す。図39に示されるように、第2例では、各記憶装置MCは、各ステートを以下の3ビットデータを有しているものとして扱う。
“0”ステート :“111”
“1”ステート :“011”
“2”ステート :“001”
“3”ステート :“101”
“4”ステート :“100”
“5”ステート :“000”
“6”ステート :“010”
“7”ステート :“110”
124マッピングでは、各ページのデータは、以下のリード電圧を使用して割り出される。
ロワーページリード :4R
ミドルページリード :2Rおよび6R
アッパーページリード:1R、3R、5R、および7R
124マッピングでも、ロワーページが高速ページに相当し、ミドルページおよびアッパーページが非高速ページに相当する。
データの書き込みおよびリードについては、133マッピングについてのものと同じである。異なるのは、ミドルページリードおよびアッパーページリードに要する時間のみである。
<6.6.利点>
第6実施形態によれば、記憶領域ユニットMA4は、3つの記憶装置MCに亘り、3つの連続する論理アドレスを有する3つのページデータからなるデータセットのうちの第1ページデータは高速ページ(ロワーページ)に書き込まれ、残りのページデータは、ロワー、ミドル、およびアッパーページのうちの第1ページデータが書き込まれたページとは別のページに書き込まれる。このように書き込まれたデータセットのリードにおいて、当該データセットの第1ページデータ以外のページデータのリードは、第1ページデータの出力の間に進行できる。このため、1メモリセルトランジスタMTあたり3ビットのデータ保持の場合でも、第1実施形態と同じ原理により、効率よくデータのリードおよび出力が行われることが可能である。
<6.7.変形例>
第6実施形態は、第3実施形態の変形例と同じく、独立動作が不能なマルチプレーン動作に適用されてもよい。
変形例では、記憶領域ユニットMA4aが使用される。第6実施形態の変形例の記憶領域ユニットMA4aは、記憶装置MC0のプレーンPB0およびPB1、記憶装置MC1のプレーンPB0およびPB1、および記憶装置MC2のプレーンPB0およびPB1に亘る。
図40は、記憶領域ユニットMA4a、および第6実施形態の変形例での記憶装置MC中でページデータが書き込まれる位置の例を示す。γが0、6、および12の各ケースについて、ページデータPGγ、ページデータPG(γ+1)、ページデータPG(γ+2)、ページデータPG(γ+3)、ページデータPG(γ+4)、およびページデータPG(γ+5)は1つのデータセットを構成する。
図40に示されるように、ページデータPG0は記憶装置MC0のプレーンPB0の選択セルユニットCUs00のロワーページに書き込まれる。ページデータPG1は記憶装置MC0のプレーンPB1の選択セルユニットCUs01のロワーページに書き込まれる。
ページデータPG2は記憶装置MC1のプレーンPB0の選択セルユニットCUs10のミドルページに書き込まれる。ページデータPG3は記憶装置MC1のプレーンPB1の選択セルユニットCUs11のミドルページに書き込まれる。
ページデータPG4は記憶装置MC2のプレーンPB0の選択セルユニットCUs20のアッパーページに書き込まれる。ページデータPG5は記憶装置MC2のプレーンPB1の選択セルユニットCUs21のアッパーページに書き込まれる。
ページデータPG6は記憶装置MC1のプレーンPB0の選択セルユニットCUs10のロワーページに書き込まれる。ページデータPG7は記憶装置MC1のプレーンPB1の選択セルユニットCUs11のロワーページに書き込まれる。
ページデータPG8は記憶装置MC2のプレーンPB0の選択セルユニットCUs20のミドルページに書き込まれる。ページデータPG9は記憶装置MC2のプレーンPB1の選択セルユニットCUs21のミドルページに書き込まれる。
ページデータPG10は記憶装置MC0のプレーンPB0の選択セルユニットCUs00のアッパーページに書き込まれる。ページデータPG11は記憶装置MC0のプレーンPB1の選択セルユニットCUs01のアッパーページに書き込まれる。
ページデータPG12は記憶装置MC2のプレーンPB0の選択セルユニットCUs20のロワーページに書き込まれる。ページデータPG13は記憶装置MC2のプレーンPB1の選択セルユニットCUs21のロワーページに書き込まれる。
ページデータPG14は記憶装置MC0のプレーンPB0の選択セルユニットCUs00のミドルページに書き込まれる。ページデータPG15は記憶装置MC0のプレーンPB1の選択セルユニットCUs01のミドルページに書き込まれる。
ページデータPG16は記憶装置MC1のプレーンPB0の選択セルユニットCUs10のアッパーページに書き込まれる。ページデータPG17は記憶装置MC1のプレーンPB1の選択セルユニットCUs11のアッパーページに書き込まれる。
データリードについては、第6実施形態のデータリードの原則と同じである。異なるのは、第5実施形態の変形例と同じくページデータPGの対が並行してリードされることである。
変形例が124マッピングに適用されてもよい。
<第7実施形態>
第7実施形態は、第1実施形態および第6実施形態に類似する。第7実施形態では、第6実施形態と同じく、各記憶装置MCは、1メモリセルトランジスタMTあたり、3ビットのデータを保持する。
第7実施形態のメモリシステム100および記憶装置MCの構成は、第1実施形態のものと同じである。
<7.1.データ書き込み>
第7実施形態では、第6実施形態と同じく133マッピングまたは124マッピングが使用され、記憶領域ユニットMAは、3つの独立して動作できるプレーンPBに亘る必要がある。この目的で、第7実施形態の記憶領域ユニットMAは、記憶装置MC0のプレーンPB0、記憶装置MC0のプレーンPB1、および記憶装置MC1の任意のプレーンPB(例えばPB0)に亘る。第7実施形態の記憶領域ユニットMAは、以下、記憶領域ユニットMA5と称される。
図41は、記憶領域ユニットMA5、および第7実施形態での記憶装置MC中でページデータが書き込まれる位置の例を示す。図41に示されるように、記憶領域ユニットMA5は、記憶装置MC0のプレーンPB0中のセルユニットCUs00のロワー、ミドル、およびアッパーページ、記憶装置MC0のプレーンPB1中のセルユニットCUs01のロワー、ミドル、およびアッパーページ、記憶装置MC1の例えばプレーンPB0中のセルユニットCUs10のロワー、ミドル、およびアッパーページの集合である。
ページデータPG0は記憶装置MC0のプレーンPB0の選択セルユニットCUs00のロワーページに書き込まれる。ページデータPG1は記憶装置MC0のプレーンPB1の選択セルユニットCUs01のミドルページに書き込まれる。ページデータPG2は記憶装置MC1のプレーンPB0の選択セルユニットCUs10のアッパーページに書き込まれる。
ページデータPG3は記憶装置MC0のプレーンPB1の選択セルユニットCUs01のロワーページに書き込まれる。ページデータPG4は記憶装置MC1のプレーンPB0の選択セルユニットCUs10のミドルページに書き込まれる。ページデータPG5は記憶装置MC0のプレーンPB0の選択セルユニットCUs00のアッパーページに書き込まれる。
ページデータPG6は記憶装置MC1のプレーンPB0の選択セルユニットCUs10のロワーページに書き込まれる。ページデータPG7は記憶装置MC0のプレーンPB0の選択セルユニットCUs00のミドルページに書き込まれる。ページデータPG8は記憶装置MC0のプレーンPB1の選択セルユニットCUs01のアッパーページに書き込まれる。
<7.2.データリード>
データリードは、他の実施形態について記述される原理に従っており、特に、第6実施形態に類似する。すなわち、データセットごとに並行してデータがリードされ、いずれの非高速ページからのデータリードも高速ページ(ロワーページ)のデータリードと並行して進行する。第6実施形態と異なる特徴は、1つのデータセットの3つのページデータPGを保持する3つの独立したプレーンPBが2つの記憶装置MCに亘ることに基づいて、データリードのためのコマンドセットが異なることである。
<7.3.利点>
第7実施形態によれば、記憶領域ユニットMA5は、2つの記憶装置MCに亘り、第6実施形態と同じく、3つの連続する論理アドレスを有する3つのページデータからなるデータセットのうちの第1ページデータは高速ページ(ロワーページ)に書き込まれ、残りのページデータは、ロワー、ミドル、およびアッパーページのうちの第1ページデータが書き込まれたページとは別のページに書き込まれる。よって、第6実施形態と同じく、1メモリセルトランジスタMTあたり3ビットのデータ保持の場合でも、第1実施形態と同じ原理により効率よくデータのリードおよび出力が行われることが可能である。
<7.4.変形例>
記憶領域ユニットMAが、3つの記憶装置MCで6つのプレーンPBにわたって形成されてもよい。変形例は、そのような例に関する。
変形例では、記憶領域ユニットMA6が使用される。記憶領域ユニットMA6は、記憶装置MC0のプレーンPB0およびPB1、記憶装置MC1のプレーンPB0およびPB1、ならびに記憶装置MC2のプレーンPB0およびPB1に亘る。
図42は、記憶領域ユニットMA6、および第7実施形態の変形例での記憶装置MC中でページデータが書き込まれる位置の例を示す。図42に示されるように、記憶領域ユニットMA6は、記憶装置MC0のプレーンPB0中のセルユニットCUs00のロワー、ミドル、およびアッパーページ、記憶装置MC0のプレーンPB1中のセルユニットCUs01のロワー、ミドル、およびアッパーページ、記憶装置MC1のプレーンPB0中のセルユニットCUs10のロワー、ミドル、およびアッパーページ、記憶装置MC1のプレーンPB1中のセルユニットCUs11のロワー、ミドル、およびアッパーページ、記憶装置MC2のプレーンPB0中のセルユニットCUs20のロワー、ミドル、およびアッパーページ、記憶装置MC2のプレーンPB1中のセルユニットCUs21のロワー、ミドル、およびアッパーページの集合である。
ページデータPG0は記憶装置MC0のプレーンPB0の選択セルユニットCUs00のロワーページに書き込まれる。ページデータPG1は記憶装置MC0のプレーンPB1の選択セルユニットCUs01のミドルページに書き込まれる。ページデータPG2は記憶装置MC1のプレーンPB0の選択セルユニットCUs10のアッパーページに書き込まれる。
ページデータPG3は記憶装置MC1のプレーンPB1の選択セルユニットCUs11のロワーページに書き込まれる。ページデータPG4は記憶装置MC2のプレーンPB0の選択セルユニットCUs20のミドルページに書き込まれる。ページデータPG5は記憶装置MC2のプレーンPB1の選択セルユニットCUs21のアッパーページに書き込まれる。
ページデータPG6は記憶装置MC0のプレーンPB1の選択セルユニットCUs01のロワーページに書き込まれる。ページデータPG7は記憶装置MC1のプレーンPB0の選択セルユニットCUs10のミドルページに書き込まれる。ページデータPG8は記憶装置MC1のプレーンPB1の選択セルユニットCUs11のアッパーページに書き込まれる。
ページデータPG9は記憶装置MC2のプレーンPB0の選択セルユニットCUs20のロワーページに書き込まれる。ページデータPG10は記憶装置MC2のプレーンPB1の選択セルユニットCUs21のミドルページに書き込まれる。ページデータPG11は記憶装置MC0のプレーンPB0の選択セルユニットCUs00のアッパーページに書き込まれる。
ページデータPG12は記憶装置MC1のプレーンPB0の選択セルユニットCUs10のロワーページに書き込まれる。ページデータPG13は記憶装置MC1のプレーンPB1の選択セルユニットCUs11のミドルページに書き込まれる。ページデータPG14は記憶装置MC2のプレーンPB0の選択セルユニットCUs20のアッパーページに書き込まれる。
ページデータPG15は記憶装置MC2のプレーンPB1の選択セルユニットCUs21のロワーページに書き込まれる。ページデータPG16は記憶装置MC0のプレーンPB0の選択セルユニットCUs00のミドルページに書き込まれる。ページデータPG17は記憶装置MC0のプレーンPB1の選択セルユニットCUs01のアッパーページに書き込まれる。
<第8実施形態>
第8実施形態は、第1実施形態および第6実施形態に類似し、各記憶装置MCが3つの独立動作可能なプレーンPBを含む例に関する。第8実施形態では、第6実施形態と同じく、各記憶装置MCは、1メモリセルトランジスタあたり、3ビットのデータを保持する。
第8実施形態のメモリシステム100および記憶装置MCの構成は、記憶装置MCが3つのプレーンPBを含むことを除いて、第1実施形態のものと同じである。以下、第6実施形態と異なる点が主に記述される。
<8.1.記憶装置の構成>
各記憶装置MCは、図3に示される要素および接続を有することに加え、プレーンPB2を含む。プレーンPB2は、プレーンPB0およびPB1と独立しており、独立してデータのリード、書き込み、および消去を実行できる。そのために、プレーンPB2は、メモリセルアレイ13_2、電位生成回路14_2、ドライバ15_2、センスアンプ16_2、およびロウデコーダ17_2(いずれも図示せず)を含む。メモリセルアレイ13_2、電位生成回路14_2、ドライバ15_2、センスアンプ16_2、およびロウデコーダ17_2は、それぞれ、プレーンPB0のメモリセルアレイ13_0、電位生成回路14_0、ドライバ15_0、センスアンプ16_0、およびロウデコーダ17_0と同じ要素および接続を有する。
<8.2.データ書き込み>
第8実施形態では、第6実施形態と同じく133マッピングまたは124マッピングが使用され、記憶領域ユニットMAは、3つの独立して動作できるプレーンPBに亘る必要がある。この目的で、第8実施形態の記憶領域ユニットMAは、或る記憶装置MCwのプレーンPB0、記憶装置MC0のプレーンPB1、および記憶装置MC0のプレーンPB2に亘る。第8実施形態の記憶領域ユニットMAは、以下、記憶領域ユニットMA7と称される。
図43は、記憶領域ユニットMA7、および第8実施形態での記憶装置MC中でページデータが書き込まれる位置の例を示し、例として記憶装置MC0について示す。図43に示されるように、記憶領域ユニットMA7は、記憶装置MC0のプレーンPB0中のセルユニットCUs00のロワー、ミドル、およびアッパーページ、記憶装置MC0のプレーンPB1中のセルユニットCUs01のロワー、ミドル、およびアッパーページ、記憶装置MC0のプレーンPB2中のセルユニットCUs02のロワー、ミドル、およびアッパーページの集合である。
ページデータPG0は記憶装置MC0のプレーンPB0の選択セルユニットCUs00のロワーページに書き込まれる。ページデータPG1は記憶装置MC0のプレーンPB1の選択セルユニットCUs01のミドルページに書き込まれる。ページデータPG2は記憶装置MC0のプレーンPB2の選択セルユニットCUs02のアッパーページに書き込まれる。
ページデータPG3は記憶装置MC0のプレーンPB1の選択セルユニットCUs01のロワーページに書き込まれる。ページデータPG4は記憶装置MC0のプレーンPB2の選択セルユニットCUs02のミドルページに書き込まれる。ページデータPG5は記憶装置MC0のプレーンPB0の選択セルユニットCUs00のアッパーページに書き込まれる。
ページデータPG6は記憶装置MC0のプレーンPB2の選択セルユニットCUs02のロワーページに書き込まれる。ページデータPG7は記憶装置MC0のプレーンPB0の選択セルユニットCUs00のミドルページに書き込まれる。ページデータPG8は記憶装置MC0のプレーンPB1の選択セルユニットCUs01のアッパーページに書き込まれる。
<8.3.データリード>
データリードは、他の実施形態について記述される原理に従っており、特に、第6実施形態に類似する。すなわち、データセットごとに並行してデータがリードされ、いずれの非高速ページからのデータリードも高速ページ(ロワーページ)のデータリードと並行して進行する。第6実施形態と異なる特徴は、1つのデータセットの3つのページデータを保持する3つの独立したプレーンPBが1つの記憶装置MCに含まれることに基づいて、データリードのためのコマンドセットが異なることである。
<8.4.利点>
第8実施形態によれば、記憶領域ユニットMA7は、1つの記憶装置MC中の独立動作可能な3つのプレーンPBに亘り、第6実施形態と同じく、3つの連続する論理アドレスを有する3つのページデータからなるデータセットのうちの第1ページデータは高速ページ(ロワーページ)に書き込まれ、残りのページデータは、ロワー、ミドル、およびアッパーページのうちの第1ページデータが書き込まれたページとは別のページに書き込まれる。よって、第6実施形態と同じく、1メモリセルトランジスタMTあたり3ビットのデータ保持の場合でも、第1実施形態と同じ原理により効率よくデータのリードおよび出力が行われることが可能である。
<第9実施形態>
第9実施形態は、第1実施形態および第6実施形態に類似する。第9実施形態では、第6実施形態と同じく、記憶装置MCは、1メモリセルトランジスタあたり、3ビットのデータを保持する。
第9実施形態のメモリシステム100および記憶装置MCの構成は、第6実施形態のものと同じである。
<9.1.マッピング>
第9実施形態では、232マッピングが使用される。図44は、第9実施形態の記憶装置MCでのメモリセルトランジスタMTの8つのステートと、3ビットデータとのマッピングの例を示す。図44に示されるように、第9実施形態では、記憶装置MCは、各ステートを以下の3ビットデータを有しているものとして扱う。
“0”ステート :“111”
“1”ステート :“110”
“2”ステート :“100”
“3”ステート :“000”
“4”ステート :“010”
“5”ステート :“011”
“6”ステート :“001”
“7”ステート :“101”
232マッピングでは、各ページのデータは、以下のリード電圧を使用して割り出される。
ロワーページリード :1Rおよび5R
ミドルページリード :2R、4R、および6R
アッパーページリード:3Rおよび7R
232マッピングでは、ロワーページおよびアッパーページが高速ページに相当し、ミドルページが非高速ページに相当する。
<9.2.データ書き込み>
第9実施形態では、各セルユニットCUが3ページのサイズのデータを保持し、3つのページは2つの高速ページを含む。このことに基づいて、第9実施形態では、記憶領域ユニットMAは、3つの独立して動作できるプレーンPBに亘る必要があり、第6実施形態と同じく、記憶領域ユニットMA4が使用される。
図45は、第9実施形態での記憶装置MC中でページデータが書き込まれる位置の例を示す。
図45に示されるように、ページデータPG0は記憶装置MC0の選択セルユニットCUs0wのアッパーページに書き込まれる。ページデータPG1は記憶装置MC1の選択セルユニットCUs1wのロワーページに書き込まれる。ページデータPG2は記憶装置MC2の選択セルユニットCUs2wのミドルページに書き込まれる。
ページデータPG3は記憶装置MC1の選択セルユニットCUs1wのアッパーページに書き込まれる。ページデータPG4は記憶装置MC2の選択セルユニットCUs2wのロワーページに書き込まれる。ページデータPG5は記憶装置MC0の選択セルユニットCUs0wのミドルページに書き込まれる。
ページデータPG6は記憶装置MC2の選択セルユニットCUs2wのアッパーページに書き込まれる。ページデータPG7は記憶装置MC0の選択セルユニットCUs0wのロワーページに書き込まれる。ページデータPG8は記憶装置MC1の選択セルユニットCUs1wのミドルページに書き込まれる。
図45の書き込みは一例であり、高速ページとして、ロワーページが使用されてもよい。
<9.4.データリード>
データリードは、他の実施形態について記述される原理に従っており、特に、第6実施形態に類似する。すなわち、データセットごとに並行してデータがリードされ、いずれの非高速ページからのデータリードも高速ページ(ロワーまたはアッパーページ)のデータリードと並行して進行する。第6実施形態と異なる点は、1つのデータセットの3つのページデータを保持する3つの独立したプレーンPBが3つの記憶装置MCに亘ることに基づいて、データリードのためのコマンドセットが異なることである。
<9.5.利点>
第9実施形態によれば、第6実施形態と同じく、記憶領域ユニットMA4は、3つの記憶装置MCに亘り、3つの連続する論理アドレスを有する3つのページデータからなるデータセットのうちの第1ページデータは高速ページに書き込まれ、残りのページデータは、ロワー、ミドル、およびアッパーページのうちの第1ページデータが書き込まれたページとは別のページに書き込まれる。よって、第6実施形態と同じく、1メモリセルトランジスタMTあたり3ビットのデータ保持の場合でも、第1実施形態と同じ原理により効率よくデータのリードおよび出力が行われることが可能である。
<9.6.変形例>
第9実施形態は、第6実施形態の変形例と同じく、独立動作が不能なマルチプレーン動作に適用されても良い。
<第10実施形態>
第10実施形態は、第8実施形態および第9実施形態に類似し、各記憶装置MCが3つの独立動作可能なプレーンを含む例に関する。第10実施形態では、第6実施形態と同じく、記憶装置MCは、1メモリセルトランジスタあたり、3ビットのデータを保持する。
第10実施形態のメモリシステム100および記憶装置MCの構成は、第8実施形態のものと同じである。
<10.1.データ書き込み>
第10実施形態では、第9実施形態と同じく232マッピングが使用され、第8実施形態と同じく記憶領域ユニットMA7が使用される。
図46は、第10実施形態での記憶装置MC中でページデータが書き込まれる位置の例を示し、例として記憶装置MC0について示す。図46に示されるように、ページデータPG0は記憶装置MC0のプレーンPB0の選択セルユニットCUs00のアッパーページに書き込まれる。ページデータPG1は記憶装置MC0のプレーンPB1の選択セルユニットCUs01のロワーページに書き込まれる。ページデータPG2は記憶装置MC0のプレーンPB2の選択セルユニットCUs02のミドルページに書き込まれる。
ページデータPG3は記憶装置MC0のプレーンPB1の選択セルユニットCUs01のアッパーページに書き込まれる。ページデータPG4は記憶装置MC0のプレーンPB2の選択セルユニットCUs02のロワーページに書き込まれる。ページデータPG5は記憶装置MC0のプレーンPB0の選択セルユニットCUs00のミドルページに書き込まれる。
ページデータPG6は記憶装置MC0のプレーンPB2の選択セルユニットCUs02のアッパーページに書き込まれる。ページデータPG7は記憶装置MC0のプレーンPB0の選択セルユニットCUs00のロワーページに書き込まれる。ページデータPG8は記憶装置MC0のプレーンPB1の選択セルユニットCUs01のミドルページに書き込まれる。
<10.2.データリード>
データリードは、他の実施形態について記述される原理に従っており、特に、第6実施形態に類似する。すなわち、データセットごとに並行してデータがリードされ、いずれの非高速ページからのデータリードも高速ページ(アッパーページ)のデータリードと並行して進行する。第6実施形態と異なる特徴は、各データセットのリードにおいて、最初にリードされるページが異なることである。
<10.3.利点>
第10実施形態によれば、記憶領域ユニットMA7は、1つの記憶装置MC中の独立動作可能な3つのプレーンPBに亘り、第6実施形態と同じく、3つの連続する論理アドレスを有する3つのページデータからなるデータセットのうちの第1ページデータは高速ページ(アッパーページ)に書き込まれ、残りのページデータは、ロワー、ミドル、およびアッパーページのうちの第1ページデータが書き込まれたページとは別のページに書き込まれる。よって、第6実施形態と同じく、1メモリセルトランジスタMTあたり3ビットのデータ保持の場合でも、第1実施形態と同じ原理により効率よくデータのリードおよび出力が行われることが可能である。
<第11実施形態>
第11実施形態は、第3実施形態に類似する。第11実施形態では、記憶装置MCは、1メモリセルトランジスタあたり、2ビットのデータを保持する。
第11実施形態のメモリシステム100および記憶装置MCの構成は、第3実施形態のものと同じである。
<11.1.マッピング>
第11実施形態では、12マッピングが使用される。「HIマッピング」なる記載は、ロワーおよびアッパーページリードにそれぞれH個およびI個のリード電圧VCGRが使われることになるマッピングを指す。
図47は、第11実施形態の記憶装置MCでのメモリセルトランジスタMTの4つのステートと、2ビットデータとのマッピングの例を示す。図47に示されるように、第11実施形態では、記憶装置MCは、各ステートを以下の2ビットデータを有しているものとして扱う。
“0”ステート:“11”
“1”ステート:“10”
“2”ステート:“00”
“3”ステート:“01”
12マッピングでは、各ページのデータは、以下のリード電圧を使用して割り出される。
ロワーページリード :2R
アッパーページリード :1Rおよび3R
12マッピングでは、ロワーページが高速ページに相当し、アッパーページが非高速ページに相当する。
第11実施形態のように、1メモリセルトランジスタMTあたり2ビットデータを保持する記憶装置MCに対するページの指定は、コマンド01hおよびコマンド02hが使用される。コマンド01hは、ロワーページを指定する。コマンド02hは、アッパーページを指定する。
<11.2.データ書き込み>
第11実施形態では、各セルユニットCUが2ページのサイズのデータを保持し、2つのページはただ1つの高速ページを含む。このことに基づいて、第11実施形態では、記憶領域ユニットMAは、2つの独立して動作できるプレーンPBに亘る必要がある。第11実施形態では、各記憶装置MC中のプレーンPB0およびPB1は独立して動作できない。このため、記憶領域ユニットMAは、2つの記憶装置MCに亘る必要がある。
この目的で、第11実施形態の記憶領域ユニットMAは、記憶装置MC0の任意のプレーンPB、および記憶装置MC1の任意のプレーンPBに亘る。第11実施形態の記憶領域ユニットMAは、以下、記憶領域ユニットMA8と称される。
図48は、記憶領域ユニットMA8、および第11実施形態での記憶装置MC中でページデータが書き込まれる位置の例を示す。図48に示されるように、記憶領域ユニットMA7は、記憶装置MC0のプレーンPBw中のセルユニットCUs0wのロワーおよびアッパーページ、記憶装置MC1のプレーンPBw中のセルユニットCUs1wのロワーおよびアッパーページの集合である。
このような記憶領域ユニットMA7の特徴に基づいて、論理アドレスの連続する4つのページデータごとに1つの記憶領域ユニットMA8に保持される。図48は、具体的な例として、記憶領域ユニットMA8中の、論理アドレスの連続する4つの書き込みページデータPG0からPG3が書き込まれる位置を示す。
γが0および2の各ケースについて、ページデータPGγおよびページデータPG(γ+1)は1つのデータセットを構成する。
図48に示されるように、各データセットのページデータPGγおよびPG(γ+1)は、記憶装置MC0およびMC1に1つずつ書き込まれ、かつ、ページデータPGγおよびPG(γ+1)の1つが高速ページに書き込まれ、残りの2つは非高速ページに書き込まれる。
図48に示されるように、ページデータPG0は記憶装置MC0の選択セルユニットCUs0wのロワーページに書き込まれる。ページデータPG1は記憶装置MC1の選択セルユニットCUs1wのアッパーページに書き込まれる。ページデータPG2は記憶装置MC1の選択セルユニットCUs1wのロワーページに書き込まれる。ページデータPG3は記憶装置MC0の選択セルユニットCUs0wのアッパーページに書き込まれる。
<11.3.データリード>
図49は、第11実施形態のメモリシステム100でのデータリードの間の入出力信号DQの流れを時間に沿って示す。
図49に示されるように、いずれの非高速ページからのデータリードも高速ページ(ロワーページ)のデータリードと並行して進行する。
メモリコントローラ2は、ページデータPG0およびPG1からなるデータセットのリードのために、最初に、高速ページに保持されているページデータPG0のリードを記憶装置MC0に指示する。この指示を受けて、ページデータPG0を取得するための記憶装置MC0でのロワーページリードが開始する。続いて、メモリコントローラ2は、ページデータPG1のためのアッパーページリードを記憶装置MC1に指示する。記憶装置MC0でのロワーページリード、および記憶装置MC1でのアッパーページリードは、並行して進行する。
ページデータPG0のリードが完了すると、記憶装置MC0は、メモリコントローラ2の指示に従って、ページデータPG0を出力する。記憶装置MC0がページデータPG0を出力している間に、記憶装置MC1でのアッパーページリードが進行することができる。
以下、同様にして、メモリコントローラ2は、ページデータPG2およびPG3からなるデータセットをリードする。いずれのデータセットのリードについても、各データセットのうちの高速ページからのデータリードが最初に開始され、その後、非高速ページからのデータリードが開始される。そして、各データセットにおいて、記憶装置MC0およびMC1にわたって、ロワーページリードおよびアッパーページリードが並行して進行する。
<11.4.利点>
第11実施形態によれば、記憶領域ユニットMA8は、2つの記憶装置MCに亘り、2つの連続する論理アドレスを有する2つのページデータからなるデータセットのうちの第1ページデータは高速ページに書き込まれ、残りのページデータは、非高速ページに書き込まれる。このように書き込まれたデータセットのリードにおいて、当該データセットの第1ページデータ以外のページデータPGのリードは、第1ページデータの出力の間に進行できる。このため、1メモリセルトランジスタMTあたり2ビットのデータ保持の場合でも、第1実施形態と同じ原理により、効率よくデータのリードおよび出力が行われることが可能である。
<11.5.変形例>
第11実施形態は、1つの記憶装置MC中の独立動作可能なプレーンPB0およびPB1に適用されても良い。すなわち、記憶装置MCは、第1実施形態と同じ構成を有し、記憶領域ユニットMAは、1つの、例えば記憶装置MC0のプレーンPB0およびPB1に亘り、プレーンPB0のロワーおよびアッパーページと、プレーンPB1のロワーおよびアッパーページからなる。
<第12実施形態>
第12実施形態は、第11実施形態のデータ書き込みを実現するための別の構成に関する。以下、第11実施形態と異なる特徴が主に記述される。
第12実施形態のメモリシステム100の構成は、第1実施形態のものと同じである。
<12.1.記憶装置の構成>
図50は、第12実施形態の記憶装置MCの機能ブロックを示す。図50に示されるように、各記憶装置MCは、第1実施形態(図3)での要素および接続を有することに加えて、アドレス変換回路18をさらに含む。第12実施形態の記憶装置MCは、記憶装置MCbと称される場合がある。
アドレス変換回路18は、入出力回路11からアドレス信号を受け取り、アドレス信号の或る部分、すなわち或る要素についてのアドレスを示す部分を、予め定められた規則に則って別のアドレスに変換する。アドレス変換回路18は、変換の対象の部分以外は、そのまま出力する。アドレス変換回路18の出力は、シーケンサ12、ロウデコーダ17、およびセンスアンプ16などの要素に供給される。
図51は、第12実施形態のアドレス変換回路18中の要素および接続を示す。図51に示されるように、アドレス変換回路18は、セレクタS1およびS2を含む。
セレクタS1およびS2の各々は、第1入力ノード、第2入力ノード、および制御入力ノード、および出力ノードを有する。第1入力ノードおよび第2入力ノードは、それぞれ、1ビットの値と関連付けられており、第1入力ノードは「0」と関連付けられており、第2入力ノードは「1」と関連付けられている。以下、第1入力ノードは「0」入力ノードと称され、第2入力ノードは「1」入力ノードと称される場合がある。
セレクタS1およびS2の各々は、制御入力ノードにおいて、信号CHIP_ADD<0>を受け取る。<0>は、この記載に先行する名称の信号が1ビット(第「0」ビット)を有することを示す。信号CHIP_ADD<0>は、アドレス変換回路18が含まれる記憶装置MCのID、すなわちメモリシステム100に含まれるすべての記憶装置MCの1つを特定する一意の番号に基づく値を有する。例えば、記憶装置MC0では信号CHIP_ADD<0>は値“0”を有し、記憶装置MC1では信号CHIP_ADD<0>は値“1”を有する。
セレクタS1は、「0」入力ノードにおいて信号Lower_SEL_preを受け取る。信号Lower_SEL_preは、例えば入出力回路11から供給され、ロワーページを指定するコマンド01hが記憶装置MCによって受け取られるとアサートされる。信号Lower_SEL_preは、コマンド01hに後続する、すなわちコマンド01hと関連付けられているコマンドセットにより指示される処理の対象のページをシーケンサ12に通知する信号を生成するために使用される。すなわち、コマンド01hが受信されると、当該コマンド01hと関連付けられているコマンドセットの対象のページを指定する信号が生成され、生成された信号がシーケンサ12に供給される。
セレクタS1は、「1」入力ノードにおいて信号Upper_SEL_preを受け取る。信号Upper_SEL_preは、例えば入出力回路11から供給され、アッパーページを指定するコマンド02hが記憶装置MCによって受け取られるとアサートされる。信号Upper_SEL_preは、コマンド02hに後続する、すなわちコマンド02hと関連付けられているコマンドセットにより指示される処理の対象のページをシーケンサ12に通知する信号を生成するために使用される。すなわち、コマンド02hが受信されると、当該コマンド02hと関連付けられているコマンドセットの対象のページを指定する信号が生成され、生成された信号がシーケンサ12に供給される。
セレクタS1は、「0」入力ノードと「1」入力ノードのうち、制御入力ノードで受け取っている信号の値と同じ値と関連付けられた1つを、信号Lower_SELとして出力する。具体的には、セレクタS1は、制御入力ノードにおいて値「0」の信号を受け取っていると、「0」入力ノードで受け取られている信号を出力し、制御入力ノードにおいて値「1」の信号を受け取っていると、「1」入力ノードで受け取られている信号を出力する。信号Lower_SELは、シーケンサ12に供給され、ロワーページの指定を通知する。シーケンサ12は、信号Lower_SELによって、信号Lower_SELの生成の元になったページ指定コマンド(01hまたは02h)と関連付けられているコマンドセットの対象がロワーページであることを認識する。
セレクタS2は、「0」入力ノードにおいて信号Upper_SEL_preを受け取り、「1」入力ノードにおいて信号ULower_SEL_preを受け取る。セレクタS1は、「0」入力ノードと「1」入力ノードのうち、制御入力ノードで受け取っている信号の値と同じ値と関連付けられた1つを、信号Upper_SELとして出力する。具体的には、セレクタS2は、制御入力ノードにおいて値「0」の信号を受け取っていると、「0」入力ノードで受け取られている信号を出力し、制御入力ノードにおいて値「1」の信号を受け取っていると、「1」入力ノードで受け取られている信号を出力する。信号Upper_SELは、シーケンサ12に供給され、アッパーページの指定を通知する。シーケンサ12は、信号Upper_SELによって、信号Upper_SELの生成の元になったページ指定コマンド(01hまたは02h)と関連付けられているコマンドセットの対象がアッパーページであることを認識する。
図52は、第12実施形態のアドレス変換回路18の一状態の例を示す。特に、図52は、記憶装置MC1中のアドレス変換回路18について示す。図52に示されるように、アドレス変換回路18が記憶装置MC1中にあるため、信号CHIP_ADD<0>は、値“1”を有する(ハイレベルを有する)。このため、太線にて示されるように、セレクタS1およびS2の各々は、自身の「1」入力ノードを自身の出力ノードに接続している。よって、信号Lower_SEL_preを伝送する配線はセレクタS2の出力ノードと接続され、信号Lower_SEL_preは信号Upper_SELへと変換される。また、信号Upper_SEL_preを伝送する配線はセレクタS1の出力ノードと接続され、信号Upper_SEL_preは信号Lower_SELへと変換される。
このような変換により、ロワーページを指定するコマンド01hが記憶装置MC1によって受け取られると、コマンド01hに後続するコマンドセットの対象はアッパーページであることがシーケンサ12に通知される。アッパーページを指定するコマンド02hが記憶装置MC1によって受け取られると、コマンド02hに後続するコマンドセットの対象はロワーページであることがシーケンサ12に通知される。
なお、記憶装置MC0のアドレス変換回路18は、値“0”を有する(ローレベルを有する)信号CHIP_ADD<0>を受け取る。このため、信号Lower_SELは信号Lower_SEL_preと同じ論理レベルを有し、信号Upper_SELは信号Upper_SEL_preと同じ論理レベルを有する。よって、記憶装置MC0によってロワーページを指定するコマンド01hが受け取られると、コマンド01hに後続するコマンドセットの対象はロワーページであることがシーケンサ12に通知される。記憶装置MC0によってアッパーページを指定するコマンド02hが受け取られると、コマンド02hに後続するコマンドセットの対象はアッパーページであることがシーケンサ12に通知される。
<12.2.データ書き込み>
図53は、第12実施形態のメモリシステムでのデータ書き込みのための入出力信号DQの流れを示す。メモリコントローラ2は、図48に示されるように記憶装置MC0およびMC1にデータを書き込むために、図53に示されるように、コマンドセットおよびページデータPG0からPG3を記憶装置MC0およびMC1に送信する。
まず、メモリコントローラ2は、ページデータPG0の書き込みを指示するために、記憶装置MC0に向けて、ページデータPG0と、ページデータPG0を或る選択セルユニットCUs0wのロワーページに書き込むことを指示するコマンドセットを送信する。そのために、例えば、メモリコントローラ2は、コマンド01h、コマンド80h、選択セルユニットCUs0wを指定するアドレスAdd、ページデータPG0、およびコマンド1Ahを、この順で送信する。これらのコマンドセットおよびページデータPG0が記憶装置MC0により受け取られると、シーケンサ12は、ページデータPG0を記憶装置MC0の選択セルユニットCUs0wのロワーページに書き込む指示を認識する。
メモリコントローラ2は、ページデータPG1の書き込みを指示するために、記憶装置MC1に向けて、ページデータPG1と、ページデータPG1を或る選択セルユニットCUs1wのロワーページに書き込むことを指示するコマンドセットを送信する。そのために、例えば、メモリコントローラ2は、コマンド01h、コマンド80h、選択セルユニットCUs1wを指定するアドレスAdd、ページデータPG1、およびコマンド1Ahを、この順で送信する。これらのコマンドセットおよびページデータPG1が記憶装置MC1により受け取られると、コマンド01hによるロワーページの指定は、アドレス変換回路18によって、アッパーページの指定に変換される。よって、シーケンサ12は、ページデータPG1を記憶装置MC1の選択セルユニットCUs1wのアッパーページに書き込む指示を認識する。
メモリコントローラ2は、ページデータPG2の書き込みを指示するために、記憶装置MC1に向けて、ページデータPG2と、ページデータPG2を選択セルユニットCUs1wのアッパーページに書き込むことを指示するコマンドセットを送信する。そのために、例えば、メモリコントローラ2は、コマンド02h、コマンド80h、選択セルユニットCUs1wを指定するアドレスAdd、ページデータPG2、およびコマンド10hを、この順で送信する。これらのコマンドセットおよびページデータPG2が記憶装置MC1により受け取られると、コマンド02hによるアッパーページの指定は、アドレス変換回路18によって、ロワーページの指定に変換される。よって、シーケンサ12は、ページデータPG2を記憶装置MC1の選択セルユニットCUs1wのロワーページに書き込む指示を認識する。
メモリコントローラ2は、ページデータPG3の書き込みを指示するために、記憶装置MC0に向けて、ページデータPG3と、ページデータPG3を選択セルユニットCUs0wのアッパーページに書き込むことを指示するコマンドセットを送信する。そのために、例えば、メモリコントローラ2は、コマンド02h、コマンド80h、選択セルユニットCUs0wを指定するアドレスAdd、ページデータPG3、およびコマンド10hを、この順で送信する。これらのコマンドセットおよびページデータPG3が記憶装置MC0により受け取られると、シーケンサ12は、ページデータPG3を記憶装置MC0の選択セルユニットCUs0wのアッパーページに書き込む指示を認識する。
図53のようなコマンドの送信は、メモリコントローラ2がページデータPG0からPG3を、図54に示される位置に書き込んだものと認識していることを意味する。すなわち、メモリコントローラ2は、ページデータPG0を記憶装置MC0の選択セルユニットCUs0wのロワーページに、ページデータPG1を記憶装置MC1の選択セルユニットCUs1wのロワーページに、ページデータPG2を記憶装置MC1の選択セルユニットCUs1wのアッパーページに、ページデータPG3を記憶装置MC0の選択セルユニットCUs0wのアッパーページに書き込んだものと認識している。アドレス変換テーブル221もそのようなページデータPGと物理アドレスの対応を示している。
一方、図53のようなコマンドおよびページデータPGの送信によって、ページデータPG0からPG3は、記憶装置MC0およびMC1において実際には図48に示されるように書き込まれる。
<12.3.データリード>
図55は、第12実施形態のメモリシステム100でのデータリードの間の入出力信号DQの流れを時間に沿って示す。メモリコントローラ2は、ページデータPG0からPG3が書き込まれている位置を図54のように認識していることに留意されたい。
図55に示されるように、メモリコントローラ2は、ページデータPG0およびPG1を並行してリードする。そのために、まず、メモリコントローラ2は、記憶装置MC0に向けて、選択セルユニットCUs0wのロワーページからのデータリードを指示するコマンドセットを送信する。このコマンドセットが記憶装置MC0により受け取られると、記憶装置MC0は、選択セルユニットCUs0wのロワーページに保持されているページデータPG0を取得する。
次いで、メモリコントローラ2は、記憶装置MC1に向けて、選択セルユニットCUs1wのロワーページからのデータリードを指示するコマンドセットを送信する。このコマンドセットがMC1により受け取られると、コマンド01hによるロワーページの指定は、アドレス変換回路18によって、アッパーページの指定に変換される。よって、記憶装置MC1は、選択セルユニットCUs1wのアッパーページに保持されているページデータPG1を取得する。
次いで、メモリコントローラ2は、ページデータPG2およびPG3を並行してリードする。そのために、まず、メモリコントローラ2は、記憶装置MC1に向けて、選択セルユニットCUs1wのアッパーページからのデータリードを指示するコマンドセットを送信する。このコマンドセットがMC1により受け取られると、コマンド02hによるアッパーページの指定は、アドレス変換回路18によって、ロワーページの指定に変換される。よって、記憶装置MC1は、選択セルユニットCUs1wのロワーページに保持されているページデータPG2を取得する。
次いで、メモリコントローラ2は、記憶装置MC0に向けて、選択セルユニットCUs0wのアッパーページからのデータリードを指示するコマンドセットを送信する。このコマンドセットが記憶装置MC0により受け取られると、記憶装置MC0は、選択セルユニットCUs0wのアッパーページに保持されているページデータPG2を取得する。
<12.4.利点>
第12実施形態が使用されない場合、第11実施形態の図48のようなページデータPGの書き込みのためには、一般に、図56のようなシーケンスでのコマンドセットおよびページデータの送信が必要である。すなわち、ページデータPGが実際に書き込まれるべき記憶装置MCおよびページが指定される。例えば、ページデータPG1を書き込むためのコマンドセットはアッパーページを指定し、ページデータPG2を書き込むためのコマンドセットはロワーページを指定する。しかしながら、このようなシーケンスでは、例えば、記憶装置MC0およびMC1のロワーページへのデータ書き込み、記憶装置MC0およびMC1のアッパーページへのデータ書き込みといったように順序良く並んでいないなど、規則性が低い。
第12実施形態によれば、第11実施形態のようなデータセットの書き込みのためのコマンドセットの送信は、規則性が高い。すなわち、例えば、ロワーページを指定する全てのデータの書き込みの完了後に、アッパーページを指定するデータの書き込みが起こることが可能である。このようなコマンドの送信であっても、第11実施形態のように、データが書き込まれる。このため、メモリコントローラ2によるデータ書き込みの指示が単純であり、メモリコントローラ2による処理の負担が軽い。
<第13実施形態>
第13実施形態は、第3実施形態のデータ書き込みを実現するための別の構成に関する。以下、第3実施形態と異なる特徴が主に記述される。
第13実施形態のメモリシステム100の構成は、第1実施形態のものと同じである。
以下の記述は、第3実施形態のデータ書き込みの種々の具体例のうち、図24に示される書き込みを実現するための構成の例に関する。以下に記述される原理を用いて、第3実施形態のデータ書き込みの他の例(例えば図21)を実現するための構成も当業者によれば、想到されることが可能である。
<13.1.記憶装置の構成>
図57は、第13実施形態の記憶装置中の要素および接続を示す。図57に示されるように、各記憶装置MCは、第1実施形態(図3)での要素および接続を有することに加えて、アドレス変換回路19をさらに含む。第13実施形態の記憶装置MCは、記憶装置MCcと称される場合がある。
アドレス変換回路19は、入出力回路11からアドレス信号を受け取り、アドレス信号の或る部分、すなわち或る要素についてのアドレスを示す部分を、予め定められた規則に則って別のアドレスに変換する。アドレス変換回路19は、変換の対象の部分以外は、そのまま出力する。アドレス変換回路19の出力は、シーケンサ12、ロウデコーダ17、およびセンスアンプ16などの要素に供給される。
図58は、第13実施形態のアドレス変換回路19中の要素および接続を示す。図58に示されるように、アドレス変換回路19は、セレクタS11、S12、S13、およびS14を含む。
セレクタS11からS14の各々は、第1入力ノード、第2入力ノード、第3入力ノード、第4入力ノード、および制御入力ノード、および出力ノードを有する。第1入力ノードから第4入力ノードは、それぞれ、2ビットの値と関連付けられている。第1入力ノードは「10」と関連付けられている。第2入力ノードは「11」と関連付けられている。第3入力ノードは「00」と関連付けられている。第4入力ノードは「01」と関連付けられている。以下、第1入力ノードは「10」入力ノードと称され、第2入力ノードは「11」入力ノードと称され、第3入力ノードは「00」入力ノードと称され、第4入力ノードは「01」入力ノードと称される場合がある。
セレクタS11からS14の各々は、制御入力ノードにおいて、信号CHIP_ADD<1:0>を受け取る。信号CHIP_ADD<1:0>は、アドレス変換回路19が含まれる記憶装置MCのIDに基づく値を有する。例えば、記憶装置MC0では信号CHIP_ADD<0:1>は値“00”を有し、記憶装置MC1では信号CHIP_ADD<0:1>は値“01”を有し、記憶装置MC2では信号CHIP_ADD<0:1>は値“10”を有し、記憶装置MC3では信号CHIP_ADD<0:1>は値“11”を有する。
セレクタS11は、「10」入力ノードにおいて信号Lower_SEL_preを受け取る。
セレクタS11は、「11」入力ノードにおいて信号Middle_SEL_preを受け取る。信号Middle_SEL_preは、例えば入出力回路11から供給され、ミドルページを指定するコマンド02hが記憶装置MCによって受け取られるとアサートされる。信号Middle_SEL_preは、コマンド02hに後続する、すなわちコマンド02hと関連付けられているコマンドセットにより指示される処理の対象のページをシーケンサ12に通知する信号を生成するために使用される。すなわち、コマンド02hが受信されると、当該コマンド02hと関連付けられているコマンドセットの対象のページを指定する信号が生成され、生成された信号がシーケンサ12に供給される。
セレクタS11は、「00」入力ノードにおいて信号Upper_SEL_preを受け取る。信号Upper_SEL_preは、例えば入出力回路11から供給され、アッパーページを指定するコマンド03hが記憶装置MCによって受け取られるとアサートされる。信号Upper_SEL_preは、コマンド03hに後続する、すなわちコマンド03hと関連付けられているコマンドセットにより指示される処理の対象のページをシーケンサ12に通知する信号を生成するために使用される。すなわち、コマンド03hが受信されると、当該コマンド03hと関連付けられているコマンドセットの対象のページを指定する信号が生成され、生成された信号がシーケンサ12に供給される。
セレクタS11は、「01」入力ノードにおいて信号Top_SEL_preを受け取る。信号Top_SEL_preは、例えば入出力回路11から供給され、トップページを指定するコマンド04hが記憶装置MCによって受け取られるとアサートされる。信号Top_SEL_preは、コマンド04hに後続する、すなわちコマンド04hと関連付けられているコマンドセットにより指示される処理の対象のページをシーケンサ12に通知する信号を生成するために使用される。すなわち、コマンド04hが受信されると、当該コマンド04hと関連付けられているコマンドセットの対象のページを指定する信号が生成され、生成された信号がシーケンサ12に供給される。
セレクタS11は、「10」入力ノード、「11」入力ノード、「00」入力ノード、および「01」入力ノードのうち、制御入力ノードで受け取っている信号の値と同じ値のビット列と関連付けられた1つを、信号Lower_SELとして出力する。具体的には、セレクタS11は、制御入力ノードにおいて値“10”の信号を受け取っていると、「10」入力ノードで受け取られている信号を出力する。セレクタS11は、制御入力ノードにおいて値“11”の信号を受け取っていると、「11」入力ノードで受け取られている信号を出力する。セレクタS11は、制御入力ノードにおいて値“00”の信号を受け取っていると、「00」入力ノードで受け取られている信号を出力する。セレクタS11は、制御入力ノードにおいて値“01”の信号を受け取っていると、「01」入力ノードで受け取られている信号を出力する。
セレクタS12は、「10」入力ノードにおいて信号Top_SEL_preを受け取り、「11」入力ノードにおいて信号Lower_SEL_preを受け取り、「00」入力ノードにおいて信号Middle_SEL_preを受け取り、「01」入力ノードにおいて信号Upper_SEL_preを受け取る。セレクタS12は、セレクタS11と同様に、「10」入力ノード、「11」入力ノード、「00」入力ノード、および「01」入力ノードのうち、制御入力ノードで受け取っている信号の値と同じ値のビット列と関連付けられた1つを、信号Middle_SELとして出力する。信号Middle_SELは、シーケンサ12に供給され、ミドルページの指定を通知する。シーケンサ12は、信号Middle_SELによって、信号Middle_SELの生成の元になったページ指定コマンド(01h、02h、03h、または04h)と関連付けられているコマンドセットの対象がミドルページであることを認識する。
セレクタS13は、「10」入力ノードにおいて信号Upper_SEL_preを受け取り、「11」入力ノードにおいて信号Top_SEL_preを受け取り、「00」入力ノードにおいて信号Lower_SEL_preを受け取り、「01」入力ノードにおいて信号Middle_SEL_preを受け取る。セレクタS13は、セレクタS11と同様に、「10」入力ノード、「11」入力ノード、「00」入力ノード、および「01」入力ノードのうち、制御入力ノードで受け取っている信号の値と同じ値のビット列と関連付けられた1つを、信号Upper_SELとして出力する。
セレクタS14は、「10」入力ノードにおいて信号Middle_SEL_preを受け取り、「11」入力ノードにおいて信号Upper_SEL_preを受け取り、「00」入力ノードにおいて信号Top_SEL_preを受け取り、「01」入力ノードにおいて信号Lower_SEL_preを受け取る。セレクタS14は、セレクタS11と同様に、「10」入力ノード、「11」入力ノード、「00」入力ノード、および「01」入力ノードのうち、制御入力ノードで受け取っている信号の値と同じ値のビット列と関連付けられた1つを、信号Top_SELとして出力する。信号Top_SELは、シーケンサ12に供給され、トップページの指定を通知する。シーケンサ12は、信号Top_SELによって、信号Top_SELの生成の元になったページ指定コマンド(01h、02h、03h、または04h)と関連付けられているコマンドセットの対象がトップページであることを認識する。
図59は、第13実施形態のアドレス変換回路19の一状態の例を示す。特に、図59は、記憶装置MC0中のアドレス変換回路19について示す。図59に示されるように、アドレス変換回路19が記憶装置MC0中にあるため、信号CHIP_ADD<1:0>は、値“00”を有する(各ビットでローレベルを有する)。このため、太線にて示されるように、セレクタS1からS4の各々は、自身の「00」入力ノードを自身の出力ノードに接続している。よって、信号Lower_SEL_preを伝送する配線はセレクタS13の出力ノードと接続され、信号Lower_SEL_preは信号Upper_SELへと変換される。信号Middle_SEL_preを伝送する配線はセレクタS12の出力ノードと接続され、信号Middle_SEL_preは信号Middle_SELへと変換される。信号Upper_SEL_preを伝送する配線はセレクタS11の出力ノードと接続され、信号Upper_SEL_preは信号Lower_SELへと変換される。信号Top_SEL_preを伝送する配線はセレクタS14の出力ノードと接続され、信号Top_SEL_preは信号Top_SELへと変換される。
このような変換により、ロワーページを指定するコマンド01hが記憶装置MC0によって受け取られると、コマンド01hに後続するコマンドセットの対象はアッパーページであることがシーケンサ12に通知される。アッパーページを指定するコマンド03hが記憶装置MC0によって受け取られると、コマンド03hに後続するコマンドセットの対象はロワーページであることがシーケンサ12に通知される。
一方、ミドルページを指定するコマンド02hが記憶装置MC0によって受け取られると、コマンド02hに後続するコマンドセットの対象はミドルページであることがシーケンサ12に通知される。トップページを指定するコマンド04hが記憶装置MC0によって受け取られると、コマンド04hに後続するコマンドセットの対象はトップページであることがシーケンサ12に通知される。
記憶装置MC1、MC2、およびMC3のアドレス変換回路19では、記憶装置MC0のアドレス変換回路19での原理と同じ原理により、記憶装置MC0のアドレス変換回路19とは違った形で変換が行われる。
記憶装置MC1のアドレス変換回路19では、信号Lower_SEL_preは信号Top_SELへと変換される。信号Middle_SEL_preは信号Upper_SELへと変換される。信号Upper_SEL_preは信号Middle_SELへと変換される。信号Top_SEL_preは信号Lower_SELへと変換される。
記憶装置MC2のアドレス変換回路19では、信号Lower_SEL_preは信号Lower_SELへと変換される。信号Middle_SEL_preは信号Top_SELへと変換される。信号Upper_SEL_preは信号Upper_SELへと変換される。信号Top_SEL_preは信号Middle_SELへと変換される。
記憶装置MC3のアドレス変換回路19では、信号Lower_SEL_preは信号Middle_SELへと変換される。信号Middle_SEL_preは信号Lower_SELへと変換される。信号Upper_SEL_preは信号Top_SELへと変換される。信号Top_SEL_preは信号Upper_SELへと変換される。
<13.2.データ書き込み>
図60および図61は、第13実施形態のメモリシステム100での書き込みを行うための入出力信号DQの流れを示す。図61は、図60に後続する状態を示す。
メモリコントローラ2は、図60および図61に示されるように記憶装置MC0からMC3にデータを書き込むために、図60および図61に示されるように、コマンドセットおよびページデータPG0からPG15を記憶装置MC0からMC3に送信する。
まず、メモリコントローラ2は、ページデータPG0の書き込みを指示するために、記憶装置MC0に向けて、ページデータPG0と、ページデータPG0を或る選択セルユニットCUs0wのロワーページに書き込むことを指示するコマンドセットを送信する。そのために、例えば、メモリコントローラ2は、コマンド01h、コマンド80h、選択セルユニットCUs0wを指定するアドレスAdd、ページデータPG0、およびコマンド1Ahを、この順で送信する。これらのコマンドセットおよびページデータPG0が記憶装置MC0により受け取られると、コマンド01hによるロワーページの指定は、アドレス変換回路19によって、アッパーページの指定に変換される。よって、シーケンサ12は、ページデータPG0を記憶装置MC0の選択セルユニットCUs0wのアッパーページに書き込む指示を認識する。
メモリコントローラ2は、ページデータPG1の書き込みを指示するために、記憶装置MC1に向けて、ページデータPG1と、ページデータPG1を或る選択セルユニットCUs1wのロワーページに書き込むことを指示するコマンドセットを送信する。そのために、例えば、メモリコントローラ2は、コマンド01h、コマンド80h、選択セルユニットCUs1wを指定するアドレスAdd、ページデータPG1、およびコマンド1Ahを、この順で送信する。これらのコマンドセットおよびページデータPG1が記憶装置MC1により受け取られると、コマンド01hによるロワーページの指定は、アドレス変換回路19によって、トップページの指定に変換される。よって、シーケンサ12は、ページデータPG1を記憶装置MC1の選択セルユニットCUs1wのトップページに書き込む指示を認識する。
メモリコントローラ2は、ページデータPG2の書き込みを指示するために、記憶装置MC2に向けて、ページデータPG2と、ページデータPG2を選択セルユニットCUs2wのロワーページに書き込むことを指示するコマンドセットを送信する。そのために、例えば、メモリコントローラ2は、コマンド01h、コマンド80h、選択セルユニットCUs2wを指定するアドレスAdd、ページデータPG2、およびコマンド1Ahを、この順で送信する。これらのコマンドセットおよびページデータPG2が記憶装置MC2により受け取られると、コマンド01hによるロワーページの指定は、アドレス変換回路19によって、ロワーページの指定として通知される。よって、シーケンサ12は、ページデータPG2を記憶装置MC2の選択セルユニットCUs2wのロワーページに書き込む指示を認識する。
メモリコントローラ2は、ページデータPG3の書き込みを指示するために、記憶装置MC3に向けて、ページデータPG3と、ページデータPG3を或る選択セルユニットCUs3wのロワーページに書き込むことを指示するコマンドセットを送信する。そのために、例えば、メモリコントローラ2は、コマンド01h、コマンド80h、選択セルユニットCUs3wを指定するアドレスAdd、ページデータPG3、およびコマンド1Ahを、この順で送信する。これらのコマンドセットおよびページデータPG3が記憶装置MC3により受け取られると、コマンド01hによるロワーページの指定は、アドレス変換回路19によって、ミドルページの指定に変換される。よって、シーケンサ12は、ページデータPG3を記憶装置MC3の選択セルユニットCUs3wのミドルページに書き込む指示を認識する。
以下、同様にして、ページデータPG4からPG15の書き込みのための指示がメモリコントローラ2によって行われる。ページデータPG4からPG7の書き込みのためのコマンドセットは、コマンド02h、コマンド80h、アドレスAdd、ページデータPG、およびコマンド1Ahを含む。コマンド02hによるミドルページの指定は、記憶装置MC1では、アドレス変換回路19によって、アッパーページの指定に変換される。コマンド02hによるミドルページの指定は、記憶装置MC2では、アドレス変換回路19によって、トップページの指定に変換される。コマンド02hによるミドルページの指定は、記憶装置MC3では、アドレス変換回路19によって、ロワーページの指定に変換される。コマンド02hによるミドルページの指定は、記憶装置MC0では、ミドルページの指定を維持する。
ページデータPG8からPG11の書き込みのためのコマンドセットは、コマンド03h、コマンド80h、アドレスAdd、ページデータPG、およびコマンド1Ahを含む。コマンド03hによるアッパーページの指定は、記憶装置MC2では、アッパーページの指定を維持する。コマンド03hによるアッパーページの指定は、記憶装置MC3では、アドレス変換回路19によって、トップページの指定に変換される。コマンド03hによるアッパーページの指定は、記憶装置MC0では、アドレス変換回路19によって、ロワーページの指定に変換される。コマンド03hによるアッパーページの指定は、記憶装置MC1では、アドレス変換回路19によって、ミドルページの指定に変換される。
ページデータPG12からPG15の書き込みのためのコマンドセットは、コマンド04h、コマンド80h、アドレスAdd、ページデータPG、およびコマンド10hを含む。コマンド04hによるトップページの指定は、記憶装置MC3では、アドレス変換回路19によって、アッパーページの指定に変換される。コマンド04hによるトップページの指定は、記憶装置MC0では、トップページの指定を維持する。コマンド04hによるトップページの指定は、記憶装置MC1では、アドレス変換回路19によって、ロワーページの指定に変換される。コマンド04hによるトップページの指定は、記憶装置MC2では、アドレス変換回路19によって、ミドルページの指定に変換される。
図60および図61のようなコマンドの送信は、メモリコントローラ2がページデータPG0からPG15を、図62に示されるように書き込んだものと認識していることを意味する。すなわち、メモリコントローラ2は、ページデータPG0を記憶装置MC0の選択セルユニットCUs0wのロワーページに、ページデータPG1を記憶装置MC1の選択セルユニットCUs1wのロワーページに、ページデータPG2を記憶装置MC2の選択セルユニットCUs2wのロワーページに、ページデータPG3を記憶装置MC3の選択セルユニットCUs3wのロワーページに書き込んだものと認識している。
メモリコントローラ2は、ページデータPG4を記憶装置MC1の選択セルユニットCUs1wのミドルページに、ページデータPG5を記憶装置MC2の選択セルユニットCUs2wのミドルページに、ページデータPG6を記憶装置MC3の選択セルユニットCUs3wのミドルページに、ページデータPG7を記憶装置MC0の選択セルユニットCUs0wのミドルページに書き込んだものと認識している。
メモリコントローラ2は、ページデータPG8を記憶装置MC2の選択セルユニットCUs2wのアッパーページに、ページデータPG9を記憶装置MC3の選択セルユニットCUs3wのアッパーページに、ページデータPG10を記憶装置MC0の選択セルユニットCUs0wのアッパーページに、ページデータPG11を記憶装置MC1の選択セルユニットCUs1wのアッパーページに書き込んだものと認識している。
メモリコントローラ2は、ページデータPG12を記憶装置MC3の選択セルユニットCUs3wのトップページに、ページデータPG13を記憶装置MC0の選択セルユニットCUs0wのトップページに、ページデータPG14を記憶装置MC1の選択セルユニットCUs1wのトップページに、ページデータPG15を記憶装置MC2の選択セルユニットCUs2wのトップページに書き込んだものと認識している。アドレス変換テーブル221もそのようなページデータPGと物理アドレスの対応を示している。
一方、図60および図61のようなコマンドおよびページデータPGの送信によって、ページデータPG0からPG15は、記憶装置MC0からMC3において実際には図24に示されるように書き込まれる。
<13.3.データリード>
図63および図64は、第13実施形態のメモリシステム100でのデータリードの間の入出力信号DQの流れを時間に沿って示す。図64は、図63に後続する状態を示す。メモリコントローラ2は、ページデータPG0からPG15が書き込まれている位置を図24のように認識していることに留意されたい。
図63および図64に示されるように、メモリコントローラ2は、ページデータPG0からPG3を並行してリードする。そのために、まず、メモリコントローラ2は、記憶装置MC0に向けて、選択セルユニットCUs0wのロワーページからのデータリードを指示するコマンドセットを送信する。このコマンドセットがMC0により受け取られると、コマンド01hによるロワーページの指定は、アドレス変換回路19によって、アッパーページの指定に変換される。よって、記憶装置MC0は、選択セルユニットCUs0wのアッパーページに保持されているページデータPG0を取得する。
メモリコントローラ2は、記憶装置MC1に向けて、選択セルユニットCUs1wのロワーページからのデータリードを指示するコマンドセットを送信する。このコマンドセットがMC1により受け取られると、コマンド01hによるロワーページの指定は、アドレス変換回路19によって、トップページの指定に変換される。よって、記憶装置MC1は、選択セルユニットCUs1wのトップページに保持されているページデータPG1を取得する。
メモリコントローラ2は、記憶装置MC2に向けて、選択セルユニットCUs2wのロワーページからのデータリードを指示するコマンドセットを送信する。このコマンドセットがMC2により受け取られると、コマンド01hによるロワーページの指定は、アドレス変換回路19によって、ロワーページの指定に維持される。よって、記憶装置MC2は、選択セルユニットCUs2wのロワーページに保持されているページデータPG2を取得する。
メモリコントローラ2は、記憶装置MC3に向けて、選択セルユニットCUs3wのロワーページからのデータリードを指示するコマンドセットを送信する。このコマンドセットがMC3により受け取られると、コマンド01hによるロワーページの指定は、アドレス変換回路19によって、ミドルページの指定に変換される。よって、記憶装置MC3は、選択セルユニットCUs3wのミドルページに保持されているページデータPG3を取得する。
以下、同様にして、ページデータPG4からPG15のリードのための指示がメモリコントローラ2によって行われる。ページデータPG4からPG7のリードのためのコマンドセットは、コマンド02h、コマンド00h、アドレスAdd、およびコマンド30hを含む。コマンド02hによるミドルページの指定は、データ書き込みについて記述されたように変換される。このため、記憶装置MC1でのアッパーページリード、記憶装置MC2でのトップページリード、記憶装置MC3でのロワーページリード、記憶装置MC0でのミドルページリードが行われる。この結果、ページデータPG4からPG7が取得される。
ページデータPG8からPG11のリードのためのコマンドセットは、コマンド03h、コマンド00h、アドレスAdd、およびコマンド30hを含む。コマンド03hによるアッパーページの指定は、データ書き込みについて記述されたように変換される。このため、記憶装置MC2でのアッパーページリード、記憶装置MC3でのトップページリード、記憶装置MC0でのロワーページリード、記憶装置MC1でのミドルページリードが行われる。この結果、ページデータPG8からPG11が取得される。
ページデータPG12からPG15のリードのためのコマンドセットは、コマンド04h、コマンド00h、アドレスAdd、およびコマンド30hを含む。コマンド04hによるトップページの指定は、データ書き込みについて記述されたように変換される。このため、記憶装置MC3でのアッパーページリード、記憶装置MC0でのトップページリード、記憶装置MC1でのロワーページリード、記憶装置MC2でのミドルページリードが行われる。この結果、ページデータPG12からPG15として書き込まれたデータが取得される。
<13.4.利点>
第13実施形態が使用されない場合、第13実施形態の図24のようなページデータPGの書き込みのためには、一般に、図65のようなシーケンスでのコマンドセットおよびページデータの送信が必要である。すなわち、ページデータPGが実際に書き込まれるべき記憶装置MCおよびページが指定される。例えば、ページデータPG0を書き込むためのコマンドセットは記憶装置MC0のアッパーページを指定し、ページデータPG1を書き込むためのコマンドセットは記憶装置MC1のトップページを指定し、ページデータPG2を書き込むためのコマンドセットは記憶装置MC2のロワーページを指定し、ページデータPG3を書き込むためのコマンドセットは記憶装置MC3のミドルページを指定する。しかしながら、このようなシーケンスでは、例えば、記憶装置MC0からMC3のロワーページへのデータ書き込み、記憶装置MC0からMC3のミドルページへのデータ書き込み、記憶装置MC0からMC3のアッパーページへのデータ書き込み、記憶装置MC0からMC3のトップページへのデータ書き込みといったように順序良く並んでいないなど、規則性が低い。
第13実施形態によれば、第3実施形態のようなデータセットの書き込みのためのコマンドセットの送信は、規則性が高い。すなわち、例えば、ロワーページを指定する全てのデータの書き込み、ミドルページを指定する全てのデータの書き込み、アッパーページを指定する全てのデータの書き込み、トップページを指定する全てのデータの書き込みという順序が可能である。このようなコマンドの送信であっても、第3実施形態のように、データが書き込まれる。このため、メモリコントローラ2によるデータ書き込みの指示が単純であり、メモリコントローラ2による処理の負担が軽い。
<変形例>
第12および第13実施形態のような、アドレス変換回路18または19による指定ページの変換は、第3および第11実施形態以外にも適用されることが可能である。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。