JP2013125452A - 不揮発性半導体記憶装置、および不揮発性半導体記憶装置におけるシードデータの設定方法 - Google Patents
不揮発性半導体記憶装置、および不揮発性半導体記憶装置におけるシードデータの設定方法 Download PDFInfo
- Publication number
- JP2013125452A JP2013125452A JP2011274482A JP2011274482A JP2013125452A JP 2013125452 A JP2013125452 A JP 2013125452A JP 2011274482 A JP2011274482 A JP 2011274482A JP 2011274482 A JP2011274482 A JP 2011274482A JP 2013125452 A JP2013125452 A JP 2013125452A
- Authority
- JP
- Japan
- Prior art keywords
- seed data
- areas
- memory device
- address
- semiconductor memory
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
Abstract
【課題】倍速ランダマイザの使用時に、シードデータのランダム性を確保しつつ、シードデータのローディング時間を短縮できる、不揮発性半導体記憶装置を提供する。
【解決手段】本発明の不揮発性半導体記憶装置は、図3(A)に示すように、ページアドレス(0〜FFF)を128個のカラムアドレス単位で32個の第1領域に区分し、16倍速(×16)のランダマイザを使用する場合は、32個の第1領域に対して2個のシードデータA,Bを、16回順に繰り返して設定する。そして、図3(C)に示すように、32個の第1領域を8個ごとの第2領域(Ypアドレス0〜7で指定される8個の第1領域を含む第2領域)に区分けし、この第2領域に含まれる8個の第1領域の中から半数の領域をランダムに選択し、この選択された4個の第1領域に設定されたシードデータを論理反転させる。
【選択図】図3
【解決手段】本発明の不揮発性半導体記憶装置は、図3(A)に示すように、ページアドレス(0〜FFF)を128個のカラムアドレス単位で32個の第1領域に区分し、16倍速(×16)のランダマイザを使用する場合は、32個の第1領域に対して2個のシードデータA,Bを、16回順に繰り返して設定する。そして、図3(C)に示すように、32個の第1領域を8個ごとの第2領域(Ypアドレス0〜7で指定される8個の第1領域を含む第2領域)に区分けし、この第2領域に含まれる8個の第1領域の中から半数の領域をランダムに選択し、この選択された4個の第1領域に設定されたシードデータを論理反転させる。
【選択図】図3
Description
本発明は、フラッシュメモリを用いた不揮発性半導体記憶装置、および不揮発性半導体記憶装置におけるシードデータの設定方法に関する。
NAND型フラッシュメモリのMLC(Multi Level Cell)及び一部のSLC(Single Level Cell)回路において、プログラム(書き込み)されたオフセル(Off−Cell)とイレース(消去)されたオンセル(On−Cell)の数を均等とするランダマイザ(Randomizer:乱数発生回路)が使用されている。しかし、ランダマイザ使用時には、シードデータをローディングする時間が長くなるために、結果としてプログラム(書き込み)及びリード(読み出し)期間が長くなってしまう。この場合、倍速ランダマイザ機能を使用することにより、シードデータのローディング時間を短縮できるが、シードデータのランダム性が失われてしまうという問題がある。
なお、関連するメモリシステムがある(特許文献1を参照)。この特許文献1に記載のメモリシステムは、NAND型フラッシュメモリに対する誤書き込みの発生を抑制することを目的としている。この特許文献1に記載のメモリシステムは、複数のページからなるメモリブロックを有するNAND型フラッシュメモリと、フラッシュメモリへのデータの書き込みを制御し、データを疑似乱数化するスクランブル回路を有するコントローラと、を備える。スクランブル回路は、セグメント単位で初期値を発生させる初期値発生回路と、ページアドレス単位で初期値をNビットシフトさせる初期値シフト回路と、Nビットシフトされた初期値を使用してM系列による擬似乱数列を発生させる疑似乱数発生回路と、疑似乱数列をデータに加算する乱数加算回路と、を有する。この特許文献1に記載のメモリシステムは、乱数発生方法について、2つの方法を開示している。一つは、一度生成した乱数に対して、Nビットシフトする方法であり、もう一つは、一度発生した乱数に対して、前ページとはデータを反転させる方法である。しかしながら、この特許文献1に記載のメモリシステムで開示された方法では、シードデータのローディング時間の短縮にはつながらない。
上述のように、MLC及び一部のSLC回路において、オンセルとオフセルの数を均等とするランダマイザを使用している。しかしながら、ランダマイザ使用時には、シードデータのローディング時間が長くなるため、結果としてプログラム及びリード期間が長くなってしまう。この問題の解決のために、倍速ランダマイザ機能(ページアドレス内の複数の領域において同一のシードデータを使用してシードデータの種類を減らす機能)を用いることにより、シードデータのローディング時間を短縮できる。しかし、倍速ランダマイザを用いることにより、シードデータのランダム性が失われてしまうという問題が発生する。
図7は、倍速ランダマイザにおけるシードデータの設定例を示す図であり、4Kのフラッシュメモリのページバッファにおけるページアドレスとシードデータとの対応関係を表で示したものである。この図7に示す表では、最上段の横方向にカラムアドレスを128個ごとのアドレス(1つのシードデータが設定されるアドレス範囲)で区分けした32個の領域を示している。また、この表の左端には、縦方向に倍速ランダマイザの速度(1倍速(×1)、4倍速(×4)、8倍速(×8)、16倍速(×16)、32倍速(×32))をパラメータとして並べて示している。そして、表中には、カラムアドレスと倍速の速度とに応じて、選択されるシードデータ(乱数のパターン)の種類(符号AからFFで一意に識別されるシードデータ)を示している。なお、この図7に示す表については、本発明の実施形態の項において再度説明する。
この表に示すように、1倍速(×1)の場合、すなわち倍速ランダマイザを使用しない場合は、32個の領域のそれぞれに対して異なる32種類のシードデータA〜FFが使用される。このシードデータは、例えば、シードデータA=01011101・・・、シードデータB=11010111・・・等のカラムアドレスに対応する128ビットのデータである。一方、4倍速(×4)の場合は、使用されるシードデータの種類が1/4となり、シードデータは、シードデータAからHまでの8種類(32/4)となる。また、16倍速(×16)の場合は、使用されるシードデータの種類が1/16となり、シードデータはシードデータAおよびBの2種類となる。また、32倍速(×32)の場合は、シードデータは、シードデータAのみとなる。
このように、シードデータを倍速化することにより、複数のページバッファに同一のシードデータを一括して入力することができるため、シードデータの種類が減るとともに、シードデータのローディング時間は短縮される。しかし、その反面、使用されるシードデータの種類が少なくなるため、シードデータのランダム性が低減されることになる。
このように、シードデータを倍速化することにより、複数のページバッファに同一のシードデータを一括して入力することができるため、シードデータの種類が減るとともに、シードデータのローディング時間は短縮される。しかし、その反面、使用されるシードデータの種類が少なくなるため、シードデータのランダム性が低減されることになる。
本発明は、斯かる実情に鑑みなされたものであり、本発明の目的は、倍速ランダマイザの使用時に、シードデータのランダム性を確保しつつ、シードデータのローディング時間を短縮することができる、不揮発性半導体記憶装置、および不揮発性半導体記憶装置におけるシードデータの設定方法を提供することにある。
本発明は上記課題を解決するためになされたものであり、本発明の不揮発性半導体記憶装置は、ページアドレスをシードデータが設定される単位で複数の領域に区分するとともに前記複数の領域のそれぞれにシードデータを設定する際に、前記複数の領域の中に同一のシードデータが設定されるものがある場合は、当該同一のシードデータが設定される複数の領域の中から、半数の領域をランダムに選択し、この選択した領域に使用されるシードデータを論理反転させることを特徴とする。
本発明の不揮発性半導体記憶装置においては、同一のシードデータが設定される複数の領域の中から、半数の領域をランダムに選択し、この選択された領域に設定されたシードデータを論理反転(“1”を“0”に、“0”を“1”に反転)させる。
これにより、本発明の不揮発性半導体記憶装置では、倍速ランダマイザの使用時に、シードデータのランダム性を確保しつつ、シードデータのローディング時間を短縮することができる。
これにより、本発明の不揮発性半導体記憶装置では、倍速ランダマイザの使用時に、シードデータのランダム性を確保しつつ、シードデータのローディング時間を短縮することができる。
以下、本発明の実施の形態を添付図面を参照して説明する。
[不揮発性半導体記憶装置の構成]
図1は、本発明の実施形態に係わる不揮発性半導体記憶装置の構成を示す図であり、ランダマイザ使用時のデータパスを示す図である。また、図1は、本発明に直接関係する部分のみを示したものである。
この図1に示す不揮発性半導体記憶装置10は、入出力コントロール回路11と、アドレス発生回路12と、ランダマイザ13と、NAND型フラッシュメモリ(本明細書では、単に「フラッシュメモリ」とも呼ぶ)20とを有して構成されている。入出力コントロール回路11は、入出力I/O線(I/O_0〜I/O_15)に接続される入出力信号のバッファ回路である。この入出力コントロール回路11は、外部の回路から入出力I/O線(I/O_0〜I/O_15)を介して2バイトのデータ信号およびアドレス信号を受信し、受信したデータ信号をフラッシュメモリ20内のページバッファ22に出力し、アドレス信号をアドレス発生回路12に出力する。また、入出力コントロール回路11は、メモリセルアレイ21から読み出したデータを入出力I/O線(I/O_0〜I/O_15)を介して、外部に出力する。
図1は、本発明の実施形態に係わる不揮発性半導体記憶装置の構成を示す図であり、ランダマイザ使用時のデータパスを示す図である。また、図1は、本発明に直接関係する部分のみを示したものである。
この図1に示す不揮発性半導体記憶装置10は、入出力コントロール回路11と、アドレス発生回路12と、ランダマイザ13と、NAND型フラッシュメモリ(本明細書では、単に「フラッシュメモリ」とも呼ぶ)20とを有して構成されている。入出力コントロール回路11は、入出力I/O線(I/O_0〜I/O_15)に接続される入出力信号のバッファ回路である。この入出力コントロール回路11は、外部の回路から入出力I/O線(I/O_0〜I/O_15)を介して2バイトのデータ信号およびアドレス信号を受信し、受信したデータ信号をフラッシュメモリ20内のページバッファ22に出力し、アドレス信号をアドレス発生回路12に出力する。また、入出力コントロール回路11は、メモリセルアレイ21から読み出したデータを入出力I/O線(I/O_0〜I/O_15)を介して、外部に出力する。
アドレス発生回路12は、入出力コントロール回路11から入力したアドレス信号を基に、フラッシュメモリ20のブロックアドレスとページアドレスの信号を生成し、この生成したブロックアドレスとページアドレスの信号とをランダマイザ13に出力する。ランダマイザ13は、アドレス発生回路12から入力したブロックアドレスとページアドレスの信号を基に、シードアレイ14からページアドレスに応じたシードデータを選択し、この選択したシードデータをページバッファ22に出力する。ページバッファ22は、ランダマイザ13から入力したシードデータを基に、入出力コントロール回路11から入力した入力データをランダマイズしてメモリセルアレイ21に書き込む。なお、不揮発性半導体記憶装置10は、メモリセルアレイ21からデータを読み出す場合に、メモリセルアレイ21から読み出したデータを、データ書き込みの際に使用したシードデータを用いてデランダマイズすることにより、元のデータに復元する。
上記構成のNAND型フラッシュメモリ20において、メモリセルアレイ21は、図2に示すブロックを複数ブロック備えている。各ブロックは、図2に示すように、N+1本のビット線BL0〜BLN(ビット線BLで総称)と、n+1本のワード線WL0〜WLn(ワード線WLで総称)と、共通ソース線CSLと、各ビット線BLと共通ソース線CSLとの間にそれぞれ接続されたN+1個のメモリストリングST0〜STN(メモリストリングSTで総称)と、を備える。各メモリストリングSTは、互いに直列接続されたn+1個のフローティングゲート構造の電気的書き換え可能な不揮発性のメモリセルMC0〜MCnを備えている。ここで、ドレイン側のメモリセルMCnは選択ゲートトランジスタSS1を介して対応するビット線BLに接続されている。一方、ソース側のメモリセルMC0は選択ゲートトランジスタGS1を介して共通ソース線CSLに接続されている。また、同一行のメモリセルの制御ゲートは、共通のワード線WLに接続されている。
図2に示すブロックにおいて、メモリセルの消去は、例えば、半導体基板に高電圧を印加し、ワード線WL0〜WLnに0Vを印加することにより行われる。これにより、例えばポリシリコンなどからなる電荷蓄積層であるフローティングゲートより電子を引き抜いて、メモリセルMCの閾値電圧を消去閾値電圧VtL(例えば、−1V)に設定する。一方、書き込み(プログラム)においては、例えば、ソース及びドレインに0Vを与え、制御ゲート(選択したワード線WL)に高電圧を印加することにより、フローティングゲートに電子を注入し、閾値電圧を上昇させて書込閾値電圧VtHに設定する。そして、メモリセルMC0〜MCnの閾値電圧が閾値電圧VtLの場合、当該メモリセルのデータ値を“1”とし、閾値電圧が閾値電圧VtHの場合、当該メモリセルのデータ値を“0”とする。
また、メモリセルからデータを読み出すときには、全てのビット線BLを所定の電圧でプリチャージした後に、閾値VtLとVtH間の読み出し電圧を、読み出し対象のメモリセルMCに共通に接続されたワード線WLを介して、選択メモリセルの各制御ゲートに印加する。また、高電圧を、上記選択メモリセル以外のメモリセルMCおよび選択トランジスタSS1,GS1の各制御ゲートに印加して、上記選択メモリセル以外のメモリセルMCならびに選択ゲートトランジスタSS1,GS1を導通させる。従って、選択メモリセルのデータ値が“1”のときには、当該選択メモリセルにセル電流が流れる一方、選択メモリセルのデータ値が“0”のときには、当該選択メモリセルにセル電流が流れないので、セル電流が流れるか否かに基づいて、各選択メモリセルに書き込まれているデータを読み出すことができる。
上記構成の不揮発性半導体記憶装置10において、メモリセルアレイ21へのデータの書き込みは、以下に示す第1の手順から第3の手順で行われる。
第1の手順として、不揮発性半導体記憶装置10は、入出力コントロール回路11により、データをページバッファ22にセットする。
第2の手順として、不揮発性半導体記憶装置10は、データを書き込むメモリセルのブロックアドレス及びページアドレスを基にランダマイザ13おいてシードアレイ14からシードデータを選択する。そして、不揮発性半導体記憶装置10は、この選択したシードデータをページバッファ22にセットする。そして、第3の手順として、不揮発性半導体記憶装置10は、シードデータにより書き込みデータをランダマイズし、このランダマイザされたデータをメモリセルアレイ21に書き込む。
第1の手順として、不揮発性半導体記憶装置10は、入出力コントロール回路11により、データをページバッファ22にセットする。
第2の手順として、不揮発性半導体記憶装置10は、データを書き込むメモリセルのブロックアドレス及びページアドレスを基にランダマイザ13おいてシードアレイ14からシードデータを選択する。そして、不揮発性半導体記憶装置10は、この選択したシードデータをページバッファ22にセットする。そして、第3の手順として、不揮発性半導体記憶装置10は、シードデータにより書き込みデータをランダマイズし、このランダマイザされたデータをメモリセルアレイ21に書き込む。
また、メモリセルアレイ21からのデータの読み出しは、以下に示す第1の手順から第3の手順で行われる。
第1の手順として、不揮発性半導体記憶装置10は、メモリセルアレイ21からページバッファ22に読み出しデータをロードする。
第2の手順として、不揮発性半導体記憶装置10は、当該読み出したデータのブロックアドレスとページアドレスとを基にランダマイザ13内のシードアレイ14から、シードデータ(データ書き込み時に使用したシードデータ)を選択する。
第3の手順として、不揮発性半導体記憶装置10は、シードアレイ14から選択したシードデータをページバッファ22にセットする。そして、不揮発性半導体記憶装置10は、メモリセルアレイ21から読み出したデータを、シードデータを用いてデランダマイズすることにより、元のデータに復元する。
第1の手順として、不揮発性半導体記憶装置10は、メモリセルアレイ21からページバッファ22に読み出しデータをロードする。
第2の手順として、不揮発性半導体記憶装置10は、当該読み出したデータのブロックアドレスとページアドレスとを基にランダマイザ13内のシードアレイ14から、シードデータ(データ書き込み時に使用したシードデータ)を選択する。
第3の手順として、不揮発性半導体記憶装置10は、シードアレイ14から選択したシードデータをページバッファ22にセットする。そして、不揮発性半導体記憶装置10は、メモリセルアレイ21から読み出したデータを、シードデータを用いてデランダマイズすることにより、元のデータに復元する。
図3は、本実施形態の不揮発性半導体記憶装置10におけるシードデータの設定例を示す図であり、4Kのフラッシュメモリのページバッファにおけるシードデータの設定例を示す図である。この図3において、図3(A)に示す表は、先に説明した図7に示す表と同じある。この図3(A)に示す表では、最上段の横方向にカラムアドレス(0〜FFF)を128個ごとのアドレス(1つのシードデータが設定される単位となるアドレス)で区分けした32個の領域を示している。また、この表は、左端に、倍速ランダマイザの速度(1倍速(×1)、4倍速(×4)、8倍速(×8)、16倍速(×16)、32倍速(×32))をパラメータとして縦方向に並べて示している。そして、この表中には、カラムアドレスと倍速の速度とに応じて選択されるそれぞれのシードデータ(乱数のパターン)の種類(符号AからFFで一意に識別されるシードデータ)が示されている。
また、ページアドレスは、図3(B)に示すように、Yp[7:0]アドレスとYq[3:0]アドレスにより、32個の領域(128個のカラムアドレスが含まれる領域)に区分される。この図3(B)に示す例では、Yqアドレス(Yq<0>〜Yp<3>)により、4Kメモリのカラムアドレス(000〜FFF)が4区分され、さらに、この4区分されたカラムアドレスのそれぞれが、Ypアドレス(Yp<0>〜)Yp<7>)により、8区分される。これにより、ページアドレスが、32個の領域に区分されるととともに、この32個の各領域が、YqアドレスとYpアドレスにより指定される。
例えば、図4に示すように、ページバッファ22は、IOバッファ(IO0〜IO15)により16分割される。そして、1つのIOバッファ(例えば、IO0)のページアドレスを4区分してYqアドレスが生成される。さらに、このYqアドレスを8区分してYpアドレスが生成される。シードデータは、このYpアドレスで指定される個々の領域に対応して設定されるものである。
例えば、図4に示すように、ページバッファ22は、IOバッファ(IO0〜IO15)により16分割される。そして、1つのIOバッファ(例えば、IO0)のページアドレスを4区分してYqアドレスが生成される。さらに、このYqアドレスを8区分してYpアドレスが生成される。シードデータは、このYpアドレスで指定される個々の領域に対応して設定されるものである。
そして、図3(A)の表に示すように、最上段のカラムアドレス0はカラムアドレス00〜7Fの範囲の領域を示しており、このカラムアドレス0は、Yqアドレス(Yq<0>)とYpアドレス(Yp<0>)とで指定される領域である。このYp<0>の領域において、1倍速(×1)である通常の場合(倍速化しない場合)は、シードデータAが、書き込みデータのランダム化のために使用される。
また、カラムアドレス80(カラムアドレス80〜FF)は、Yqアドレス(Yq<0>)とYpアドレス(Yp<1>)とで指定される領域である。このカラムアドレス80の領域において、1倍速(×1)である通常の場合(倍速化しない場合)は、シードデータBが、書き込みデータのランダム化のために使用される。以下、同様にして、Ypアドレス単位で、シードデータCからFFまでの異なる値のシードデータが順番に使用される。
また、カラムアドレス80(カラムアドレス80〜FF)は、Yqアドレス(Yq<0>)とYpアドレス(Yp<1>)とで指定される領域である。このカラムアドレス80の領域において、1倍速(×1)である通常の場合(倍速化しない場合)は、シードデータBが、書き込みデータのランダム化のために使用される。以下、同様にして、Ypアドレス単位で、シードデータCからFFまでの異なる値のシードデータが順番に使用される。
一方、4倍速(×4)の場合は、使用されるシードデータの種類が1/4となり、シードデータAからHまでの8種類(32/4)のシードデータが順番に4回繰り返して使用される。同様にして、8倍速(×8)の場合は、使用されるシードデータの種類が1/8となり、シードデータAからDまでの4種類(32/8)のシードデータが順番に8回繰り返して使用される。また、16倍速(×16)の場合は、使用されるシードデータの種類が1/16となり、シードデータAおよびBの2種類(32/16)のシードデータが順番に16回繰り返して使用され、32倍速(×32)の場合は、使用されるシードデータの種類が1/32となり、シードデータAのみが使用される。
このように、シードデータを倍速化することにより、使用されるシードデータの種類が少なくなり、シードデータのローディング時間を短縮できるが、一方で、シードデータが重複して使用されるため、シードデータのランダム性が低減されることになる。
このように、シードデータを倍速化することにより、使用されるシードデータの種類が少なくなり、シードデータのローディング時間を短縮できるが、一方で、シードデータが重複して使用されるため、シードデータのランダム性が低減されることになる。
このため、本実施形態の不揮発性半導体記憶装置10では、後述する方法により、シードデータを論理反転(“1”を“0”に、“0”を“1”に反転)させた新たなシードデータ(論理反転シードデータ)を生成して、シードデータの種類を増加させる。例えば、図3(C)は、シードデータの論理反転の例を示す図である。なお、この図3(C)において、シードデータAに対して、このシードデータAを論理反転させたシードデータをシードデータiAで示し、シードデータBに対して、このシードデータを論理反転させたシードデータをシードデータiBで示している。
この図3(C)に示すように、16倍速(×16)の場合は、元のシードデータA,Bから、新たなシードデータ(論理反転を反転させたシードデータ)iA,iBを生成して、シードデータの種類を2倍に増やす。また、32倍速(×32)の場合は、元のシードデータAから、新たなシードデータ(論理反転を反転させたシードデータ)iAを生成して、シードデータの種類を2倍に増やす。
このシードデータの反転操作は、図3(B)に示すYpアドレス(0〜7)を単位(Ypアドレスで指定される8個の領域を単位)にして行われる。そして、図3(B)に示すYpアドレス(0〜7)に対応するシードデータ中のどのシードデータを反転させるかは以下に示すように行なう。例えば、8個のYpアドレスの中から4個のYpアドレスをランダムに選択し、この選択したYpアドレスに対応するシードデータを反転させる。このYpアドレスをランダムに選択するために、後述するイネーブル信号生成回路31(図5を参照)が設けられる。
このイネーブル信号生成回路31により、4個のYpアドレスがランダムに選択される。このイネーブル信号生成回路31は、例えば、16倍速の場合に、図3(C)に示すように、Ypアドレスが“0”、“3”、“5”、“6”に対応する領域をシードデータを論理反転させる領域として選択し、Ypアドレスが“1”、“2”、“4”、“7”に対応する領域をシードデータを反転させない領域として選択する。これにより、Ypアドレスが“0”、“3”、“5”、“6”に対応する領域のシードデータは論理反転し、Ypアドレスが“1”、“2”、“4”、“7”に対応する領域をシードデータは論理反転しない。
図5は、ページバッファデコーダ23の構成を示す図である。この図5に示すように、ページバッファデコーダ23内には、各Ypアドレスのそれぞれに対応してデコーダ(DEC_Yp0〜DEC_Ypn)が設けられている。また、デコーダ(DEC_Yp0〜DEC_Ypn)それぞれには、論理反転回路41_0〜41_n(論理反転回路41で総称)が設けられている。そして、イネーブル信号生成回路31から出力されるイネーブル信号がそれぞれに対応するデコーダ(DEC_Yp0〜DEC_Ypn)に出力される。例えば、イネーブル信号生成回路31は、イネーブル信号Yp0_RE、イネーブル信号Yp1_RE、イネーブル信号Yp2_RE、・・・、イネーブル信号Ypn_REを出力する。そして、イネーブル信号Yp0_REは、デコーダDEC_Yp0に入力される。また、イネーブル信号Yp1_REは、デコーダDEC_Yp1に入力される。また、イネーブル信号Yp2_REは、デコーダDEC_Yp2に入力される。また、イネーブル信号Ypn_REは、デコーダDEC_Ypnに入力される。
上記構成において、イネーブル信号生成回路31は、イネーブル信号Yp0_RE〜Ypn_REのうち半数のイネーブル信号を“H(論理1)”として、半数のイネーブル信号を“L(論理0)”とするようにランダムに設定する。そして、論理反転回路41は、例えば、イネーブル信号が“H”の場合にシードデータを論理反転し、“L”の場合に論理反転しないようにする。これにより、ページバッファデコーダ23は、Ypアドレス0〜Ypnに対応する領域の半数をランダムに選択して、シードデータを反転させることができる。
また、図6は、上述したイネーブル信号生成回路と論理反転回路の構成例を示す図である。このイネーブル信号生成回路31は、各Ypアドレス0〜nに対応する領域のシードデータを反転させるか否かを判定するためのイネーブル信号を生成する回路である。このイネーブル信号生成回路31は、内部に線形シフトレジスタ(LSFR)32を有して構成されている。この線形シフトレジスタ32は、各Ypアドレス0〜nごとにシードデータを反転するかどうかを判定するイネーブル信号Yp0_RE〜Ypn_REを生成する。なお、イネーブル信号Yp0_REは、アドレスYp0に対応するイネーブル信号であり、イネーブル信号Ypn_REは、アドレスYpnに対応するイネーブル信号である。
このイネーブル信号生成回路31は、ブロックアドレス(例えば、ブロックアドレスの下位数ビット)とページアドレスとの組み合わせを基にしてイネーブル信号号Yp0_RE〜Ypn_REを生成する。なお、イネーブル信号号Yp0_RE〜Ypn_REを、ブロックアドレスとページアドレスの組み合わせを基にして生成する理由は、ページアドレスのみを用いると、各ブロックの間において同じYqアドレスとYpアドレスの領域に対して同じシードデータが繰り返し配置され、シードデータのランダム性が低下するためである。そのため、例えば、ブロックアドレスの下位数ビット(例えば、下位2ビット)とページアドレスとを組み合わせてイネーブル信号Yp0_RE〜Ypn_REを生成する。なお、イネーブル信号生成回路31は、メモリセルアレイ21のメモリ容量に応じて、ページアドレスのみに基づいてイネーブル信号号Yp0_RE〜Ypn_REを生成することもできる。
また、イネーブル信号生成回路31は、イネーブル信号号Yp0_RE〜Ypn_REが“H”になる信号の個数と、イネーブル信号がイネーブル信号が“L”になる個数とが、それぞれn/2個となるようにランダムにイネーブル信号を生成する。すなわち、イネーブル信号生成回路31は、イネーブル信号Yp0_RE(アドレスYp0に対応するイネーブル信号)からイネーブル信号Ypn_RE(アドレスYpnに対応するイネーブル信号)までのイネーブル信号のうち半数が“H”となり、半数が“L”となるようにイネーブル信号を生成する。
なお、上述したようにイネーブル信号が“H(論理1)”の場合は、このイネーブル信号によりシードデータの論理を反転させることを意味し、イネーブル信号が“L(論理0)”の場合は、このイネーブル信号によりシードデータの論理を反転させないことを意味している。
なお、上述したようにイネーブル信号が“H(論理1)”の場合は、このイネーブル信号によりシードデータの論理を反転させることを意味し、イネーブル信号が“L(論理0)”の場合は、このイネーブル信号によりシードデータの論理を反転させないことを意味している。
また、論理反転回路41は、イクスクルーシブオア回路42とイクスクルーシブオア回路43とで構成される。なお、論理反転回路41において、イクスクルーシブオア回路42とイクスクルーシブオア回路43とを単体の素子で示しているが、実際には、シードデータと入力データのビット長に応じた個数の回路で構成されるものである。
そして、イクスクルーシブオア回路42には、イネーブル信号生成回路31から出力されるイネーブル信号REと、シードデータ(例えば、シードデータA)とが入力され、イクスクルーシブオア回路42は、この2つの入力信号の排他的論理和の演算を行い、その演算結果を出力する。例えば、イクスクルーシブオア回路42は、イネーブル信号REが“L”の場合、シードデータAをそのまま出力する。一方、イクスクルーシブオア回路42は、イネーブル信号REが“H”の場合、シードデータAを反転したシードデータiAを出力する。
そして、イクスクルーシブオア回路42から出力される信号は、イクスクルーシブオア回路43の一方の入力端子に入力され、イクスクルーシブオア回路43の他方の入力端子には、メモリセルアレイ21への書き込みデータDIが入力される。イクスクルーシブオア回路43では、シードデータAまたは論理反転されたシードデータiAを用いて、入力データDIをランダマイズ(入力データとシードデータとの排他的論理和演算)して、書き込みデータiDIとして出力する。このイクスクルーシブオア回路43から出力されるランダマイズされたデータiDIが、メモリセルアレイ21に書き込まれる。
なお、本実施形態の不揮発性半導体記憶装置10では、メモリセルアレイ21へデータを書き込む際に、一旦、入力データDIをそのままメモリセルアレイ21に書き込み、その後、メモリセルアレイ21からデータDIを読み出し、論理反転回路41により、入力データをシードデータ(AまたはiA)によりランダマイズし、このランダマイズしたデータiDIを、再びメモリセルアレイ21に書き込むようにしている。但し、不揮発性半導体記憶装置10は、入力データDIを一旦、メモリセルアレイ21に書き込むことなく、シードデータでランダマイズした後に、メモリセルアレイ21に書き込むようにしてもよい。
このように、論理反転回路41において、イクスクルーシブオア回路42は、イネーブル信号REが“L”の場合に、シードデータAの論理を反転させることなく、そのままイクスクルーシブオア回路43に出力し、イクスクルーシブオア回路43は、シードデータAにより入力データDIをランダマイズしてメモリセルアレイ21に書き込む。また、イクスクルーシブオア回路42は、イネーブル信号REが“H”の場合に、シードデータAの論理を反転させ、論理反転されたシードデータiAをイクスクルーシブオア回路43に出力し、イクスクルーシブオア回路43は、論理反転されたシードデータiAにより入力データDIをランダマイズしてメモリセルアレイ21に書き込む。
以上説明したように、本実施形態の不揮発性半導体記憶装置10は、倍速ランダマイザ使用時に、イネーブル信号生成回路31により、ページアドレス(或いはブロックアドレスとページアドレス)に応じてシードデータを反転するかどうかを判定するイネーブル信号を生成する。また、ページバッファデコーダ23内に論理反転回路41を設け、この論理反転回路41が、イネーブル信号を基にシードデータを論理反転することでシードデータのランダム性を高めている。これにより、不揮発性半導体記憶装置10は、倍速ランダマイザを用いた時に、シードデータのローディング時間は従来のままで、シードデータのランダム性を2倍にすることができる。逆に、シードデータのランダム性を従来のままとすると、シードデータのローディング時間を大幅に短縮することができる。
以上本発明の実施形態について説明したが、ここで、本発明と上記実施形態の対応関係について補足して説明する。上記実施形態において、本発明における不揮発性半導体記憶装置は、不揮発性半導体記憶装置10が対応し、本発明におけるフラッシュメモリは、NAND型フラッシュメモリ20(単に「フラッシュメモリ」とも呼ぶ)が対応する。また、本発明におけるイネーブル信号生成回路は、イネーブル信号生成回路31が対応し、本発明における論理反転回路は、論理反転回路41が対応する。また、本発明における第1領域は、図3に示す、128個のカラムアドレスの単位(1つのシードデータが設定される単位)で区分される32個の各領域が対応する。また、本発明における第1アドレスは、図3(B)に示すYqアドレスが対応し、本発明における第2アドレスは、Ypアドレスが対応する。また、本発明における第2領域は、図3に示すYqアドレス(0〜3)で区分される4つのそれぞれの領域、すなわち、8個の第1領域(Ypアドレス0〜7で指定される8個の領域)を含む領域が対応する。
(1)そして、上記実施形態において、不揮発性半導体記憶装置10は、ページアドレスをシードデータが設定される単位で複数の領域に区分するとともに前記複数の領域のそれぞれにシードデータを設定する際に、前記複数の領域の中に同一のシードデータが設定されるものがある場合は、当該同一のシードデータが設定される複数の領域の中から、半数の領域をランダムに選択し、この選択した領域に使用されるシードデータを論理反転させる。
このような構成の不揮発性半導体記憶装置10では、複数の領域(例えば、図3に示す128個のカラムアドレスを含む32個の領域)の中に同一のシードデータが設定されるものがある。この場合は、この同一のシードデータが設定される複数の領域の中から、半数の領域をランダムに選択し、この選択された領域に設定されたシードデータを論理反転させる。
これにより、本実施形態の不揮発性半導体記憶装置10では、倍速ランダマイザの使用時に、シードデータのランダム性を確保しつつ、シードデータのローディング時間を短縮することができる。
このような構成の不揮発性半導体記憶装置10では、複数の領域(例えば、図3に示す128個のカラムアドレスを含む32個の領域)の中に同一のシードデータが設定されるものがある。この場合は、この同一のシードデータが設定される複数の領域の中から、半数の領域をランダムに選択し、この選択された領域に設定されたシードデータを論理反転させる。
これにより、本実施形態の不揮発性半導体記憶装置10では、倍速ランダマイザの使用時に、シードデータのランダム性を確保しつつ、シードデータのローディング時間を短縮することができる。
(2)また、上記実施形態において、不揮発性半導体記憶装置10は、フラッシュメモリのページアドレスをシードデータが設定される単位でm個(mは任意の2の累乗数)の第1領域に区分し、このm個の第1領域のそれぞれにシードデータを設定する際に、第1領域の総数m個の1/Nの個数(=m/N個:Nはm以下の任意の2の累乗数)の相異なるシードデータを用い、前記m個の第1領域のそれぞれに対して前記m/N個のシードデータのそれぞれを、N回順に繰り返して設定するN倍速ランダマイザ機能と、前記m個の第1領域をp個(pはm以下の任意の2の累乗数)単位で第2領域に区分けし、この第2領域において、p個の領域の中から半分の個数の領域をランダムに選択し、この選択された領域に設定されたシードデータを論理反転させるシードデータ反転機能と、を備える。
このような構成の不揮発性半導体記憶装置10は、例えば、図3(A)に示すように、ページアドレス(0〜FFF)を128個のカラムアドレス単位で32個の第1領域に区分する。そして、16倍速(×16)のランダマイザを使用する場合は、2個(=32/16個)のシードデータA,Bを用い、32個の第1領域のそれぞれに対して2個のシードデータA,Bのそれぞれを、16回順に繰り返して設定する。そして、そして、図3(C)に示すように、32個の第1領域を8個ごとの第2領域(Ypアドレス0〜7で指定される8個の第1領域を含む第2領域)に区分けし、この第2領域に含まれる8個の第1領域の中から半数の領域をランダムに選択し、この選択された4個の第1領域に設定されたシードデータを論理反転させる。
これにより、不揮発性半導体記憶装置10は、倍速ランダマイザの使用時に、シードデータのランダム性を確保しつつ、シードデータのローディング時間を短縮することができる。
これにより、不揮発性半導体記憶装置10は、倍速ランダマイザの使用時に、シードデータのランダム性を確保しつつ、シードデータのローディング時間を短縮することができる。
(3)また、上記実施形態において、不揮発性半導体記憶装置10は、m個の第1領域を第1アドレスによりp個ごとの第2領域に区分し、第2領域に含まれるp個の第1領域をさらに第2アドレスにより個々に指定する。
このような構成の不揮発性半導体記憶装置10では、例えば、図3(B)に示すように、32個の第1領域を第1アドレス(Yqアドレス)により4個の第2領域に区分し、この第2領域に含まれる8個の第1領域のそれぞれを第2アドレス(Ypアドレス)により指定する。そして、Ypアドレス(0〜7)で指定される8個の第1領域のそれぞれに設定されるシードデータの半数をランダムに選択して論理反転させる。
これにより、不揮発性半導体記憶装置10は、Yqアドレスにより、論理反転されるシードデータをランダムに選択することができる。また、Ypアドレスにより個々の領域を指定して、この領域に含まれるシードデータを論理反転することができる。
このような構成の不揮発性半導体記憶装置10では、例えば、図3(B)に示すように、32個の第1領域を第1アドレス(Yqアドレス)により4個の第2領域に区分し、この第2領域に含まれる8個の第1領域のそれぞれを第2アドレス(Ypアドレス)により指定する。そして、Ypアドレス(0〜7)で指定される8個の第1領域のそれぞれに設定されるシードデータの半数をランダムに選択して論理反転させる。
これにより、不揮発性半導体記憶装置10は、Yqアドレスにより、論理反転されるシードデータをランダムに選択することができる。また、Ypアドレスにより個々の領域を指定して、この領域に含まれるシードデータを論理反転することができる。
(4)また、上記実施形態において、不揮発性半導体記憶装置10は、第2領域に含まれるp個の第1領域の中から、半分の個数の領域をランダムに選択し、この選択された領域に設定されたシードデータを論理反転させるための信号であるイネーブル信号を生成するイネーブル信号生成回路31と、イネーブル信号とシードデータとを入力し、イネーブル信号を基にしてシードデータを論理反転させる論理反転回路と、を備える。
このような構成の不揮発性半導体記憶装置10では、イネーブル信号生成回路31により、第2領域に含まれるp個の第1領域の中から、半分の個数の領域をランダムに選択し、シードデータを論理反転させるためのイネーブル信号を生成する。論理反転回路41は、イネーブル信号とシードデータとを入力し、このイネーブル信号を基にしてシードデータを論理反転させる。
これにより、不揮発性半導体記憶装置10は、イネーブル信号生成回路31と論理反転回路41とを用いて、第2領域に含まれるp個の第1領域の中から、半分の個数の領域をランダムに選択し、シードデータを論理反転させることができる。
(5)また、上記実施形態において、イネーブル信号生成回路31は、イネーブル信号を、フラッシュメモリ20にアクセスする際の単位となるブロックアドレスとページアドレスのいずれかまたは両方のアドレスを基に生成する。
これにより、第2アドレス(Ypアドレス)で指定される領域のうちのどの領域のシードデータを反転するかを、ページアドレス及びブロックアドレスを基に決定することができる。これにより、シードデータの配置パターンがブロックごとに繰り返されることを回避することができる。
このような構成の不揮発性半導体記憶装置10では、イネーブル信号生成回路31により、第2領域に含まれるp個の第1領域の中から、半分の個数の領域をランダムに選択し、シードデータを論理反転させるためのイネーブル信号を生成する。論理反転回路41は、イネーブル信号とシードデータとを入力し、このイネーブル信号を基にしてシードデータを論理反転させる。
これにより、不揮発性半導体記憶装置10は、イネーブル信号生成回路31と論理反転回路41とを用いて、第2領域に含まれるp個の第1領域の中から、半分の個数の領域をランダムに選択し、シードデータを論理反転させることができる。
(5)また、上記実施形態において、イネーブル信号生成回路31は、イネーブル信号を、フラッシュメモリ20にアクセスする際の単位となるブロックアドレスとページアドレスのいずれかまたは両方のアドレスを基に生成する。
これにより、第2アドレス(Ypアドレス)で指定される領域のうちのどの領域のシードデータを反転するかを、ページアドレス及びブロックアドレスを基に決定することができる。これにより、シードデータの配置パターンがブロックごとに繰り返されることを回避することができる。
以上、本発明の実施の形態について説明したが、本発明の不揮発性半導体記憶装置は、上述の図示例にのみ限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加え得ることは勿論である。
例えば、上述した実施形態では、フラッシュメモリがNAND型フラッシュメモリの例を示したが、フラッシュメモリは、NOR型のフラッシュメモリであってもよい。
また、本発明は、上述した不揮発性半導体記憶装置に限らず、倍速ランダマイザを使用する種々のシステムに効果的に適用できるものである。
また、本発明は、上述した不揮発性半導体記憶装置に限らず、倍速ランダマイザを使用する種々のシステムに効果的に適用できるものである。
10…不揮発性半導体記憶装置、11…入出力コントロール回路、12…アドレス発生回路、13…ランダマイザ、14…シードアレイ、20…フラッシュメモリ、21…メモリセルアレイ、22…ページバッファ、23…ページバッファデコーダ、31…イネーブル信号生成回路、32…線形シフトレジスタ、41…論理反転回路、42,43…イクスクルーシブオア回路
Claims (6)
- ページアドレスをシードデータが設定される単位で複数の領域に区分するとともに前記複数の領域のそれぞれにシードデータを設定する際に、前記複数の領域の中に同一のシードデータが設定されるものがある場合は、当該同一のシードデータが設定される複数の領域の中から、半数の領域をランダムに選択し、この選択した領域に使用されるシードデータを論理反転させることを特徴とする不揮発性半導体記憶装置。
- フラッシュメモリのページアドレスをシードデータが設定される単位でm個(mは任意の2の累乗数)の第1領域に区分し、このm個の第1領域のそれぞれにシードデータを設定する際に、第1領域の総数m個の1/Nの個数(=m/N個:Nはm以下の任意の2の累乗数)の相異なるシードデータを用い、前記m個の第1領域のそれぞれに対して前記m/N個のシードデータのそれぞれを、N回順に繰り返して設定するN倍速ランダマイザ機能と、
前記m個の第1領域をp個(pはm以下の任意の2の累乗数)単位で第2領域に区分けし、この第2領域において、p個の領域の中から半分の個数の領域をランダムに選択し、この選択された領域に設定されたシードデータを論理反転させるシードデータ反転機能と、
を備えることを特徴とする請求項1に記載の不揮発性半導体記憶装置。 - 前記m個の第1領域を第1アドレスにより前記p個ごとの第2領域に区分し、前記第2領域に含まれるp個の第1領域をさらに第2アドレスにより個々に指定する
ことを特徴とする請求項2に記載の不揮発性半導体記憶装置。 - 前記第2領域に含まれるp個の第1領域の中から、半分の個数の領域をランダムに選択し、この選択された領域に設定されたシードデータを論理反転させるための信号であるイネーブル信号を生成するイネーブル信号生成回路と、
前記イネーブル信号と前記シードデータとを入力し、前記イネーブル信号を基にしてシードデータを論理反転させる論理反転回路と、
を備えることを特徴とする請求項2または請求項3に記載の不揮発性半導体記憶装置。 - 前記イネーブル信号生成回路は、
前記イネーブル信号を、フラッシュメモリにアクセスする際の単位となるブロックアドレスとページアドレスのいずれかまたは両方のアドレスを基に生成する
ことを特徴とする請求項4に記載の不揮発性半導体記憶装置。 - ページアドレスをシードデータが設定される単位で複数の領域に区分するとともに前記複数の領域のそれぞれにシードデータを設定する際に、前記複数の領域の中に同一のシードデータが設定されるものがある場合は、当該同一のシードデータが設定される複数の領域の中から、半数の領域をランダムに選択し、この選択した領域に使用されるシードデータを論理反転させることを特徴とする不揮発性半導体記憶装置におけるシードデータの設定方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011274482A JP2013125452A (ja) | 2011-12-15 | 2011-12-15 | 不揮発性半導体記憶装置、および不揮発性半導体記憶装置におけるシードデータの設定方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011274482A JP2013125452A (ja) | 2011-12-15 | 2011-12-15 | 不揮発性半導体記憶装置、および不揮発性半導体記憶装置におけるシードデータの設定方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2013125452A true JP2013125452A (ja) | 2013-06-24 |
Family
ID=48776640
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011274482A Pending JP2013125452A (ja) | 2011-12-15 | 2011-12-15 | 不揮発性半導体記憶装置、および不揮発性半導体記憶装置におけるシードデータの設定方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2013125452A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017142871A (ja) * | 2016-02-09 | 2017-08-17 | ウィンボンド エレクトロニクス コーポレーション | 半導体記憶装置 |
-
2011
- 2011-12-15 JP JP2011274482A patent/JP2013125452A/ja active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017142871A (ja) * | 2016-02-09 | 2017-08-17 | ウィンボンド エレクトロニクス コーポレーション | 半導体記憶装置 |
KR101790632B1 (ko) | 2016-02-09 | 2017-10-26 | 윈본드 일렉트로닉스 코포레이션 | 반도체 메모리 장치 및 그 스크램블 방법 |
TWI624840B (zh) * | 2016-02-09 | 2018-05-21 | 華邦電子股份有限公司 | 半導體儲存裝置及其加擾方法 |
US9996295B2 (en) | 2016-02-09 | 2018-06-12 | Winbond Electronics Corp. | Semiconductor memory device having buffer/sensing circuit and scrambling/descrambling method thereof |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5019611B2 (ja) | メモリシステム | |
KR101121346B1 (ko) | 반도체 메모리에 대한 데이터 기록 방법 및 메모리 컨트롤러 | |
US9343163B2 (en) | Semiconductor memory device and operating method based upon a comparison of program data and read data thereof | |
US9685206B2 (en) | Memory device, memory system, and method of controlling read voltage of the memory device | |
US8230158B2 (en) | Memory devices and methods of storing data on a memory device | |
KR101434399B1 (ko) | 공통 소스 라인의 노이즈를 줄이는 플래시 메모리 장치,그것의 프로그램 검증 방법, 그리고 그것을 포함하는메모리 시스템 | |
JP5196965B2 (ja) | 不揮発性半導体記憶装置 | |
JP2008047273A (ja) | 半導体記憶装置およびその制御方法 | |
JP2010170685A (ja) | 不揮発性メモリ装置、そのプログラム方法及び読出し方法 | |
US9514829B2 (en) | Access line management in a memory device | |
US9489143B2 (en) | Method for accessing flash memory and associated controller and memory device | |
JP2013254542A (ja) | 半導体メモリ | |
JP2013125576A (ja) | 不揮発性半導体記憶装置 | |
JP2004014043A (ja) | 不揮発性半導体メモリ | |
JP2014157650A (ja) | 半導体記憶装置 | |
TWI512735B (zh) | 記憶體裝置及記憶體裝置之操作方法 | |
WO2015061762A1 (en) | Programming scheme for improved voltage distribution in solid-state memory | |
JP6102146B2 (ja) | 半導体記憶装置 | |
KR20120005826A (ko) | 반도체 메모리 장치 및 이의 동작 방법 | |
JP5940704B1 (ja) | 半導体記憶装置 | |
TWI740780B (zh) | 半導體儲存裝置以及讀出方法 | |
JP2010218623A (ja) | 不揮発性半導体記憶装置 | |
JP2013125452A (ja) | 不揮発性半導体記憶装置、および不揮発性半導体記憶装置におけるシードデータの設定方法 | |
JP2014021529A (ja) | 乱数発生回路、及び不揮性半導体装置 | |
JP2014021530A (ja) | 乱数発生回路、及び不揮性半導体装置 |