以下、図面を用いて実施形態を説明する。信号が伝達される信号線には、信号名と同じ符号を使用する。
図1は、半導体メモリの一実施形態を示す。この実施形態の半導体メモリMEM1は、例えば、フラッシュメモリ等の不揮発性メモリであり、不揮発性のメモリセルMC、保持部HLD、第1制御部CNT1および第2制御部CNT2を有する。例えば、メモリセルMCは、コントロールゲートCGおよびフローティングゲートFGを含むセルトランジスタを有する。なお、半導体メモリMEM1は、消去コマンドに応答してデータが消去される複数のメモリセルMCを有してもよい。保持部HLDは、消去動作時にメモリセルMCに印加される印加電圧AVの回数を保持する。消去動作により、メモリセルMCに保持されたデータは消去される。
第1制御部CNT1は、消去動作において、保持部HLDに保持された回数が予め設定された回数である値NUM1より少ない場合、印加電圧AVを初期電圧(図2に示すAV1)から順次に大きくしてメモリセルに繰り返し印加する。印加電圧AVの増分は、一定でもよく、変化させてもよい。例えば、印加電圧AVは、コントロールゲートCGとメモリセルMCの基板(セルトランジスタのウェル領域)に掛かる電圧である。例えば、第1制御部CNT1は、消去動作時に、正電圧をメモリセルMCの基板に印加し、順次に低くなる負電圧をコントロールゲートCGに印加することで、印加電圧AVを初期電圧AV1から順次に大きくする。
また、第1制御部CNT1は、保持部HLDに保持された回数が、値NUM1以上の場合、初期電圧AV1より大きい印加電圧(図2に示すAV2)をメモリセルMCに繰り返し印加する。印加電圧AVは大きいほどメモリセルMCの消去効率を向上することができ、メモリセルMCに保持されたデータを消去するまでにメモリセルMCに印加される印加電圧AVの回数を、印加電圧AVが小さいときに比べて減らすことができる。
第1制御部CNT1は、消去動作時にメモリセルに印加される印加電圧の回数が値NUM1以上の場合、メモリセルMCの劣化により消去動作の時間が劣化前に比べて長くなったと判断する。第1制御部CNT1は、メモリセルMCの劣化を判断した場合、メモリセルMCへの印加電圧AVを初期電圧AV1より大きくする。これにより、メモリセルMCのデータの消去効率を劣化前より向上することができ、印加電圧AVの回数が減ることにより、劣化により長くなった消去動作の時間を短縮することができる。
第2制御部CNT2は、消去動作において第1制御部CNT1がメモリセルMCに印加した印加電圧AVの回数が、保持部HLDに保持された回数を超える場合に、メモリセルMCに印加した印加電圧AVの回数を保持部HLDに書き込む。
第2制御部CNT2の動作により、保持部HLDは、保持部HLDに保持した回数より少ない回数に書き換えられることはない。換言すれば、初期電圧AV1より大きい印加電圧AV2をメモリセルMCに印加することにより少なくなった印加電圧AVの回数は、保持部HLDに書き込まれない。したがって、メモリセルMCの劣化による印加電圧AVの増大により、消去動作の印加電圧AVの回数が減った場合にも、次の消去動作において、印加電圧AVの回数が減ったことに基づいて、印加電圧AVが初期電圧AV1に設定されることはない。この結果、消去動作においてメモリセルMCに印加される印加電圧AVがメモリセルMCの劣化の判定後に変更される場合にも、印加電圧AVが初期電圧AV1に戻ることを抑止することができ、消去動作に掛かる時間が長くなることを抑止することができる。
図2は、図1に示した半導体メモリMEMにおける消去動作の例を示す。すなわち、図2は、半導体メモリの動作方法の一実施形態を示す。例えば、図2に示すフローは、半導体メモリMEM1が消去コマンドを受ける毎に、第1制御部CNT1および第2制御部CNT2により実行される。
まず、ステップS10において、第1制御部CNT1は、保持部HLDに保持された回数が予め設定された回数である値NUM1以上であるか否かを判定する。第1制御部CNT1は、保持部HLDに保持された回数が値NUM1以上である場合、メモリセルMCが劣化したと判断し、処理をステップS18に移行する。第1制御部CNT1は、保持部HLDに保持された回数が値NUM1より少ない場合、メモリセルMCが劣化していないと判断し、処理をステップS12に移行する。
ステップS12において、第1制御部CNT1は、今回の消去動作による電圧の印加が初回(1回目)であるか否かを判定する。電圧の印加が初回の場合、処理はステップS14に移行され、電圧の印加の印加が2回目以降の場合、処理はステップS16に移行される。
ステップS14において、第1制御部CNT1は、印加電圧AVを初期電圧AV1に設定する。ステップS14の後、処理はステップS20に移行される。ステップS16において、第1制御部CNT1は、印加電圧AVを前回の印加電圧AVに比べて大きくする。すなわち、メモリセルMCに印加される電圧は、順次に大きくなる。例えば、メモリセルMCのコントロールゲートCGに印加される負電圧は、順次に下がる。ステップS16の後、処理はステップS20に移行される。
一方、保持部HLDに保持された回数が値NUM1以上である場合、ステップS18において、第1制御部CNT1は、印加電圧AVを、初期電圧AV1より大きい印加電圧AV2に設定する。ステップS18の後、処理はステップS20に移行される。
ステップS20において、第1制御部CNT1は、ステップS14、S16またはS18で設定した印加電圧AVをメモリセルMCに印加する。
次に、ステップS22において、第1制御部CNT1は、メモリセルMCに保持されたデータが消去されたか否かを判定する。例えば、データが消去されたか否かの判定は、セルトランジスタが所定の閾値電圧に設定されたか否かを確認するベリファイ動作の実行により確認される。メモリセルMCに保持されたデータが消去された場合、処理はステップS24に移行され、メモリセルMCに保持されたデータが消去されていない場合、処理はステップS10に戻って、メモリセルMCに印加電圧AVが再び印加される。なお、ステップS22は、ステップS10の前に実施されてもよい。この場合にも、ステップS22は、ステップS20の後に実施される。
ステップS24において、第2制御部CNT2は、今回の消去動作においてメモリセルMCに印加された印加電圧AVの回数が、保持部HLDに保持された回数以上か否かを判定する。メモリセルMCに印加された印加電圧AVの回数が、保持部HLDに保持された回数以上である場合、処理はステップS26に移行される。メモリセルMCに印加された印加電圧AVの回数が、保持部HLDに保持された回数より少ない場合、消去動作の処理は終了する。
ステップS26において、第2制御部CNT2は、今回の消去動作においてメモリセルMCに印加された印加電圧AVの回数を、保持部HLDに書き込む。すなわち、保持部HLDに保持される印加電圧AVの回数は、減らされることなく、メモリセルMCの劣化に応じて順次に増加する。そして、消去動作の処理は終了する。
以上、図1から図2に示した実施形態では、消去動作においてメモリセルMCに印加される印加電圧AVがメモリセルMCの劣化の判定後に変更される場合に、消去動作の時間が長くなることを抑止できる。
図3は、半導体メモリの別の実施形態を示す。この実施形態の半導体メモリMEM2は、入力部10、ステートマシン12、記憶部14、電圧生成部16、セルアレイ18、ロウデコーダ20、コラムデコーダ22、センスアンプ24、ライトアンプ26およびデータ入出力部28を有する。例えば、半導体メモリMEM2は、フラッシュメモリ等の不揮発性メモリである。
入力部10は、半導体メモリMEM2を動作させるためのコマンド信号CMDおよびアドレス信号ADを受け、受けたコマンド信号CMDおよびアドレス信号ADをステートマシン12に出力する。アドレス信号ADは、ロウデコーダ20およびコラムデコーダ22にも出力される。コマンド信号CMDは、消去動作を実行する消去コマンド、読み出し動作を実行する読み出しコマンド、およびプログラム動作を実行するプログラムコマンドを含む。
ステートマシン12は、第1制御部121および第2制御部122を有する。第1制御部121は、入力部10を介して受けるコマンド信号CMDに応じて、電圧生成部16、ロウデコーダ20、コラムデコーダ22、センスアンプ24、ライトアンプ26およびデータ入出力部28の動作を制御する複数の制御信号を生成する機能を有する。そして、コマンド信号CMDに応じて動作する第1制御部121の制御により、セルアレイ18に保持されたデータの消去動作、データのプログラム動作またはデータの読み出し動作が実行される。
また、第1制御部121は、消去コマンドを示すコマンド信号CMDに応答して、消去動作の開始前にリセット信号RSTを第2制御部122に出力し、セルアレイ18への電圧の印加毎にインクリメント信号INCを第2制御部122に出力する。さらに、第1制御部121は、消去動作の開始前に、第1モードMD1または第2モードMD2を示す情報を第2制御部122から受ける。第1モードMD1および第2モードMD2は、図5で説明する。以下、消去動作において、メモリセルMCのセルトランジスタのコントロールゲートCGに印加される印加電圧は、消去パルスとも称される。
例えば、消去動作は、セルアレイ18に配置されるメモリセルMCのセルトランジスタの閾値電圧を、消去状態を示す値に設定する動作である。例えば、プログラム動作は、アドレス信号ADで指定されるメモリセルMCのセルトランジスタの閾値電圧を、プログラム状態を示す値に設定する動作である。例えば、読み出し動作は、アドレス信号ADで指定されるメモリセルMCに保持されたデータの論理を読み出す動作である。例えば、消去状態のセルトランジスタの閾値電圧は、プログラム状態のセルトランジスタの閾値電圧より低く、正値を示す。
第2制御部122は、記憶部14にデータWNを書き込む場合、書き込み要求を示す制御信号CNTをデータWNとともに記憶部14に出力する。第2制御部122は、記憶部14からデータRNを読み出す場合、読み出し要求を示す制御信号CNTを記憶部14に出力する。例えば、データWN、RNは、消去動作時にメモリセルMCのコントロールゲートCGに印加された消去パルスの数を示す。また、第2制御部122は、消去動作の開始前に、第1モードMD1または第2モードMD2を示す情報を第1制御部121に出力する。
記憶部14は、消去動作時にコントロールゲートCGに印加された消去パルスの数を示すデータWNを保持する不揮発性の記憶領域と、データWNの書き込み回路と、記憶領域に保持された消去パルスの数をデータRNとして読み出す読み出し回路とを有する。記憶部14は、メモリセルMCに印加される消去動作時の印加電圧の回数を保持する第1保持部の一例である。
例えば、記憶部14に設けられる不揮発性の記憶領域は、セルアレイ18内のメモリセルMCと同様の複数のメモリセルを有する。メモリセルが2値データを記憶する場合、記憶部14に設けられるメモリセルの数は、データWNのビット数(例えば、8ビット)以上あればよい。なお、記憶部14は、初期値として”0”を記憶領域に保持する。例えば、初期値は、半導体メモリMEM2の製造工程(テスト工程)で記憶部14に書き込まれる。
電圧生成部16は、消去動作、プログラム動作および読み出し動作で使用する電圧をそれぞれ生成する。例えば、電圧生成部16は、消去動作において、コントロールゲートCGに印加する負電圧およびセルアレイ18の基板(セルトランジスタのウェル領域)に供給される高電圧等を生成する。例えば、消去動作時に、セルアレイ18の基板は、9Vに設定される。
例えば、電圧生成部16は、プログラム動作において、コントロールゲートCGに印加する高電圧およびビット線BLに印加する高電圧等を生成する。例えば、電圧生成部16は、読み出し動作において、コントロールゲートCGに印加する高電圧およびビット線BLに印加する高電圧等を生成する。
セルアレイ18は、マトリックス状に配置された複数のメモリセルMCを有する。例えば、各メモリセルMCは、コントロールゲートCGおよびフローティングゲートFGを含むセルトランジスタを有する。各セルトランジスタは、ソースがソース線SLに接続され、ドレインがビット線BLに接続され、コントロールゲートCGがワード線WLに接続される。セルアレイ18は、消去動作において、メモリセルMCに保持されたデータを消去する単位である。
なお、メモリセルMCのレイアウトやメモリセルMCの構造は、図3に限定されない。例えば、メモリセルMCは、セルトランジスタとビット線との間に選択トランジスタを有してもよい。また、セルアレイ18は、メモリセルMCに保持されたデータを消去する単位である複数のセクタを有してもよい。
ロウデコーダ20は、消去動作、プログラム動作および読み出し動作時に、第1制御部121からの制御信号と、アドレス信号ADと、電圧生成部16からの電圧を受けて動作し、ワード線WLおよびソース線SLを所定の電圧に設定する。コラムデコーダ22は、プログラム動作および読み出し動作時に、ステートマシン12からの制御信号およびアドレス信号ADを受けて動作し、ビット線BLを所定の電圧に設定する。
センスアンプ24は、読み出し動作時に、第1制御部121からの制御信号を受けて動作し、データを読み出すメモリセルMCに接続されたビット線BLの電圧または電流を、コラムデコーダ22を介して受け、メモリセルMCに保持されたデータの論理を判定する。ライトアンプ26は、プログラム動作時に、第1制御部121からの制御信号を受けて動作し、コラムデコーダ22を介してビット線BLを所定の電圧に設定する。
データ入出力部28は、第1制御部121からの制御信号を受けて動作し、読み出し動作時に、メモリセルMCから読み出されたデータをデータ端子DTに出力し、プログラム動作時に、データ端子DTを介してメモリセルMCに書き込むデータを受ける。
図4は、図3に示した第2制御部122の例を示す。第2制御部122は、レジスタR1、R2、比較部CMPおよび書き込み部WRを有する。レジスタR1は、リセット信号RSTにより、例えば”0”にリセットされる。レジスタR1に保持されるデータEPNは、消去動作時にコントロールゲートCGに印加される消去パルスの数を示し、インクリメント信号INCに応答して”1”ずつ増加する。レジスタR1に保持されたデータEPNは、比較部CMPおよび書き込み部WRに出力される。レジスタR1は、消去動作においてメモリセルMCに印加された印加電圧の回数を保持する第2保持部の一例である。
図3で説明したように、例えば、リセット信号RSTは、消去コマンドに応答して消去動作の開始前に第1制御部121により生成される。例えば、インクリメント信号INCは、消去動作において、メモリセルMCのコントロールゲートCGに消去パルスが印加される毎に、第1制御部121により生成される。
レジスタR2は、記憶部14から読み出されるデータRNを、以前の消去動作時にコントロールゲートCGに印加された消去パルスの数として保持し、保持したデータRNを比較器に出力する。例えば、第2制御部122は、消去コマンドの受信に応答してステートマシン12が最初の消去パルスをコントロールゲートCGに印加する前に、記憶部14から読み出したデータRNをレジスタR2に保持する。レジスタR2は、保持部14から読み出される回数(データRN)を保持する第3保持部の一例である。
また、レジスタR2は、記憶部14から読み出されるデータRNが示す消去パルスの数に応じて、第1モードMD1または第2モードMD2を示す信号を図3に示した第1制御部121に出力する。例えば、レジスタR2は、データRNが”150回”以上を示す場合に、第2モードMD2を示す信号を出力し、データRNが”150回”未満を示す場合に、第1モードMD1を示す信号を出力する。なお、第2制御部122は、レジスタR2から出力されるデータRNが示す消去パルスの数と、”150回”とを比較する比較器を有し、比較器から第1モードMD1または第2モードMD2を示す信号を出力してもよい。この場合、レジスタR2は、第1モードMD1および第2モードMD2を示す信号を出力する機能を持たない。
比較部CMPは、消去動作の完了時に、レジスタR1に保持されたデータEPNと、レジスタR2に保持されたデータRNとを比較し、データEPNが示す消去パルスの数が、データRNが示す消去パルスの数より大きい場合に、超過信号OVERを出力する。書き込み部WRは、比較部CMPからの超過信号OVERに応答して、レジスタR1に保持されたデータEPNをデータWNとして記憶部14に出力する。すなわち、消去動作でメモリセルMCに印加された消去パルスの数(EPN)が、記憶部14に保持された消去パルスの数(RN)より大きい場合、記憶部14の内容はデータEPNに書き換えられる。
図5は、図3に示した半導体メモリMEM2の消去動作におけるゲート電圧と消去パルスの数との関係の例を示す。図5において、横軸は、セルアレイ18内のメモリセルMCのコントロールゲートCGに印加される消去パルスの数(積算値)を示し、縦軸は、セルアレイ18内のメモリセルMCのコントロールゲートCGに印加される消去パルスの電圧を示す。
例えば、消去動作は、前回の消去動作で印加された消去パルスの数に応じて、第1モードMD1または第2モードMD2で実行される。なお、図4に示した第2制御部122は、前回の消去動作で印加された消去パルスの数を、内蔵する記憶領域に保持してもよく、図4に示したレジスタR1から読み出してもよい。
第1モードMD1は、前回の消去動作で印加された消去パルスの数が値N1未満の場合に実行される。値N1は、第1モードMD1により消去動作を実行する場合に、メモリセルMCの劣化を判定する閾値であり、例えば、”150”である。第1モードMD1では、第1制御部121は、電圧を初期値V1から最終値V3に徐々に下げながら、コントロールゲートCGに消去パルスを繰り返し印加する(図5に示す太い実線)。すなわち、第1モードMD1では、消去パルスの電圧を順次に下げるステップ消去が実行される。
特に限定されないが、初期値V1は”−5.2V”であり、最終値V3は”−9.2V”である。消去動作時に、セルトランジスタのウェル領域に印加される電圧は、高電圧である。このため、コントロールゲートCGに印加される消去パルスの電圧値が下がるほど、セルトランジスタに印加される電界は大きくなり、セルトランジスタに掛かるストレスは大きくなる。コントロールゲートCGに印加される初期値V1は、図2に示したメモリセルMCに印加される初期電圧AV1に対応する。
図5に示す例では、コントロールゲートCGに印加される電圧は、消去パルスが4回印加される毎に1ステップ(例えば、0.125V)下げられる。これにより、”−5.2V”から”−9.2V”までの4Vが低下するまでに128ステップ掛かる(0.125V×128/4)。なお、コントロールゲートCGに印加される電圧は、消去パルスの印加毎に下げられてもよい。
第2モードMD2は、前回の消去動作で印加された消去パルスの数が予め設定された回数である値N1以上の場合に実行される。すなわち、第2モードMD2は、前回の消去動作の実行により、メモリセルMCの劣化が判定された場合に実行される。第2モードMD2では、消去動作においてコントロールゲートCGに印加される最初の消去パルスの電圧は、値V2に設定される。例えば、値V2は、最終値V3と同じ”−9.2V”である。すなわち、第2モードMD2では、消去パルスの電圧を順次に下げるステップ消去は実行されない(図5に示す太い一点鎖線)。コントロールゲートCGに印加される値V2は、図2に示したメモリセルMCに印加される印加電圧AV2に対応する。
例えば、値V1、V2、V3および値N1は、ステートマシン12内に設けられる不揮発性の記憶領域に保持される。値V1、V2、V3および値N1を保持する不揮発性の記憶領域は、セルアレイ18内のメモリセルMCと同様の複数のメモリセルを有してもよく、ヒューズ回路などのROM(Read Only Memory)を有してもよい。あるいは、値V1、V2、V3および値N1を保持する不揮発性の記憶領域は、記憶部14内に設けられてもよい。
なお、値V2は、初期値V1より低く、最終値V3より高い値に設定されてもよい。例えば、値V2が”−8.2V”に設定された場合、コントロールゲートCGに印加される電圧は、”−8.2V”から”−9.2V”まで徐々に下げられる(図5に示す太い点線)。この場合、メモリセルMCに掛かるストレスが、第1モードMD1よりも大きい消去動作(ステップ消去)が実行される。
また、図5の横軸は、セルアレイ18内のメモリセルMCのコントロールゲートCGに印加される消去パルスの印加時間の積算値で示されてもよい。この場合、図4に示した記憶部14は、1回の消去動作で印加された消去パルスの印加時間の積算値が保持し、レジスタR1は、インクリメント信号INCの代わりに各消去パルスの印加時間を示すデータを受け、受けたデータを順次積算する加算器の機能を有する。
図6は、図3に示した半導体メモリMEM2における消去動作の例を示す。すなわち、図6は、半導体メモリの動作方法の別の実施形態を示す。図6に示すフローは、ステートマシン12(第1制御部121および第2制御部122)により実行される。なお、セルアレイ18が複数のセクタを有する場合、図6に示す消去動作は、セクタ単位で実行され(セクタ消去)、あるいは、全てのセクタで順次に実行される(フルチップ消去)。セクタ消去を実行するか、フルチップ消去を実行するかは、例えば、半導体メモリMEM2に供給されるコマンド信号CMDに応じて決定される。
まず、ステップS100において、ステートマシン12は、セルアレイ18内のメモリセルMCをプログラム状態に設定するために、プリプログラム動作を実行する。プリプログラム動作の例は、図8に示す。
次に、ステップS200において、ステートマシン12は、セルアレイ18内のメモリセルMCを消去状態に設定するために、ステップ消去動作を実行する。ステップ消去動作の例は、図9および図10に示す。
次に、ステップS300において、ステートマシン12は、消去状態のセルトランジスタの閾値電圧が所定の範囲内に分布するように、ソフトプログラム動作を実行する。ソフトプログラム動作の例は、図11に示す。
図7は、図6に示した消去動作の実行によるセルトランジスタの閾値電圧の変化の例を示す。図7(a)は、消去動作前の状態を示す。この例では、消去動作前に、消去状態のメモリセルMC(消去セル)とプログラム状態のメモリセルMC(プログラムセル)の数が、ほぼ等しい。消去セルのセルトランジスタの閾値電圧は、値VT1から値VT2の範囲に分布し、プログラムセルのセルトランジスタの閾値電圧は、値VT3以上の所定の範囲に分布している。例えば、消去セルの閾値電圧の下限である値VT1は、0Vより高い。
図7(b)は、図6のステップS100に示したプリプログラム動作の実行後の状態を示す。プリプログラム動作の実行により、セルアレイ18内における消去状態のメモリセルMCは、プログラム状態に設定される。なお、プリプログラム動作において、セルトランジスタの閾値電圧を確認するベリファイ動作では、セルトランジスタの閾値電圧が値VT3以上になったか否かが判定される。
図7(c)、(d)、(e)は、図6のステップS200に示したステップ消去動作の実行によるセルトランジスタの閾値電圧の変化を示す。ステップ消去動作は、消去パルスの印加による閾値電圧の低い側への変化と、APDE(Auto−Program Disturb after Erase)動作による閾値電圧の高い側への変化を含む。
なお、実際のステップ消去動作では、図5に示したように、複数の消去パルスが繰り返し印加され、消去パルスの印加毎にAPDE動作が実行される。このため、実際のステップ消去動作では、1回の消去パルスの印加により、セルトランジスタの閾値電圧の分布が図7(c)に示すように、大きく変化するわけではない。すなわち、図7(c)は、セルアレイ18内のセルトランジスタのコントロールゲートCGに消去パルスが印加された場合の閾値電圧の変化のイメージを示す。
実際のステップ消去動作では、図7(d)、(e)に示すように、APDE動作と消去パルスの印加とが繰り返されることで、セルトランジスタの閾値電圧は、値VT0から値VT2の範囲に徐々に集まる。なお、APDE動作は、閾値電圧が負のセルトランジスタをなくすためのプログラム動作であり、APDE動作におけるベリファイ動作では、図7(d)に示すように、セルトランジスタの閾値電圧が値VT0(0V)以上になったか否かが判定される。また、メモリセルMCがプログラム状態から消去状態に変化したことを確認するベリファイ動作は、図7(e)に示すように、セルトランジスタの閾値電圧が値VT2以下になったか否かが判定される。
図7(f)は、図6のステップS300に示したソフトプログラム動作の実行後の状態を示す。ソフトプログラム動作の実行により、セルアレイ18内における消去状態のセルトランジスタの閾値電圧は、値VT1以上に設定される。すなわち、ソフトプログラム動作において、セルトランジスタの閾値電圧を確認するベリファイ動作では、セルトランジスタの閾値電圧が値VT1以上になったか否かが判定される。
図8は、図6に示したプリプログラム動作の例を示す。
まず、ステップS102において、ステートマシン12は、プリプログラムするメモリセルMCを示すアドレスの値を初期化する。例えば、ステートマシン12は、内蔵するアドレスカウンタの値をリセットすることで、アドレスの値を初期化する。
次に、ステップS104において、ステートマシン12は、ベリファイ動作を実行する。ステップS104で実行されるベリファイ動作は、セルトランジスタの閾値電圧が、図7に示したプログラム状態の下限値である値VT3以上であることを確認するために実行される。
次に、ステップS106において、ステートマシン12は、ベリファイ動作がパスしたか否か、すなわち、ベリファイ動作を実行したメモリセルMCがプログラム状態であるか否かを判定する。ベリファイ動作がパスした場合、処理はステップS110に移行され、ベリファイ動作がフェイルした場合、処理はステップS108に移行される。
ステップS108において、ステートマシン12は、ベリファイ動作がフェイルしたメモリセルMCに対してセルトランジスタの閾値電圧を値VT3以上に設定するためにプログラム動作を実行する。ステップS108の後、処理はステップS104に移行され、ベリファイ動作が再び実行される。
一方、ステップS110において、ステートマシン12は、アドレスが最終アドレスか否か、すなわち、セルアレイ18内の全てのメモリセルMCがプログラム状態に設定されたか否かを判定する。アドレスが最終アドレスの場合、処理はステップS114に移行され、アドレスが最終アドレスでない場合、処理はステップS112に移行される。
ステップS112において、ステートマシン12は、例えば、アドレスカウンタをインクリメントし、ベリファイ動作を実行するメモリセルMCを示すアドレスを更新する。なお、アドレスは、アドレスカウンタをデクリメントすることで更新されてもよい。ステップS112の後、処理はステップS104に移行され、更新されたアドレスが示すメモリセルMCのベリファイ動作が実行される。
ステップS114において、ステートマシン12は、ステップS102と同様に、アドレスの値を初期化する。そして、プリプログラム動作が終了する。
図9および図10は、図6に示したステップ消去動作の例を示す。図10は、図9の続きを示す。
まず、ステップS202において、ステートマシン12は、図4に示した第2制御部122のレジスタR1を、例えば”0”にリセットする。すなわち、セルトランジスタのコントロールゲートCGに印加される消去パルスの回数(積算値)が0回に初期化される。
次に、ステップS204において、ステートマシン12は、ベリファイ動作を実行する。ステップS204で実行されるベリファイ動作は、セルトランジスタの閾値電圧が、図7に示した消去状態の上限値である値VT2以下であることを確認するために実行される。
次に、ステップS206において、ステートマシン12は、ベリファイ動作がパスしたか否か、すなわち、ベリファイ動作を実行したメモリセルMCが消去状態であるか否かを判定する。ベリファイ動作がパスした場合、処理はステップS208に移行され、ベリファイ動作がフェイルした場合、処理は図10のステップS250に移行される。
ステップS208において、ステートマシン12は、アドレスが最終アドレスか否か、すなわち、セルアレイ18内の全てのメモリセルMCが消去状態に設定されたか否かを判定する。アドレスが最終アドレスの場合、処理はステップS212に移行され、アドレスが最終アドレスでない場合、処理はステップS210に移行される。
ステップS210において、ステートマシン12は、図8のステップS112と同様にアドレスを更新し、更新したアドレスが示すメモリセルMCのベリファイ動作を実行するために、処理をステップS204に移行する。
一方、ステップS212において、ステートマシン12は、図4に示した第2制御部122の比較部CMPを動作させ、レジスタR1の値がレジスタR2の値を超えているか否かを判定する。すなわち、今回のステップ消去動作でコントロールゲートCGに印加された消去パルスの数が、以前のステップ消去動作でコントロールゲートCGに印加された消去パルスの数より多いか否かが判定される。
実際の消去動作では、図10のステップS266による消去パルスの印加前に、ステップS206でベリファイ動作がパスすることはない。このため、ステップS212の実行前に、図10に示すステップS252が実行され、ステップS212で比較されるレジスタR2の値は、記憶部14から読み出される。レジスタR1の値がレジスタR2の値を超えている場合、すなわち、今回のステップ消去動作での消去パルスの総数が、以前のステップ消去動作での消去パルスの総数より多い場合、処理はステップS214に移行される。レジスタR1の値がレジスタR2の値以下の場合、すなわち、今回のステップ消去動作での消去パルスの総数が、以前のステップ消去動作での消去パルスの総数以下の場合、ステップ消去動作の処理は終了する。
ステップS214において、ステートマシン12は、図4に示した第2制御部122の書き込み部WRを動作させ、レジスタR1の値を記憶部14に書き込み、ステップ消去動作の処理を終了する。
一方、ステップS206でベリファイ動作がフェイルした場合、図10のステップS250において、ステートマシン12は、今回のステップ消去動作による消去パルスの印加が初回(1回目)であるか否かを判定する。消去パルスの印加が初回の場合、処理はステップS252に移行され、消去パルスの印加が2回目以降の場合、処理はステップS260に移行される。
ステップS252において、ステートマシン12は、記憶部14に保持された値をレジスタR2に読み込む。次に、ステップS254において、ステートマシン12は、レジスタR2の値が、図5に示した値N1(この例では、”150”)以上か否かを判定する。すなわち、ステートマシン12は、消去動作を図5に示した第1モードMD1で実行するか、第2モードMD2で実行するかを判定する。
ステートマシン12は、レジスタR2の値が値N1以上の場合、メモリセルMCが劣化していると判断し、図5に示した第2モードMD2でステップ消去動作を実行するために、処理をステップS256に移行する。一方、ステートマシン12は、レジスタR2の値が値N1未満の場合、メモリセルMCが劣化していないと判断し、図5に示した第1モードMD1でステップ消去動作を実行するために、処理をステップS258に移行する。
ステップS256において、ステートマシン12は、コントロールゲートCGに印加する1回目の消去パルスの電圧(開始電圧)を値V2に設定し、処理をステップS266に移行する。開始電圧が値V2(例えば、−9.2V)に設定されることで、消去パルスの電圧を順次に下げるステップ消去は実行されない。
一方、ステップS258において、ステートマシン12は、コントロールゲートCGに印加する1回目の消去パルスの電圧(開始電圧)を初期値V1に設定し、処理をステップS266に移行する。開始電圧が初期値V1(例えば、−5.2V)に設定されることで、コントロールゲートCGに印加する消去パルスの電圧を順次に下げるステップ消去が実行される。
消去パルスの印加が2回目以降の場合、ステップS260において、ステートマシン12は、コントロールゲートCGに印加する消去パルスの電圧(印加電圧)が最終値V3以上であるか否かを判定する。印加電圧が最終値V3以上である場合、処理はステップS266に移行され、印加電圧が最終値V3未満である場合、処理はステップS262に移行される。ステップS260により、最終値V3を超える電圧の印加を抑止することができ、メモリセルMCの信頼性が低下する可能性を低減できる。
ステップS262において、ステートマシン12は、コントロールゲートCGに同じ電圧で4回の消去パルスを印加したか否かを判定する。同じ電圧で4回の消去パルスが印加された場合、処理はステップS264に移行され、同じ電圧で印加された消去パルスが4回未満の場合、処理はステップS266に移行される。なお、コントロールゲートCGに印加される電圧が消去パルスの印加毎に下げられる場合、ステップS262は削除され、ステップS260で印加電圧が最終値V3未満である場合、処理はステップS264に移行される。
ステップS264において、ステートマシン12は、消去パルスの電圧を1ステップ(この例では、0.125V)下げ、処理をステップS266に移行する。
ステップS266において、ステートマシン12は、セルアレイ18内のメモリセルMCのコントロールゲートCGに消去パルスを印加する。消去パルスの印加により、セルトランジスタの閾値電圧は、低い側にシフトされる。ステップS266の後、処理はステップS268に移行される。
ステップS268において、ステートマシン12は、図4に示したインクリメント信号INCを出力し、レジスタR1の値を”1”増加させ、処理をステップS270に移行する。なお、図5で説明したように、消去パルスの数の代わりに消去パルスの印加時間の積算値を用いてステップ消去動作を制御する場合、ステップS268では、レジスタR1は、1つの消去パルスの印加時間を示すデータを順次に積算する。
ステップS270において、ステートマシン12は、APDE動作のために、図8に示したステップS102と同様にアドレスを初期化し、処理をステップS272に移行する。APDE動作は、ステップS272、S274、S276、S278、S280により実行される。
ステップS272において、ステートマシン12は、ベリファイ動作を実行する。ステップS272で実行されるベリファイ動作は、セルトランジスタの閾値電圧が、図7に示したVT0(0V)を超えていることを確認するために実行される。
次に、ステップS274において、ステートマシン12は、ベリファイ動作がパスしたか否か、すなわち、ベリファイ動作を実行したセルトランジスタの閾値電圧がVT0(0V)を超えているか否かを判定する。ベリファイ動作がパスした場合、処理はステップS278に移行され、ベリファイ動作がフェイルした場合、処理はステップS276に移行される。
ステップS276において、ステートマシン12は、ベリファイ動作がフェイルしたセルトランジスタの閾値電圧を負から正にするためにプログラム動作を実行し、処理をステップS272に移行する。
一方、ステップS278において、ステートマシン12は、アドレスが最終アドレスか否か、すなわち、セルアレイ18内の全てのセルトランジスタの閾値電圧が正の消去状態に設定されたか否かを判定する。アドレスが最終アドレスの場合、処理はステップS282に移行され、アドレスが最終アドレスでない場合、処理はステップS280に移行される。
ステップS280において、ステートマシン12は、図8に示したステップS112と同様にアドレスを更新し、処理をステップS272に移行する。
ステップS282において、ステートマシン12は、図8に示したステップS102と同様にアドレスを初期化し、処理を図9に示したステップS204に移行する。そして、閾値電圧がVT2以下であることを判定するベリファイ動作、所定の電圧での消去パルスの印加およびAPDE動作が、セルアレイ18の全てのセルトランジスタの閾値電圧が値VT0から値VT2の範囲内に設定されるまで繰り返し実行される。
図11は、図6に示したソフトプログラム動作の例を示す。ソフトプログラム動作は、セルトランジスタに設定する閾値電圧が異なることを除き、図8に示したプリプログラム動作と同様である。
まず、ステップS402において、ステートマシン12は、図8に示したステップS102と同様にアドレスを初期化する。次に、ステップS404において、ステートマシン12は、ベリファイ動作を実行する。ステップS404で実行されるベリファイ動作は、セルトランジスタの閾値電圧が、図7に示した消去状態の下限値である値VT1以上であることを確認するために実行される。
次に、ステップS406において、ステートマシン12は、ベリファイ動作がパスしたか否か、すなわち、ベリファイ動作を実行したメモリセルMCが消去状態であるか否かを判定する。ベリファイ動作がフェイルした場合、処理はステップS408に移行され、ベリファイ動作がパスした場合、処理はステップS410に移行される。
ステップS408において、ステートマシン12は、ベリファイ動作がフェイルしたメモリセルMCに対してセルトランジスタの閾値電圧を値VT1以上に設定するためにプログラム動作を実行する。ステップS408の後、処理はステップS404に移行され、ベリファイ動作が再び実行される。
一方、ステップS410において、ステートマシン12は、アドレスが最終アドレスか否か、すなわち、セルアレイ18内の全てのメモリセルMCが消去状態に設定されたか否かを判定する。アドレスが最終アドレスの場合、ソフトプログラム動作は終了し、アドレスが最終アドレスでない場合、処理はステップS412に移行される。ステップS412において、ステートマシン12は、図8に示したステップS112と同様にアドレスを更新し、処理をステップS404に移行する。
図12は、図6に示した消去動作が繰り返し実行される場合の開始電圧の変化の例を示す。この例では、開始電圧は、図5に示した値V1(−5.2V)または値V2(−9.2V)である。図12において、符号ERSは、消去コマンドが半導体メモリMEM2に供給され、消去動作が実行されることを示す。図12において、レジスタR1の値および記憶部14の値は、各消去動作の完了後の値を示し、レジスタR2の値は、各消去動作の開始前の値を示す。
消去動作の完了後、図9に示したステップS212、S214において、第2制御部122は、消去動作でメモリセルMCに印加した消去パルスの数が、記憶部14に保持された回数より多い場合、消去パルスの数を記憶部14に書き込む。ここで、消去動作でメモリセルMCに印加した消去パルスの数は、図10に示したステップS268によりレジスタR1に保持され、記憶部14に保持された回数は、図10に示したステップS252によりレジスタR2に保持されている。
例えば、消去動作後にレジスタR1に”80回”が保持され、レジスタR2に”70回”が保持されている場合、第2制御部122は、記憶部13に保持された値(70回)を”80回”に書き換える(図12(a))。
図12に示した1番目から5番目の消去動作では、記憶部14からレジスタR2に読み出された回数が”150回”より少ないため、図10に示したステップS258において、開始電圧は値V1に設定される(図12(b))。5番目の消去動作でメモリセルMCに印加された消去パルスの数(”155回”)は、ステップ消去動作の完了時に記憶部14に書き込まれる(図12(c))。
6番目の消去動作において、記憶部14からレジスタR2に読み出された回数が”150回”以上のため、図10に示したステップS256において、開始電圧は値V2に設定される(図12(d))。6番目の消去動作では、開始電圧が値V1より低い値V2に設定されるため、消去動作で印加された消去パルスの数(”60回”)は、前回の消去動作で印加された消去パルスの数(”155回”)より少なくなる。このため、図9に示したステップS212の判定は、No(偽)となり、記憶部14は書き換えられない(図12(e))。7番目から9番目の消去動作においても、記憶部14は書き換えられない。このため、開始電圧は、値V1から値V2に変更された後、値V1に戻ることはない(図12(f))。すなわち、メモリセルMCの劣化が判定された後に、開始電圧が値V2から値V1に戻ることはなく、消去動作の時間が前回の消去動作に比べて長くなることはない。
なお、消去動作が繰り返し実行されることにより、メモリセルMCがさらに劣化し、メモリセルMCに印加した消去パルスの数が、記憶部14に保持された回数より多くなった場合、消去パルスの数は、記憶部14に再び書き込まれる(図12(g))。
図13は、別の半導体メモリにおいて、図6に示した消去動作が繰り返し実行される場合の開始電圧の変化の例を示す。図12と同様の動作については、詳細な説明は省略する。1番目から5番目の消去動作は、図12と同様である。
図13に示す動作を実行する半導体メモリは、図4に示した第2制御部122は、比較部CMPを持たず、消去動作で印加された消去パルスの数は、消去動作の完了毎に記憶部14に書き込まれる。このため、6番目の消去動作において、記憶部14に保持された消去パルスの数(”155回”)は、メモリセルMCの劣化が判定された後の消去動作で印加された消去パルスの数(”60回”)で上書きされる(図13(a))。これにより、7番目の消去動作では、記憶部14からレジスタR2に読み出された回数(”60回”)は、”150回”より少なくなり、図10に示したステップS258において、開始電圧は値V2から値V1に戻ってしまう(図13(b))。
メモリセルMCが劣化したにも拘わらず、開始電圧が値V1に戻ることにより、7番目の消去動作で印加される消去パルスの数は、開始電圧が値V2での消去動作で印加される消去パルスの数に比べて増加する(図13(c))。すなわち、消去動作に掛かる時間は再び長くなり、消去パルスの数が”150回”以上になるため、開始電圧は値V1から値V2に再び設定される。この後、消去動作で印加される消去パルスの数は、減少と増加とを交互に繰り返す。
以上、この実施形態においても、図1および図2に示した実施形態と同様に、消去動作においてメモリセルMCに印加される印加電圧がメモリセルMCの劣化の判定後に変更される場合に、消去動作の時間が長くなることを抑止できる。さらに、この実施形態では、比較部CMPは、消去動作で印加された消去パルスの回数と、記憶部14に保持された消去パルスの回数とを比較する。書き込み部WRは、消去動作で印加された消去パルスの回数が、記憶部14に保持された消去パルスの回数以上であることを比較部CMPが示すときに、消去動作で印加された消去パルスの回数を記憶部14に上書きする。これにより、記憶部14に保持される消去パルスの回数が、保持している回数より少なくなることを抑止でき、メモリセルMCの劣化が判定された後に、減少と増加とを交互に繰り返すことを抑制できる。
図14は、半導体メモリの別の実施形態における制御部の例を示す。図3および図4に示した実施形態で説明した要素と同一または同様の要素については、同一の符号を付し、これ等については、詳細な説明を省略する。
この実施形態の半導体メモリMEM3は、図4に示した第2制御部122の代わりに第2制御部122Aを有する。半導体メモリMEM3のその他の構成は、図3に示した半導体メモリMEM2と同様である。すなわち、半導体メモリMEM3は、例えば、フラッシュメモリ等の不揮発性メモリである。半導体メモリMEM3の消去動作の仕様は、図5と同一または同様であり、半導体メモリMEM3の消去動作のフローは、図6および図8から図11と同一または同様である。
第2制御部122Aは、レジスタR1、R2、R3、補正部CRCT、比較部CMPおよび書き込み部WRを有する。レジスタR1、R2、比較部CMPおよび書き込み部WRは、図4に示した第2制御部122のレジスタR1、R2、比較部CMPおよび書き込み部WRと同様である。すなわち、第2制御部122Aは、図4に示した第2制御部122に補正部CRCTおよびレジスタR3を追加している。
レジスタR1は、インクリメント信号INCに応答して、消去動作時にコントロールゲートCGに印加される消去パルスの数を示すデータEPN0を”1”ずつ増加する。補正部CRCTは、レジスタR1から出力されるデータEPN0および半導体メモリMEM3のチップ温度を示す信号CTを受け、チップ温度に応じて、データEPN0に補正係数kを乗じてデータEPNを求める(EPN=EPN0×k)。すなわち、データEPNは、データEPN0が示す任意の温度での消去パルスの数を、基準温度(例えば、摂氏25度)での消去パルスの数に補正した値を示す。
信号CTは、半導体メモリMEM3に設けられる温度センサから出力されてもよく、半導体メモリMEM3の外部に設けられる温度センサから出力されてもよい。なお、補正部CRCTは、半導体メモリMEM3が搭載される基板の温度を示す信号CTを、チップ温度を示す情報として受けてもよい。以下、チップ温度または基板の温度は、チップ温度CTとも称される。
例えば、チップ温度CTと補正係数kとの関係を示す情報は、第2制御部122A内に設けられるテーブルTBLに格納され、補正部CRCTは、テーブルTBLを参照して補正係数kを求める。なお、補正部CRCTは、テーブルTBLの補正係数kを用いずに、式(1)を用いて、データEPNを求めてもよい。
1+(25−CT)×0.002 ‥‥(1)
比較部CMPおよび書き込み部WRは、図4と同一または同様である。図14に示す第2制御部122Aでは、データEPN0は、摂氏25度のチップ温度CTを基準にして補正部CRCTによりデータEPNに補正される。例えば、チップ温度CTが摂氏マイナス20度で、データEPN0が示す消去パルスの数が”130”の場合、データEPNが示す消去パルスの数は”143”になる。また、チップ温度CTが摂氏130度で、データEPN0が示す消去パルスの数が”130”の場合、データEPNが示す消去パルスの数は”104”になる。これにより、チップ温度CTに拘わりなく、摂氏25度に換算された消去パルスの数を記憶部14に書き込むことが可能になる。
図15は、図14に示した半導体メモリMEM3において、図6に示した消去動作が繰り返し実行される場合の開始電圧の変化の例を示す。図12および図13と同様の動作については、詳細な説明は省略する。例えば、図15は、半導体メモリMEM3のチップ温度CTが摂氏マイナス20度の場合の例を示す。この場合、補正部は、例えば、図14に示したテーブルTBLを参照して、レジスタR1に保持された消去パルスの数に”1.10”を乗じ、乗じた値をレジスタR3に格納する。
この例では、図15に示した5番目の消去動作において、補正部CRCTで補正され、レジスタR3に格納された消去パルスの数(”154回”)は、レジスタR2に保持された回数(”143回”)より多いため、記憶部14に上書きされる(図15(a))。また、レジスタR3に格納された消去パルスの数(”154回”)は、図5に示した値N1(”150回”)より多いため、メモリセルMCの劣化が検出される。
6番目の消去動作では、記憶部14からレジスタR2に読み出された回数が、メモリセルMCの劣化を示す”150回”以上のため、図10に示したステップS256において、開始電圧は値V2(この例では、−9.2V)に設定される(図15(b))。6番目の消去動作では、開始電圧が値V1より低い値V2に設定されるため、消去動作で印加された消去パルスの数(”60回”)は、前回の消去動作で印加された消去パルスの数(”140回”)より少なくなる(図15(c))。
一方、補正部CRCTによる温度補正が行われない場合、5番目の消去動作でレジスタR1に保持される消去パルスの数は”140回”であるため、メモリセルMCの劣化は検出されない。そして、レジスタR1に保持される消去パルスの数が”150回”以上になる6番目以降の消去動作後に、メモリセルMCの劣化が検出され、開始電圧が値V1より低い値V2に設定される。したがって、補正部CRCTによる温度補正が行われない場合、メモリセルMCが劣化しているにも拘わらず開始電圧が値V1に維持され、消去パルスの数は、開始電圧が値V2に設定される場合の消去パルスの数に比べて多くなる。この結果、消去動作に掛かる時間は、開始電圧が値V2に設定される場合の消去動作に掛かる時間に比べて長くなり、半導体メモリMEM3の性能が低下する。換言すれば、補正部CRCTによる温度補正が行われることで、実際のメモリセルMCの劣化に応じて開始電圧を値V1から値V2に変更することができ、消去動作に掛かる時間を最適化でき、半導体メモリMEM3の性能が低下することを抑制できる。
図16は、図14に示した半導体メモリMEM3において、図6に示した消去動作が繰り返し実行される場合の開始電圧の変化の別の例を示す。図12、図13および図15と同様の動作については、詳細な説明は省略する。例えば、図16は、半導体メモリMEM3のチップ温度CTが摂氏130度の場合の例を示す。この場合、補正部は、例えば、図14に示したテーブルTBLを参照して、レジスタR1に保持された消去パルスの数に”0.80”を乗じ、乗じた値をレジスタR3に格納する。
この例では、図16に示した9番目の消去動作において、補正部CRCTで補正され、レジスタR3に格納された消去パルスの数(”152回”)は、レジスタR2に保持された回数(”144回”)より多いため、記憶部14に上書きされる(図16(a))。また、レジスタR3に格納された消去パルスの数(”152回”)は、図5に示した値N1(”150回”)より多いため、メモリセルMCの劣化が検出される。
すなわち、メモリセルMCの劣化は、レジスタR1に格納された回数が”150”になる5番目の消去動作ではなく、レジスタR1に格納された回数が”190”になる9番目の消去動作で検出される。そして、10番目の消去動作では、記憶部14からレジスタR2に読み出された回数が”150回”以上のため、図10に示したステップS256において、開始電圧は値V2(この例では、−9.2V)に設定される(図16(b))。10番目の消去動作では、開始電圧が値V1より低い値V2に設定されるため、消去動作で印加された消去パルスの数(”80回”)は、前回の消去動作で印加された消去パルスの数(”190回”)より少なくなる。
一方、補正部CRCTによる温度補正が行われない場合、5番目の消去動作でレジスタR1に保持される消去パルスの数は”150回”になり、メモリセルMCの劣化が検出される。但し、5番目の消去動作では、摂氏25度のチップ温度CTを基準にした消去パルスの数は、”120”回であるため、実際にはメモリセルMCは劣化していない。メモリセルMCが劣化していないにも拘わらず、6番目以降の消去動作では、開始電圧が値V1より低い値V2に設定され、メモリセルMCに過剰なストレスが印加される。この結果、メモリセルMCの劣化を早めてしまう。換言すれば、補正部CRCTによる温度補正が行われることで、実際のメモリセルMCの劣化に応じて開始電圧を値V1から値V2に変更することができ、メモリセルMCに過剰なストレスが印加されることを抑制でき、半導体メモリMEM3の信頼性が低下することを抑制できる。
なお、半導体メモリMEM3のチップ温度CTが消去動作毎に異なる場合にも、摂氏25度のチップ温度CTを基準にした消去パルスの数に基づいて、開始電圧が値V1から値V2に変更される。例えば、半導体メモリMEM3のチップ温度CTが摂氏マイナス20度と摂氏130度とに繰り返し変化する場合にも、チップ温度CTに拘わらず、摂氏25度を基準とした消去パルスの数に変換された値がレジスタR3に書き込まれる。そして、レジスタR3から記憶部14に書き込まれた値が”150回”以上になった後の消去動作では、開始電圧は値V2に設定される。この結果、図15および図16と同様に、実際のメモリセルMCの劣化に応じて開始電圧を値V1から値V2に変更することができ、メモリセルMCに過剰なストレスが印加されることを抑制できる。
以上、この実施形態においても、図1および図2に示した実施形態と同様に、消去動作においてメモリセルMCに印加される印加電圧がメモリセルMCの劣化の判定後に変更される場合に、消去動作の時間が長くなることを抑止できる。また、図3から図13に示した実施形態と同様に、記憶部14に保持される消去パルスの回数が、保持している回数より少なくなることを抑止でき、メモリセルMCの劣化が判定された後に、減少と増加とを交互に繰り返すことを抑制できる。
さらに、この実施形態では、補正部CRCTは、セルトランジスタに印加した消去パルスの数を基準温度での消去パルスの数に補正し、比較部CMPは、補正した値に基づいて動作する。これにより、実際のメモリセルMCの劣化に応じて開始電圧を値V1から値V2に変更することができ、メモリセルMCに過剰なストレスが印加されることを抑制できる。
以上の詳細な説明により、実施形態の特徴点および利点は明らかになるであろう。これは、特許請求の範囲がその精神および権利範囲を逸脱しない範囲で前述のような実施形態の特徴点および利点にまで及ぶことを意図するものである。また、当該技術分野において通常の知識を有する者であれば、あらゆる改良および変更に容易に想到できるはずである。したがって、発明性を有する実施形態の範囲を前述したものに限定する意図はなく、実施形態に開示された範囲に含まれる適当な改良物および均等物に拠ることも可能である。