JP2007242068A - 不揮発性メモリシステムおよび不揮発性メモリ制御方法 - Google Patents
不揮発性メモリシステムおよび不揮発性メモリ制御方法 Download PDFInfo
- Publication number
- JP2007242068A JP2007242068A JP2006058549A JP2006058549A JP2007242068A JP 2007242068 A JP2007242068 A JP 2007242068A JP 2006058549 A JP2006058549 A JP 2006058549A JP 2006058549 A JP2006058549 A JP 2006058549A JP 2007242068 A JP2007242068 A JP 2007242068A
- Authority
- JP
- Japan
- Prior art keywords
- memory cell
- read
- limit voltage
- power supply
- voltage
- 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.)
- Abandoned
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/22—Safety or protection circuits preventing unauthorised or accidental access to memory cells
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C5/00—Details of stores covered by group G11C11/00
- G11C5/14—Power supply arrangements, e.g. power down, chip selection or deselection, layout of wirings or power grids, or multiple supply levels
- G11C5/143—Detection of memory cassette insertion or removal; Continuity checks of supply or ground lines; Detection of supply variations, interruptions or levels ; Switching between alternative supplies
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/30—Power supply circuits
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Power Engineering (AREA)
- Read Only Memory (AREA)
Abstract
【課題】駆動電圧生成回路(昇圧回路)を大規模化することなく動作保証外の電源電圧による不揮発性メモリへの読み出し動作を禁止することができる不揮発性メモリシステムを提供する。
【解決手段】電源電圧が予め決められた下限電圧以下である場合に読み出し誤りが生じるレベルの電荷をフローティングゲートに蓄積した不揮発性メモリである下限電圧検知用メモリセルを用意する。下限電圧検知用メモリセルの読み出し動作において読み出し誤りが生じないことを条件に、通常メモリセルの読み出し動作を行う。
【選択図】図1
【解決手段】電源電圧が予め決められた下限電圧以下である場合に読み出し誤りが生じるレベルの電荷をフローティングゲートに蓄積した不揮発性メモリである下限電圧検知用メモリセルを用意する。下限電圧検知用メモリセルの読み出し動作において読み出し誤りが生じないことを条件に、通常メモリセルの読み出し動作を行う。
【選択図】図1
Description
本発明は、不正な環境での読み出し動作を禁止する不揮発性メモリシステムおよび不揮発性メモリ制御方法に関する。
例えば、IC(Integrated Circuit)カード等のセキュリティLSI(Large Scale Integration)では、他の機器とのデータのやり取りには暗号化したデータで行なうため、LSI内部に暗号エンジンを搭載し、多くの場合、その鍵等の機密情報を格納するために不揮発性メモリを搭載している。そして、セキュリティLSIは、機密情報を不正に得ようとする攻撃者によって種々の方法で攻撃される。攻撃の手法としは、例えば、以下に示すものがある。
(1)仕様書で定義されている範囲外の動作環境(電圧、クロック周波数等)で動作させる事によって誤動作を起こさせ、その誤動作による結果を解析する事によって機密情報(暗号鍵等)を取り出す。
(2)複数の入力値で暗号エンジンを動作させている時に、消費電流波形を取得し、その電流波形を統計処理する事により暗号鍵を取り出す(DPA攻撃:Differential Power Analysis )。
(3)LSIを開封して、暗号エンジンを動作させている時に、レーザー照射等によって誤動作を起させ、その結果の解析により暗号鍵を取り出す(DFA攻撃:Differential Fault Analysis )等があり、各々に対して対抗策を搭載している。
(1)仕様書で定義されている範囲外の動作環境(電圧、クロック周波数等)で動作させる事によって誤動作を起こさせ、その誤動作による結果を解析する事によって機密情報(暗号鍵等)を取り出す。
(2)複数の入力値で暗号エンジンを動作させている時に、消費電流波形を取得し、その電流波形を統計処理する事により暗号鍵を取り出す(DPA攻撃:Differential Power Analysis )。
(3)LSIを開封して、暗号エンジンを動作させている時に、レーザー照射等によって誤動作を起させ、その結果の解析により暗号鍵を取り出す(DFA攻撃:Differential Fault Analysis )等があり、各々に対して対抗策を搭載している。
上記(2)、(3)の攻撃に関しては、暗号エンジンの論理回路に対抗策を載せたり、暗号エンジンの周辺に対抗策を載せたりして対処している。
上記(1)の攻撃に関しては、電圧検知回路や周波数検知回路等を搭載し、定義されている範囲外の電圧・周波数等が入力された時には、検知回路が検知信号を発行し、それを受けてシステム側でリセットを掛ける等を行なって、攻撃に対処する。
上記(1)の攻撃に関しては、電圧検知回路や周波数検知回路等を搭載し、定義されている範囲外の電圧・周波数等が入力された時には、検知回路が検知信号を発行し、それを受けてシステム側でリセットを掛ける等を行なって、攻撃に対処する。
電圧検知回路や周波数検知回路、また最近では定義されている温度範囲外での攻撃に対処するために、温度検知回路等も搭載されている製品もある。
例えば、図20に示すように、電源電圧の仕様が 2.50V±10% の場合、動作保証範囲は 2.25V〜2.75Vであるが、設計・評価においては、例えば 0.1Vのマージンを見込んで、2.15V〜2.85Vの範囲内で設計・評価を行なう。そして、保証範囲外の電圧の供給で誤動作を起こさせて、誤動作の出力結果から機密情報を取り出す攻撃に対処するために、例えば、2.15V以下または2.85V以上を検知する電圧検知回路を搭載し、その検知回路が保証範囲外の電圧を検知した場合、CPUに対してリセット信号を発生する構成を取る。外部から供給されるシステムクロックの周波数や動作温度に対しても、同様の対策が取られ、これによって、保証されていない動作環境での動作によって、誤動作を起こさせ、その誤動作に起因した演算結果から機密情報を取り出す攻撃に対処できる。
例えば、図20に示すように、電源電圧の仕様が 2.50V±10% の場合、動作保証範囲は 2.25V〜2.75Vであるが、設計・評価においては、例えば 0.1Vのマージンを見込んで、2.15V〜2.85Vの範囲内で設計・評価を行なう。そして、保証範囲外の電圧の供給で誤動作を起こさせて、誤動作の出力結果から機密情報を取り出す攻撃に対処するために、例えば、2.15V以下または2.85V以上を検知する電圧検知回路を搭載し、その検知回路が保証範囲外の電圧を検知した場合、CPUに対してリセット信号を発生する構成を取る。外部から供給されるシステムクロックの周波数や動作温度に対しても、同様の対策が取られ、これによって、保証されていない動作環境での動作によって、誤動作を起こさせ、その誤動作に起因した演算結果から機密情報を取り出す攻撃に対処できる。
しかし、これらの検知回路はいずれもアナログ回路で設計されるため、プロセスバラツキを持つ。このため、例えば下限側の検知する電圧を 2.15V に設計する場合、プロセスバラツキを考慮すると、その分布の上限が 2.15V になる様に設計する。この時、プロセスバラツキによる分布幅を例えば 0.1V とした時、電圧検出回路の電圧の下限は 2.05V となる。そして、セキュリティ用途に使われるLSIの場合、電圧検知回路によって検知される電圧までは、セキュリティ上、誤動作が発生しない様に動作を保証する必要があるため、2.05V までは正常に動作する様に設計する必要がある。
低電圧で設計する場合、問題となる回路ブロックの1つが不揮発性メモリである。不揮発性メモリとしてEEPROM(Electronically Erasable and Programmable Read Only Memory)を使用している場合、EEPROMは消去・書込に十数ボルトの高電圧を必要とするため昇圧回路が必要となるが、電源電圧が低くなると昇圧回路の回路規模は大きくなり、面積増加をもたらす。また、プロセス世代の微細化により電源電圧が低下した場合、それに伴ってその電圧で動作する周辺回路の電源電圧も低下する。
例えば、図21に示すように、電源電圧が 1.8V±10% の場合、電圧保証範囲は 1.62V〜1.98V となる。周辺回路の回路設計においては、電圧保証範囲での動作を保証するために、動作マージンを見込んで例えば 1.50V〜 2.10V で設計する。そして、電圧検知回路の設定電圧を 1.50V と 2.10V に設定する場合、電圧検知回路のバラツキを 0.1V とすると、検知回路の下限側の検出電圧は 1.4V となり、これを電源とする周辺回路は電圧検知の下限の 1.4V まで動作することが必要となる。
例えば、図21に示すように、電源電圧が 1.8V±10% の場合、電圧保証範囲は 1.62V〜1.98V となる。周辺回路の回路設計においては、電圧保証範囲での動作を保証するために、動作マージンを見込んで例えば 1.50V〜 2.10V で設計する。そして、電圧検知回路の設定電圧を 1.50V と 2.10V に設定する場合、電圧検知回路のバラツキを 0.1V とすると、検知回路の下限側の検出電圧は 1.4V となり、これを電源とする周辺回路は電圧検知の下限の 1.4V まで動作することが必要となる。
しかし、暗号鍵等のセキュリティ情報を格納する不揮発性メモリにEEPROMを用いる場合、消去・書込に必要な高電圧を発生するための昇圧回路の設計やその電圧制御をするための基準電圧発生回路(BGR)は、電源電圧が低下すると低い電圧で必要な電圧を発生するために昇圧回路等の面積の増大をもたらす。
また、読出においては、微細化によって電源電圧が低くなっても動作周波数は変わらなかったり、逆に高くなったりする。しかし、電源電圧をそのままワード線電圧に使っている場合、電源電圧が低下すると、セル電流が減少して要求されるアクセスタイムを実現できないため、昇圧電圧をワード線に印加して読出を行なう必要が生じる。
そして、誤動作による攻撃に対抗するために、電圧検知回路の下限まで動作保証するためには、昇圧回路の面積を更に大きくする必要がある。また、LSIに供給されるクロック周波数の仕様が固定ではない場合、発振回路を搭載して昇圧回路に供給する必要があるが、電圧検知回路の下限までほぼ一定の発振周波数を得るためには、発振回路にも対策回路を付加する必要が生じ、発振回路も大きくなる。
更に、温度検知回路はバラツキを押さえる事が困難な回路で、仕様の温度範囲に温度検知回路のバラツキを加えた温度範囲まで動作保証するためには、電流値の小さくなる高温側では面積増をもたらし、電流値の大きくなる低温側では消費電流の仕様を満たす事が困難になる。
また、読出においては、微細化によって電源電圧が低くなっても動作周波数は変わらなかったり、逆に高くなったりする。しかし、電源電圧をそのままワード線電圧に使っている場合、電源電圧が低下すると、セル電流が減少して要求されるアクセスタイムを実現できないため、昇圧電圧をワード線に印加して読出を行なう必要が生じる。
そして、誤動作による攻撃に対抗するために、電圧検知回路の下限まで動作保証するためには、昇圧回路の面積を更に大きくする必要がある。また、LSIに供給されるクロック周波数の仕様が固定ではない場合、発振回路を搭載して昇圧回路に供給する必要があるが、電圧検知回路の下限までほぼ一定の発振周波数を得るためには、発振回路にも対策回路を付加する必要が生じ、発振回路も大きくなる。
更に、温度検知回路はバラツキを押さえる事が困難な回路で、仕様の温度範囲に温度検知回路のバラツキを加えた温度範囲まで動作保証するためには、電流値の小さくなる高温側では面積増をもたらし、電流値の大きくなる低温側では消費電流の仕様を満たす事が困難になる。
本発明は上述した従来技術の問題点に鑑みてなされ、駆動電圧生成回路(昇圧回路)を大規模化することなく、設計マージンを加味しながら、動作保証外の電源電圧による不揮発性メモリへの読み出し動作を禁止することができる不揮発性メモリシステムおよび不揮発性メモリ制御方法を提供することを目的とする。
上述した従来技術の問題点を解決し、上述した目的を達成するため、第1の観点の発明の不揮発性メモリシステムは、電源電圧を基に駆動電圧を生成する駆動電圧生成回路と、記憶するデータに応じた極性の電荷を、前記駆動電圧生成回路が生成した前記駆動用電圧に応じたレベルでフローティングゲートに蓄積して記憶を行い、読み出しおよび書き込みの対象となる不揮発性メモリである複数の通常メモリセルと、前記電源電圧が予め決められた下限電圧以下である場合に読み出し誤りが生じるレベルの電荷をフローティングゲートに蓄積した不揮発性メモリである下限電圧検知用メモリセルと、前記下限電圧検知用メモリセルの読み出し動作において読み出し誤りが生じていない場合に、前記通常メモリセルの読み出し結果を出力する制御回路とを有する。
また、第2の観点の発明のメモリ制御方法は、記憶するデータに応じた極性の電荷を、前記駆動電圧生成回路が生成した前記駆動用電圧に応じたレベルでフローティングゲートに蓄積して記憶を行う不揮発性メモリである複数の通常メモリセルの読み出し動作を行うメモリ制御方法であって、電源電圧が予め決められた下限電圧以下である場合に読み出し誤りが生じるレベルの電荷がフローティングゲートに蓄積された不揮発性メモリである下限電圧検知用メモリセルの読み出し動作を行う第1の工程と、前記第1の工程における前記下限電圧検知用メモリセルの読み出し動作において読み出し誤りが生じたか否かを判断する第2の工程と、前記第2の工程において読み出し誤りが生じていないと判断した場合に、前記通常メモリセルの読み出し結果を出力する第3の工程とを有する。
本発明によれば、駆動電圧生成回路(昇圧回路)を大規模化することなく、設計マージンを加味しながら、動作保証外の電源電圧による不揮発性メモリへの読み出し動作を禁止することができる不揮発性メモリシステムおよび不揮発性メモリ制御方法を提供することができる。
以下、本発明の実施形態に係わる不揮発性メモリシステムについて説明する。
先ず、本実施形態の構成要素と、本発明の構成要素との対応関係を説明する。
通常メモリセルMCが本発明の通常メモリセルの一例であり、検知用メモリセルDMC0が本発明の下限電圧検知用メモリセルの一例であり、検知用メモリセルDMC1が本発明の上限電圧検知用メモリセルの一例である。
また、昇圧回路8が本発明の駆動電圧生成回路の一例である。
また、ビット制御回路22およびCPU36が本発明の制御回路の一例である。
先ず、本実施形態の構成要素と、本発明の構成要素との対応関係を説明する。
通常メモリセルMCが本発明の通常メモリセルの一例であり、検知用メモリセルDMC0が本発明の下限電圧検知用メモリセルの一例であり、検知用メモリセルDMC1が本発明の上限電圧検知用メモリセルの一例である。
また、昇圧回路8が本発明の駆動電圧生成回路の一例である。
また、ビット制御回路22およびCPU36が本発明の制御回路の一例である。
図1は、本発明の実施形態に係わる不揮発性メモリシステム1の全体構成図である。
図1に示すように、不揮発性メモリシステム1は、例えば、電源6、昇圧回路8、コマンドレジスタ10、アドレスバッファ12、ロウデコーダ14、ワード制御回路16、カラムデコーダ20、ビット制御回路22、センスアンプ23、メモリセルアレイ24、誤動作検知回路28、データレジスタ30、CPU(Central Processing Unit)36およびROM(Read Only Memory)38を有する。
図1に示すように、不揮発性メモリシステム1は、例えば、電源6、昇圧回路8、コマンドレジスタ10、アドレスバッファ12、ロウデコーダ14、ワード制御回路16、カラムデコーダ20、ビット制御回路22、センスアンプ23、メモリセルアレイ24、誤動作検知回路28、データレジスタ30、CPU(Central Processing Unit)36およびROM(Read Only Memory)38を有する。
電源6は、電源電圧Vccを不揮発性メモリシステム1内の各回路に供給する。本実施形態において、電源電圧Vccは、例えば、1.80Vである。
昇圧回路8は、電源6が提供する電源電圧Vccをα倍に昇圧して電圧α*Vccを生成し、これをメモリセルアレイ24に供給する。本実施形態において、電圧α*Vccは、例えば、20Vである。
また、昇圧回路8は、電源6が提供する電源電圧Vccをβ倍に昇圧して電圧β*Vccを生成し、これをメモリセルアレイ24に供給する。本実施形態において、電圧β*Vccは、例えば、5Vである。
昇圧回路8は、電源6が提供する電源電圧Vccをα倍に昇圧して電圧α*Vccを生成し、これをメモリセルアレイ24に供給する。本実施形態において、電圧α*Vccは、例えば、20Vである。
また、昇圧回路8は、電源6が提供する電源電圧Vccをβ倍に昇圧して電圧β*Vccを生成し、これをメモリセルアレイ24に供給する。本実施形態において、電圧β*Vccは、例えば、5Vである。
コマンドレジスタ10は、メモリセルアレイ24に対してのアクセスに関するコマンドを記憶する。当該コマンドは、例えば、データバス32を介してCPU36によって書き込まれる。
アドレスバッファ12は、コマンドレジスタ10に記憶されたコマンド内のアドレスのうち、ロウアドレスをロウデコーダ14に出力し、カラムアドレスをカラムデコーダ20に出力する。
ロウデコーダ14は、アドレスバッファ12から入力したロウアドレスをデコードし、そのデコード結果をワード制御回路16に出力する。
ワード制御回路16は、ロウデコーダ14からのデコード結果を基に、メモリセルアレイ24内のアクセス対象のメモリセル(ターゲットメモリセル)のワード線をアクティブにする。
アドレスバッファ12は、コマンドレジスタ10に記憶されたコマンド内のアドレスのうち、ロウアドレスをロウデコーダ14に出力し、カラムアドレスをカラムデコーダ20に出力する。
ロウデコーダ14は、アドレスバッファ12から入力したロウアドレスをデコードし、そのデコード結果をワード制御回路16に出力する。
ワード制御回路16は、ロウデコーダ14からのデコード結果を基に、メモリセルアレイ24内のアクセス対象のメモリセル(ターゲットメモリセル)のワード線をアクティブにする。
カラムデコーダ20は、アドレスバッファ12から入力したカラムアドレスをデコードし、そのデコード結果をセンスアンプ23に出力する。
ビット制御回路22は、カラムデコーダ20からのデコード結果を基に、メモリセルアレイ24内のターゲットメモリセルのビット線をアクティブにする。
ターゲットメモリセルに対応したビット線は、そのターゲットメモリセルの読み出し時に、そのターゲットメモリセルのフローティングゲートFGの荷電状態、すなわちデータ「0」,「1」のどちらを記憶しているかに応じた電位となる。
センスアンプ23は、ターゲットメモリセルに対応した上記ビット線の上記電位を検出する。
ビット制御回路22は、カラムデコーダ20からのデコード結果を基に、メモリセルアレイ24内のターゲットメモリセルのビット線をアクティブにする。
ターゲットメモリセルに対応したビット線は、そのターゲットメモリセルの読み出し時に、そのターゲットメモリセルのフローティングゲートFGの荷電状態、すなわちデータ「0」,「1」のどちらを記憶しているかに応じた電位となる。
センスアンプ23は、ターゲットメモリセルに対応した上記ビット線の上記電位を検出する。
メモリセルアレイ24は、複数のメモリセルをマトリックス状に配置して構成される。
メモリセルアレイ24は、図2に示すように、通常メモリセルMCと、検知用メモリセルDMCとを有する。
通常メモリセルMCは、書き込みおよび読み出し動作の対象となるメモリセルである。
検知用メモリセルDMCは、図2に示すように、不揮発性メモリシステム1の出荷時に、予め「1」が記憶されている検知用メモリセルDMC1と、予め「0」が記憶されている検知用メモリセルDMC0とを有する。
メモリセルアレイ24は、図2に示すように、通常メモリセルMCと、検知用メモリセルDMCとを有する。
通常メモリセルMCは、書き込みおよび読み出し動作の対象となるメモリセルである。
検知用メモリセルDMCは、図2に示すように、不揮発性メモリシステム1の出荷時に、予め「1」が記憶されている検知用メモリセルDMC1と、予め「0」が記憶されている検知用メモリセルDMC0とを有する。
本実施形態では、出荷前に、電源電圧Vccが上限電圧Vcc(max)以下の場合に読み出し結果が「1」になり(正常動作し)、電源電圧Vccが上限電圧Vcc(max)を越えた場合に読み出し結果が「0」になる(誤動作する)ように、通常メモリセルに対して「1」を書き込む場合に比べて少ない電子が、検知用メモリセルDMC1に注入されている。
本実施形態では、出荷前に、電源電圧Vccが下限電圧Vcc(mim)以上の場合に読み出し結果が「0」になり(正常動作し)、電源電圧Vccが下限電圧Vcc(mim)未満の場合に読み出し結果が「1」になる(誤動作する)ように、通常メモリセルに対して「0」を書き込む場合に比べて検知用メモリセルDMC0の電子放出量を少なくしている。
本実施形態では、出荷前に、電源電圧Vccが下限電圧Vcc(mim)以上の場合に読み出し結果が「0」になり(正常動作し)、電源電圧Vccが下限電圧Vcc(mim)未満の場合に読み出し結果が「1」になる(誤動作する)ように、通常メモリセルに対して「0」を書き込む場合に比べて検知用メモリセルDMC0の電子放出量を少なくしている。
以下、メモリセルへの記憶について説明する。
[通常メモリセルMCへの「1」書き込み動作]
図3は、通常メモリセルMCへの「1」書き込み動作を説明するための図である。
図3に示すように、通常メモリセルMCは、基板P上にメモリトランジスタMTと、セレクトトランジスタSTとを形成している。
セレクトトランジスタSTのセレクトゲートSGには、図1に示すワード制御回路16の制御によって昇圧回路8からの電圧α*Vccが印加される。これにより、セレクトトランジスタSTがオン(ドレインとソース間が導通状態)になる。
また、セレクトトランジスタSTのドレイン電極DNは、ビット制御回路22の制御によって、0Vに保持される。
また、メモリトランジスタMTのコントロールゲートCGには、ワード制御回路16からの制御によって、昇圧回路8からの電圧α*Vccが印加される。
これにより、図3に示すように、セレクトトランジスタSTの拡散層(ドレイン)A3から、拡散層A2を介して、トンネル部からフローティングゲートFGに電子が注入される。
そして、フローティングゲートFGに電子を注入する度に、フローティングゲートFGに注入された電子レベルを検証(ベリファイ)し、電子レベルが十分(消去レベルが十分)になったと判断すると、当該「1」書き込み動作を終了する。
[通常メモリセルMCへの「1」書き込み動作]
図3は、通常メモリセルMCへの「1」書き込み動作を説明するための図である。
図3に示すように、通常メモリセルMCは、基板P上にメモリトランジスタMTと、セレクトトランジスタSTとを形成している。
セレクトトランジスタSTのセレクトゲートSGには、図1に示すワード制御回路16の制御によって昇圧回路8からの電圧α*Vccが印加される。これにより、セレクトトランジスタSTがオン(ドレインとソース間が導通状態)になる。
また、セレクトトランジスタSTのドレイン電極DNは、ビット制御回路22の制御によって、0Vに保持される。
また、メモリトランジスタMTのコントロールゲートCGには、ワード制御回路16からの制御によって、昇圧回路8からの電圧α*Vccが印加される。
これにより、図3に示すように、セレクトトランジスタSTの拡散層(ドレイン)A3から、拡散層A2を介して、トンネル部からフローティングゲートFGに電子が注入される。
そして、フローティングゲートFGに電子を注入する度に、フローティングゲートFGに注入された電子レベルを検証(ベリファイ)し、電子レベルが十分(消去レベルが十分)になったと判断すると、当該「1」書き込み動作を終了する。
[通常メモリセルMCからの「1」読み出し動作]
図5は、通常メモリセルMCからの「1」読み出し動作を説明するための図である。
図5に示すように、セレクトトランジスタSTのセレクトゲートSGには、図1に示すワード制御回路16の制御によって、昇圧回路8からの電圧β*Vccが印加される。これにより、図5に示すように、セレクトトランジスタSTがオン状態になる。
また、メモリトランジスタMTのフローティングゲートFGには十分な量の電子が注入されているため、メモリトランジスタMTはオフ状態(ドレインとソース間が非導通状態)になっている。
これにより、ドレイン電極DNは、プルアップレベルの1Vを維持する。
すなわち、通常メモリセルMCに「1」が記憶されている場合には、メモリトランジスタMTがオフ状態となり、セル電流は流れず、セレクトトランジスタSTのドレイン電極DNが1Vとなる。このことをセンスアンプ23において検出することで、通常メモリセルMCに「1」が記憶されていることを判定できる。
図5は、通常メモリセルMCからの「1」読み出し動作を説明するための図である。
図5に示すように、セレクトトランジスタSTのセレクトゲートSGには、図1に示すワード制御回路16の制御によって、昇圧回路8からの電圧β*Vccが印加される。これにより、図5に示すように、セレクトトランジスタSTがオン状態になる。
また、メモリトランジスタMTのフローティングゲートFGには十分な量の電子が注入されているため、メモリトランジスタMTはオフ状態(ドレインとソース間が非導通状態)になっている。
これにより、ドレイン電極DNは、プルアップレベルの1Vを維持する。
すなわち、通常メモリセルMCに「1」が記憶されている場合には、メモリトランジスタMTがオフ状態となり、セル電流は流れず、セレクトトランジスタSTのドレイン電極DNが1Vとなる。このことをセンスアンプ23において検出することで、通常メモリセルMCに「1」が記憶されていることを判定できる。
[通常メモリセルMCへの「0」書き込み動作]
図6は、通常メモリセルMCへの「0」書き込み動作を説明するための図である。
セレクトトランジスタSTのセレクトゲートSGには、図1に示すワード制御回路16の制御によって昇圧回路8からの電圧α*Vccが印加される。これにより、セレクトトランジスタSTがオンになり(ドレインとソース間が導通状態)になる。
また、セレクトトランジスタSTのドレイン電極DNには、ビット制御回路22の制御によって、昇圧回路8からの電圧α*Vccが印加される。
また、メモリトランジスタMTのコントロールゲートCGは、ワード制御回路16からの制御によって、0Vに保持される。
これにより、図6に示すように、メモリトランジスタMTのフローティングゲートFG内の電子が、トンネル部、拡散領域A2を介して、拡散領域A3に放出される。
そして、フローティングゲートFGから電子が放出される度に、フローティングゲートFGが放出した電子レベルを検証(ベリファイ)し、電子放出レベルが十分(消去レベルが十分)になったと判断すると、当該「0」書き込み動作を終了する。
図6は、通常メモリセルMCへの「0」書き込み動作を説明するための図である。
セレクトトランジスタSTのセレクトゲートSGには、図1に示すワード制御回路16の制御によって昇圧回路8からの電圧α*Vccが印加される。これにより、セレクトトランジスタSTがオンになり(ドレインとソース間が導通状態)になる。
また、セレクトトランジスタSTのドレイン電極DNには、ビット制御回路22の制御によって、昇圧回路8からの電圧α*Vccが印加される。
また、メモリトランジスタMTのコントロールゲートCGは、ワード制御回路16からの制御によって、0Vに保持される。
これにより、図6に示すように、メモリトランジスタMTのフローティングゲートFG内の電子が、トンネル部、拡散領域A2を介して、拡散領域A3に放出される。
そして、フローティングゲートFGから電子が放出される度に、フローティングゲートFGが放出した電子レベルを検証(ベリファイ)し、電子放出レベルが十分(消去レベルが十分)になったと判断すると、当該「0」書き込み動作を終了する。
[通常メモリセルMCからの「0」読み出し動作]
図8は、通常メモリセルMCからの「0」読み出し動作を説明するための図である。
図8に示すように、セレクトトランジスタSTのセレクトゲートSGには、図1に示すワード制御回路16の制御によって、昇圧回路8からの電圧β*Vccが印加される。これにより、図8に示すように、セレクトトランジスタSTがオン状態になる。
また、メモリトランジスタMTのフローティングゲートFGから十分な量の電子が放出されているため、メモリトランジスタMTはディプレッション型になっており、オン状態になっている。
これにより、拡散領域A3から、拡散領域A2を介して、拡散領域A1に向けてセル電流が流れ、このセル電流による電圧降下によってセレクトトランジスタSTのドレイン電極DNは約0.2Vと低い電位になる。
すなわち、通常メモリセルMCに「0」が記憶されている場合には、メモリトランジスタMTがオン状態となり、セル電流が流れ、セレクトトランジスタSTのドレイン電極DNが0.2Vとなる。このことをセンスアンプ23において検出することで、通常メモリセルMCに「0」が記憶されていることを判定できる。
図8は、通常メモリセルMCからの「0」読み出し動作を説明するための図である。
図8に示すように、セレクトトランジスタSTのセレクトゲートSGには、図1に示すワード制御回路16の制御によって、昇圧回路8からの電圧β*Vccが印加される。これにより、図8に示すように、セレクトトランジスタSTがオン状態になる。
また、メモリトランジスタMTのフローティングゲートFGから十分な量の電子が放出されているため、メモリトランジスタMTはディプレッション型になっており、オン状態になっている。
これにより、拡散領域A3から、拡散領域A2を介して、拡散領域A1に向けてセル電流が流れ、このセル電流による電圧降下によってセレクトトランジスタSTのドレイン電極DNは約0.2Vと低い電位になる。
すなわち、通常メモリセルMCに「0」が記憶されている場合には、メモリトランジスタMTがオン状態となり、セル電流が流れ、セレクトトランジスタSTのドレイン電極DNが0.2Vとなる。このことをセンスアンプ23において検出することで、通常メモリセルMCに「0」が記憶されていることを判定できる。
以下、不揮発性メモリシステム1の出荷前に行われる検知用メモリセルDMC1,0に対する書き込み動作を説明する。
[検知用メモリセルDMC1に対する「1」書き込み]
図9は、検知用メモリセルDMC1に対する「1」書き込み動作を説明するための図である。
当該動作は、例えば、出荷判定を行なうメモリテスターやロジックテスターで行なわれる。
ステップST1:
図3を用いて前述した通常メモリセルMCに対する「1」書き込み動作と同様に、検知用メモリセルDMC1のメモリトランジスタMTのフローティングゲートFGに電子を注入する。
このとき、フローティングゲートFGに対する1回の電子注入は、通常メモリセルMCに対する「1」書き込みに比べて短い時間(短いパルス)で、少量ずつ繰り返し行われる。
フローティングゲートFGへの電子注入が所定時間終了すると「ステップST2に進む。
[検知用メモリセルDMC1に対する「1」書き込み]
図9は、検知用メモリセルDMC1に対する「1」書き込み動作を説明するための図である。
当該動作は、例えば、出荷判定を行なうメモリテスターやロジックテスターで行なわれる。
ステップST1:
図3を用いて前述した通常メモリセルMCに対する「1」書き込み動作と同様に、検知用メモリセルDMC1のメモリトランジスタMTのフローティングゲートFGに電子を注入する。
このとき、フローティングゲートFGに対する1回の電子注入は、通常メモリセルMCに対する「1」書き込みに比べて短い時間(短いパルス)で、少量ずつ繰り返し行われる。
フローティングゲートFGへの電子注入が所定時間終了すると「ステップST2に進む。
ステップST2:
電源6あるいは他の電源から、設計マージンを見込んだ上限電圧Vcc(max)がメモリセルアレイ24に供給される。この上限電圧Vcc(max)は、高精度に設定される。
そして、図5を用いて説明したのと同様な手順で検知用メモリセルDMC1からデータを読み出し、誤動作検知回路28において、センスアンプ23の検出結果を基に、読み出し結果が「0」および「1」のいずれであるかを決定する。
電源6あるいは他の電源から、設計マージンを見込んだ上限電圧Vcc(max)がメモリセルアレイ24に供給される。この上限電圧Vcc(max)は、高精度に設定される。
そして、図5を用いて説明したのと同様な手順で検知用メモリセルDMC1からデータを読み出し、誤動作検知回路28において、センスアンプ23の検出結果を基に、読み出し結果が「0」および「1」のいずれであるかを決定する。
ステップST3:
誤動作検知回路28が、ステップST2において読み出し結果が「1」であると検出した場合、すなわち、「セル電流<所定の判定電流」であると検出した場合に、処理を終了する。
一方、誤動作検知回路28は、ステップST2において読み出し結果が「0」であると検出した場合にはステップST1の処理に戻る。
すなわち、メモリトランジスタMTのフローティングゲートFGに電子を注入する。当該注入された電子の量は、図10に示すように、図5に示す通常メモリセルMCに対する「1」書き込みの場合に比べて少ない。
誤動作検知回路28が、ステップST2において読み出し結果が「1」であると検出した場合、すなわち、「セル電流<所定の判定電流」であると検出した場合に、処理を終了する。
一方、誤動作検知回路28は、ステップST2において読み出し結果が「0」であると検出した場合にはステップST1の処理に戻る。
すなわち、メモリトランジスタMTのフローティングゲートFGに電子を注入する。当該注入された電子の量は、図10に示すように、図5に示す通常メモリセルMCに対する「1」書き込みの場合に比べて少ない。
不揮発性メモリシステム1の出荷後に、例えば、電源6の電源電圧Vccが上昇して上限電圧Vcc(max)を超えると、通常メモリセルMCでは誤読み出しは生じないが、図11に示すように、検知用メモリセルDMC1の読み出し結果が「0」になり、誤動作検知回路28において誤動作が検出される。
これにより、誤動作検知回路28がリセット信号RをCPU36に出力し、CPU36がリセット動作を開始する。
このように検知用メモリセルDMC1でのみ誤読み出しが生じるのは、図12に示すように、検知用メモリセルDMC1のフローティングゲートFGに注入されている電子の量は、「1」を記憶する通常メモリセルMCのフローティングゲートFGに注入されている電子の量に比べて少ないためである。すなわち、検知用メモリセルDMC1は、「1」を記憶する通常メモリセルMCに比べて、メモリトランジスタMTのしきい値が低く、電源電圧Vccが上昇して図12に示す拡散層A2の電位が上昇すると、検知用メモリセルDMC1のメモリトランジスタMTが先にオン状態になり、そのセル電流が判定電流を越えるが、上限電圧Vcc(max)で「1」と読まれるぎりぎりの量に設定されているためである。
これにより、誤動作検知回路28がリセット信号RをCPU36に出力し、CPU36がリセット動作を開始する。
このように検知用メモリセルDMC1でのみ誤読み出しが生じるのは、図12に示すように、検知用メモリセルDMC1のフローティングゲートFGに注入されている電子の量は、「1」を記憶する通常メモリセルMCのフローティングゲートFGに注入されている電子の量に比べて少ないためである。すなわち、検知用メモリセルDMC1は、「1」を記憶する通常メモリセルMCに比べて、メモリトランジスタMTのしきい値が低く、電源電圧Vccが上昇して図12に示す拡散層A2の電位が上昇すると、検知用メモリセルDMC1のメモリトランジスタMTが先にオン状態になり、そのセル電流が判定電流を越えるが、上限電圧Vcc(max)で「1」と読まれるぎりぎりの量に設定されているためである。
[検知用メモリセルDMC0に対する「0」書き込み]
図13は、検知用メモリセルDMC0に対する「0」書き込み動作を説明するための図である。
当該動作は、例えば、出荷判定を行なうメモリテスターやロジックテスターで行なわれる。
ステップST11:
図6を用いて前述した通常メモリセルMCに対する「0」書き込み動作と同様に、検知用メモリセルDMC0のメモリトランジスタMTのフローティングゲートFGから電子を放出する。
このとき、フローティングゲートFGからの1回の電子放出は、通常メモリセルMCに対する「0」書き込みに比べて短い時間(短いパルス)で、少量ずつ繰り返し行われる。
フローティングゲートFGからの電子放出が所定時間終了すると、ステップST12に進む。
図13は、検知用メモリセルDMC0に対する「0」書き込み動作を説明するための図である。
当該動作は、例えば、出荷判定を行なうメモリテスターやロジックテスターで行なわれる。
ステップST11:
図6を用いて前述した通常メモリセルMCに対する「0」書き込み動作と同様に、検知用メモリセルDMC0のメモリトランジスタMTのフローティングゲートFGから電子を放出する。
このとき、フローティングゲートFGからの1回の電子放出は、通常メモリセルMCに対する「0」書き込みに比べて短い時間(短いパルス)で、少量ずつ繰り返し行われる。
フローティングゲートFGからの電子放出が所定時間終了すると、ステップST12に進む。
ステップST12:
電源6あるいは他の電源から、設計マージンを見込んだ下限電圧Vcc(mim)がメモリセルアレイ24に供給される。この下限電圧Vcc(mim)は、高精度に設定される。
そして、図8を用いて説明したのと同様な手順で検知用メモリセルDMC0からデータを読み出し、誤動作検知回路28において、センスアンプ23の検出結果を基に、読み出し結果が「0」および「1」のいずれであるかを決定する。
電源6あるいは他の電源から、設計マージンを見込んだ下限電圧Vcc(mim)がメモリセルアレイ24に供給される。この下限電圧Vcc(mim)は、高精度に設定される。
そして、図8を用いて説明したのと同様な手順で検知用メモリセルDMC0からデータを読み出し、誤動作検知回路28において、センスアンプ23の検出結果を基に、読み出し結果が「0」および「1」のいずれであるかを決定する。
ステップST13:
誤動作検知回路28が、ステップST12において読み出し結果が「0」であると検出した場合、すなわち、「セル電流>所定の判定電流」であると検出した場合に、処理を終了する。
一方、誤動作検知回路28は、ステップST12において読み出し結果が「1」であると検出した場合にはステップST11の処理に戻る。
すなわち、メモリトランジスタMTのフローティングゲートFGから電子を放出する。
当該放出された電子によって生じる正孔の量は、図14に示すように、図7に示す通常メモリセルMCに対する「0」書き込みの場合に比べて少ない。
誤動作検知回路28が、ステップST12において読み出し結果が「0」であると検出した場合、すなわち、「セル電流>所定の判定電流」であると検出した場合に、処理を終了する。
一方、誤動作検知回路28は、ステップST12において読み出し結果が「1」であると検出した場合にはステップST11の処理に戻る。
すなわち、メモリトランジスタMTのフローティングゲートFGから電子を放出する。
当該放出された電子によって生じる正孔の量は、図14に示すように、図7に示す通常メモリセルMCに対する「0」書き込みの場合に比べて少ない。
不揮発性メモリシステム1の出荷後に、例えば、電源6の電源電圧Vccが下降して下限電圧Vcc(min)以下にすると、通常メモリセルMCでは誤読み出しは生じないが、図15に示すように、検知用メモリセルDMC0の読み出し結果が「1」になり、誤動作検知回路28において誤動作が検出される。
これにより、誤動作検知回路28がリセット信号RをCPU36に出力し、CPU36がリセット動作を開始する。
このように検知用メモリセルDMC0でのみ誤読み出しが生じるのは、図16に示すように、検知用メモリセルDMC0のフローティングゲートFGから放出された電子の量は、「0」を記憶する通常メモリセルMCのフローティングゲートFGからの電子の量に比べて少ないためである。すなわち、検知用メモリセルDMC0は、「0」を記憶する通常メモリセルMCに比べて、メモリトランジスタMTのしきい値が高く、電源電圧Vccが下昇して図12に示す拡散層A2の電位が下降すると、検知用メモリセルDMC0のメモリトランジスタMTを流れるセル電流が判定電流より低くなるためである。
これにより、誤動作検知回路28がリセット信号RをCPU36に出力し、CPU36がリセット動作を開始する。
このように検知用メモリセルDMC0でのみ誤読み出しが生じるのは、図16に示すように、検知用メモリセルDMC0のフローティングゲートFGから放出された電子の量は、「0」を記憶する通常メモリセルMCのフローティングゲートFGからの電子の量に比べて少ないためである。すなわち、検知用メモリセルDMC0は、「0」を記憶する通常メモリセルMCに比べて、メモリトランジスタMTのしきい値が高く、電源電圧Vccが下昇して図12に示す拡散層A2の電位が下降すると、検知用メモリセルDMC0のメモリトランジスタMTを流れるセル電流が判定電流より低くなるためである。
[不揮発性メモリシステム1の読み出し動作例]
図17は、不揮発性メモリシステム1の読み出し動作を説明するためのフローチャートである。
ステップST31:
CPU36は、メモリセルアレイ24の検知用メモリセルDMC0の読み出し動作を行うように制御する。
図17は、不揮発性メモリシステム1の読み出し動作を説明するためのフローチャートである。
ステップST31:
CPU36は、メモリセルアレイ24の検知用メモリセルDMC0の読み出し動作を行うように制御する。
ステップST32:
CPU36は、メモリセルアレイ24の検知用メモリセルDMC1の読み出し動作を行うように制御する。
ステップST31とST32とは並行して実行される。
CPU36は、メモリセルアレイ24の検知用メモリセルDMC1の読み出し動作を行うように制御する。
ステップST31とST32とは並行して実行される。
ステップST33:
検知用メモリセルDMC0のメモリトランジスタMTは、電源電圧Vccが下限電圧Vcc(min)以下である場合にオフになり、セル電流は流れず、セレクトトランジスタSTのドレイン電極DNが判定電圧より高くなる。すなわち、検知用メモリセルDMC0からのセル電流が、判定電流以下となる。
一方、検知用メモリセルDMC0のメモリトランジスタMTは、電源電圧Vccが下限電圧Vcc(min)より大きい場合にオンになり、セル電流が流れ、セレクトトランジスタSTのドレイン電極DNが判定電圧より低くなる。すなわち、検知用メモリセルDMC0からのセル電流が、判定電流より大きくなる。
また、検知用メモリセルDMC1のメモリトランジスタMTは、電源電圧Vccが上限電圧Vcc(max)以上である場合にオンになり、セル電流が流れ、セレクトトランジスタSTのドレイン電極DNが判定電圧より低くなる。すなわち、検知用メモリセルDMC1からのセル電流が、判定電流以上となる。
一方、検知用メモリセルDMC1のメモリトランジスタMTは、電源電圧Vccが上限電圧Vcc(max)より小さい場合にオフになり、セル電流が流れず、セレクトトランジスタSTのドレイン電極DNが判定電圧より高くなる。すなわち、検知用メモリセルDMC1からのセル電流が、判定電流より小さくなる。
誤動作検知回路28は、条件「DMC0のセル電流<判定電流T」または条件「DMC1のセル電流>判定電流T」を満たす場合に、ステップST34に進み、そうでない場合にステップST39に進む。
検知用メモリセルDMC0のメモリトランジスタMTは、電源電圧Vccが下限電圧Vcc(min)以下である場合にオフになり、セル電流は流れず、セレクトトランジスタSTのドレイン電極DNが判定電圧より高くなる。すなわち、検知用メモリセルDMC0からのセル電流が、判定電流以下となる。
一方、検知用メモリセルDMC0のメモリトランジスタMTは、電源電圧Vccが下限電圧Vcc(min)より大きい場合にオンになり、セル電流が流れ、セレクトトランジスタSTのドレイン電極DNが判定電圧より低くなる。すなわち、検知用メモリセルDMC0からのセル電流が、判定電流より大きくなる。
また、検知用メモリセルDMC1のメモリトランジスタMTは、電源電圧Vccが上限電圧Vcc(max)以上である場合にオンになり、セル電流が流れ、セレクトトランジスタSTのドレイン電極DNが判定電圧より低くなる。すなわち、検知用メモリセルDMC1からのセル電流が、判定電流以上となる。
一方、検知用メモリセルDMC1のメモリトランジスタMTは、電源電圧Vccが上限電圧Vcc(max)より小さい場合にオフになり、セル電流が流れず、セレクトトランジスタSTのドレイン電極DNが判定電圧より高くなる。すなわち、検知用メモリセルDMC1からのセル電流が、判定電流より小さくなる。
誤動作検知回路28は、条件「DMC0のセル電流<判定電流T」または条件「DMC1のセル電流>判定電流T」を満たす場合に、ステップST34に進み、そうでない場合にステップST39に進む。
ステップST34:
誤動作検知回路28は、CPU36にリセット信号を出力する。
誤動作検知回路28は、CPU36にリセット信号を出力する。
ステップST35:
CPU36は、メモリセルアレイ24の通常メモリセルMCの読み出し動作を行うように制御する。
ステップST35の動作は、例えば、ステップST31,ST32と並行して行われる。
CPU36は、メモリセルアレイ24の通常メモリセルMCの読み出し動作を行うように制御する。
ステップST35の動作は、例えば、ステップST31,ST32と並行して行われる。
ステップST36:
センスアンプ23の検出結果を基に、読み出しセル電流が判定電流より大きい場合にはステップST37に進み、そうでない場合にはステップST38に進む。
センスアンプ23の検出結果を基に、読み出しセル電流が判定電流より大きい場合にはステップST37に進み、そうでない場合にはステップST38に進む。
ステップST37:
CPU36は、読み出し対象の通常メモリセルMCの読み出し結果は「0」であると判断する。
ステップST38:
CPU36は、読み出し対象の通常メモリセルMCの読み出し結果は「1」であると判断する。
CPU36は、読み出し対象の通常メモリセルMCの読み出し結果は「0」であると判断する。
ステップST38:
CPU36は、読み出し対象の通常メモリセルMCの読み出し結果は「1」であると判断する。
ステップST39:
CPU36は、誤動作検知回路28からリセット信号を入力したか否かを判断し、入力したと判断した場合には処理を終了し、そうでない場合にはステップST40に進む。
CPU36は、誤動作検知回路28からリセット信号を入力したか否かを判断し、入力したと判断した場合には処理を終了し、そうでない場合にはステップST40に進む。
ステップST40:
CPU36は、ステップST37,ST38の判定結果を外部に出力する。
CPU36は、ステップST37,ST38の判定結果を外部に出力する。
以上説明したように、不揮発性メモリシステム1によれば、電源6からの電源電圧Vccが予め規定した正常動作保証範囲(下限電圧Vcc(min)〜上限電圧Vcc(max))の範囲外になった場合に、そのことを通常メモリセルMCの読み出しと並行して検知用メモリセルDMC0,1の読み出し動作によって特定できる。そのため、従来のように電源検知回路の特性バラツキを考慮して、実質的に上記正常動作保証範囲より広い範囲の動作を保証する必要がない。これにより、昇圧回路の構成を小規模にできる。
不揮発性メモリシステム1では、例えば、電源電圧Vccが 1.8V±10% の仕様の場合、電源電圧Vccの範囲は 1.62V〜1.98V であるが、マージンを見込んで 1.50V〜2.10V で設計し、なおかつ、上記の異常動作検出用のメモリを配置して“0”と“1”を精度良く書き込んでおいた場合、誤読出を引き起こそうと電源電圧を低くする行為に対しては、設計範囲の下限の 1.50V より低くしていくと、書込データが“0”のセルのセル電流は減少していくが、まず検知用メモリセルDMC0の読出においてセル電流が判定電流より少なくなって“1”と読出され、誤読出が検出されてリセットがかけられる。
また、動作温度を高くする場合も、書込データが“0”のセルのセル電流は減少するが、まず検知用メモリセルDMC0の読出においてセル電流が判定電流より少なくなって“1”と誤読出され、誤読出が検出されてリセットがかけられる。これらにより、メモリセルの誤読出を引き起こして、その誤読出データによるCPUの暴走やその誤読出データを用いた事による暗号エンジンでの誤動作の発生を阻止できる。
また、動作温度を高くする場合も、書込データが“0”のセルのセル電流は減少するが、まず検知用メモリセルDMC0の読出においてセル電流が判定電流より少なくなって“1”と誤読出され、誤読出が検出されてリセットがかけられる。これらにより、メモリセルの誤読出を引き起こして、その誤読出データによるCPUの暴走やその誤読出データを用いた事による暗号エンジンでの誤動作の発生を阻止できる。
逆に、誤読出を引き起こそうとして電源電圧Vccを高くする行為に対しては、設計範囲の上限の 2.10V より高くしていくと、書込データが“1”のセルのセル電流は増加していくが、まず検知用メモリセルDMC1の読出においてセル電流が判定電流より多くなって“0”と読出され、誤読出が検出されてリセットがかけられる。また、動作温度を低くする場合も、書込データが“1”のセルのセル電流は増加するが、まず検知用メモリセルDMC1の読出においてセル電流が判定電流より多くなって“0”と誤読出され、誤読出が検出されてリセットがかけられる。
この構成の回路設計において電源電圧に設計マージンを見込んだ範囲まではシミュレーション及び試作後の設計検証において動作確認されている。そして、誤動作検出用のEEPROMへのデータの書込レベルは、電源電圧の設計マージンを見込んだ下限の電源電圧でベリファイ(Verify)読出する事によって、判定レベルから若干下がったレベルに設定されている。このため、仕様の電源電圧範囲での動作では、設計マージンの分だけ余裕があるため、誤動作検出用のEEPROMへのデータが誤読出される事はない。一方、書込レベルは、電源電圧の設計マージンを見込んだ下限の電源電圧でのベリファイ読出で、判定レベルから若干下がったレベルに設定されているため、電源電圧を下げていった時、判定レベルから僅かな電圧降下で誤読出が発生し、この間で内部回路の動作不安定等による誤動作が発生する事はない。すなわち、電源電圧を下げていった時のリセット信号が発生するまでの期間、不揮発性メモリシステム1は常に正常動作をしている。
上位側でも同様に、検知用メモリセルの消去レベルは、電源電圧の設計マージンを見込んだ上限の電源電圧でベリファイ読出する事によって、判定レベルから若干上がったレベルに設定されている。このため、仕様の電源電圧範囲での動作では、設計マージンの分だけ余裕があるため、検知用メモリセルのデータが誤読出される事はない。一方、消去レベルは、電源電圧の設計マージンを見込んだ上限の電源電圧でのベリファイ読出で、判定レベルから若干上がったレベルに設定されているため、電源電圧を上げていった時、判定レベルから僅かな電圧上昇で誤読出が発生し、この間で内部回路の動作不安定等による誤動作が発生する事はない。すなわち、電源電圧を上げていった時も、検知用メモリセルの読み出しによりリセット信号が発生するまでの期間は不揮発性メモリシステム1は常に正常動作をしている。
これらにより、電源電圧を仕様書で規定されている電圧値より高くする/低くする、または動作温度を仕様書で規定されている温度範囲より高くする/低くする等の攻撃を行なった場合、異常検出用の“0”または“1”のメモリセルの必ず一方で誤読出が発生し、これによってCPU36にリセット信号を出力することにより、誤読出データによるCPU36の暴走や誤読出データを用いた事による暗号エンジンでの誤データによる誤演算等の発生を阻止できる。
これらにより、電源電圧を仕様書で規定されている電圧値より高くする/低くする、または動作温度を仕様書で規定されている温度範囲より高くする/低くする等の攻撃を行なった場合、異常検出用の“0”または“1”のメモリセルの必ず一方で誤読出が発生し、これによってCPU36にリセット信号を出力することにより、誤読出データによるCPU36の暴走や誤読出データを用いた事による暗号エンジンでの誤データによる誤演算等の発生を阻止できる。
また、消去・書込動作は、その命令が起動された場合、短い消去・書込動作と検証用のVerify読出が繰り返される動作シーケンスが起動されるが、その動作シーケンスにおいてまずVerify読出から開始する様にシーケンスを組んでおく。これにより、仕様書で定義されている範囲外の電圧・温度で動作させようとする場合、シーケンスの最初のVerify読出で誤動作検出用の“0”または“1”のメモリセルの必ず一方で誤読出が発生するため、これによってCPU36にリセットがかけられ、不揮発性メモリセルの誤消去や誤書込が阻止できる。
以上により、不揮発性メモリを、仕様書で規定されている電圧範囲・温度範囲に設計マージンを加えた範囲で設計する事が可能で、異常電圧・異常温度の検知回路の設計バラツキの範囲まで加味して設計する必要はない。この不揮発性メモリに対して、誤読出、誤書込、誤消去を引き起こそうとして仕様の範囲外の動作条件で動作させた場合、EEPROM自身がそれを検知してCPU36に対してリセットをかけるため、誤動作を起こさせる事が不可能となる。
セキュリティ用途に用いられる、消去・書込動作に内部発生した高電圧を用いる不揮発性メモリの設計において、セキュリティ用途以外に用いられる不揮発性メモリの設計と同様に、仕様書で定義されている電圧・温度に設計マージンを付加した範囲内で設計が可能となり、昇圧回路等の面積増や消費電流の増加等が押さえられ、なおかつ、誤読出、誤消去、誤書込の発生は確実に阻止される。
セキュリティ用途に用いられる、消去・書込動作に内部発生した高電圧を用いる不揮発性メモリの設計において、セキュリティ用途以外に用いられる不揮発性メモリの設計と同様に、仕様書で定義されている電圧・温度に設計マージンを付加した範囲内で設計が可能となり、昇圧回路等の面積増や消費電流の増加等が押さえられ、なおかつ、誤読出、誤消去、誤書込の発生は確実に阻止される。
本発明は上述した実施形態には限定されない。
すなわち、当業者は、本発明の技術的範囲またはその均等の範囲内において、上述した実施形態の構成要素に関し、様々な変更、コンビネーション、サブコンビネーション、並びに代替を行ってもよい。
例えば、上述した実施形態では、FLOTOX型の不揮発性メモリを例示したが、本発明は、それ以外の例えば3TrNANDやETOXなどの形式の不揮発性メモリに本発明を適用してもよい。
図18は、3TrNAND型の不揮発性メモリのメモリセル100の構造を説明するための図である。
図18に示すように、メモリセル100は、ワード線WLに印加された電圧によってオン・オフするメモリトランジスタを有する。
また、メモリセル100の両側には、それぞれセレクトゲートSG1,SG2に印加された電圧によってオン・オフするセレクトトランジスタが配設されている。
すなわち、当業者は、本発明の技術的範囲またはその均等の範囲内において、上述した実施形態の構成要素に関し、様々な変更、コンビネーション、サブコンビネーション、並びに代替を行ってもよい。
例えば、上述した実施形態では、FLOTOX型の不揮発性メモリを例示したが、本発明は、それ以外の例えば3TrNANDやETOXなどの形式の不揮発性メモリに本発明を適用してもよい。
図18は、3TrNAND型の不揮発性メモリのメモリセル100の構造を説明するための図である。
図18に示すように、メモリセル100は、ワード線WLに印加された電圧によってオン・オフするメモリトランジスタを有する。
また、メモリセル100の両側には、それぞれセレクトゲートSG1,SG2に印加された電圧によってオン・オフするセレクトトランジスタが配設されている。
メモリセル100は、データ消去時に図19(A)に示すようにセレクトゲートSG1,SG2をオープンにし、ワード線WLを0Vにする。これにより、フローティングゲートFGに正孔を蓄積する。
また、メモリセル100は、データ書き込み時に図19(B)に示すようにセレクトゲートSG1を20V、セレクトゲートSG2を0Vにし、ワード線WLに20Vを印加する。これにより、フローティングゲートFGに電子を蓄積する。
また、メモリセル100は、データ読み出し時に図19(C)に示すようにセレクトゲートSG1に電源電圧Vccを印加し、セレクトゲートSG2およびワード線WLを0Vにする。
また、メモリセル100は、データ書き込み時に図19(B)に示すようにセレクトゲートSG1を20V、セレクトゲートSG2を0Vにし、ワード線WLに20Vを印加する。これにより、フローティングゲートFGに電子を蓄積する。
また、メモリセル100は、データ読み出し時に図19(C)に示すようにセレクトゲートSG1に電源電圧Vccを印加し、セレクトゲートSG2およびワード線WLを0Vにする。
上述したようなメモリセル100を用いた3TrNAND型の不揮発性メモリにおいても、前述した不揮発性メモリシステム1と同様に、メモリセル100として、通常メモリセルと検知用メモリセルDMC1,DMC0とを予め規定し、通常メモリセルに対して「1」を書き込む場合に比べて少ない電子を検知用メモリセルDMC1に注入し、通常メモリセルに対して「0」を書き込む場合に比べて電子放出量が少なくなるように検知用メモリセルDMC0から電子を放出することで、メモリセルシステム1と同様の効果が得られる。
なお、上述した例では、フローティングゲートに正孔と電子の何れが保持されているか(正負何れの電荷常態か)によって「1」,「0」の記憶状態を示したが、例えば、DiNOR型やETOX型のように、フローティングゲートに電子が注入されているか否かによって「1」,「0」の記憶状態を示してもよい。
1…不揮発性メモリシステム、6…電源、8…昇圧回路、10…コマンドレジスタ、12…アドレスバッファ、14…ロウデコーダ、16…ワード制御回路、22…ビット制御回路、23…センスアンプ、24…メモリセルアレイ、28…誤動作検知回路、30…データレジスタ、36…CPU、DMC0,DMC1…検知用メモリセル。
Claims (8)
- 電源電圧を基に駆動電圧を生成する駆動電圧生成回路と、
記憶するデータに応じた極性の電荷を、前記駆動電圧生成回路が生成した前記駆動用電圧に応じたレベルでフローティングゲートに蓄積して記憶を行い、読み出しおよび書き込みの対象となる不揮発性メモリである複数の通常メモリセルと、
前記電源電圧が予め決められた下限電圧以下である場合に読み出し誤りが生じるレベルの電荷をフローティングゲートに蓄積した不揮発性メモリである下限電圧検知用メモリセルと、
前記下限電圧検知用メモリセルの読み出し動作において読み出し誤りが生じていない場合に、前記通常メモリセルの読み出し結果を出力する制御回路と
を有する不揮発性メモリシステム。 - 前記電源電圧が予め決められた上限電圧以上である場合に読み出し誤りが生じるレベルの電荷を前記フローティングゲートに蓄積した不揮発性メモリである上限電圧検知用メモリセル
をさらに有し、
前記制御回路は、前記下限電圧検知用メモリセルおよび前記上限電圧検知用メモリセルの双方の読み出し動作において読み出し誤りが生じていない場合に、前記通常メモリセルの読み出し結果を出力する
請求項1に記載の不揮発性メモリシステム。 - 前記下限電圧検知用メモリセルに対する書き込み動作が禁止されている
請求項1に記載の不揮発性メモリシステム。 - 前記制御回路は、前記下限電圧検知用メモリセルの読み出し動作において読み出し誤りが生じたと判断するとリセット動作を行う
請求項1に記載の不揮発性メモリシステム。 - 前記下限電圧検知用メモリセルには、正の電荷が蓄積されている
請求項1に記載の不揮発性メモリシステム。 - 前記上限電圧検知用メモリセルには、負の電荷が蓄積されている
請求項2に記載の不揮発性メモリシステム。 - 記憶するデータに応じた極性の電荷を、前記駆動電圧生成回路が生成した前記駆動用電圧に応じたレベルでフローティングゲートに蓄積して記憶を行う不揮発性メモリである複数の通常メモリセルの読み出し動作を行うメモリ制御方法であって、
電源電圧が予め決められた下限電圧以下である場合に読み出し誤りが生じるレベルの電荷がフローティングゲートに蓄積された不揮発性メモリである下限電圧検知用メモリセルの読み出し動作を行う第1の工程と、
前記第1の工程における前記下限電圧検知用メモリセルの読み出し動作において読み出し誤りが生じたか否かを判断する第2の工程と、
前記第2の工程において読み出し誤りが生じていないと判断した場合に、前記通常メモリセルの読み出し結果を出力する第3の工程と
を有するメモリ制御方法。 - 前記電源電圧が予め決められた上限電圧以上である場合に読み出し誤りが生じるレベルの電荷を前記フローティングゲートに蓄積した不揮発性メモリである上限電圧検知用メモリセルの読み出し動作を行う第4の工程
をさらに有し、
前記第3の工程は、前記第2の工程および前記第4の工程において読み出し誤りが生じていない場合に、前記通常メモリセルの読み出し結果を出力する
請求項7に記載のメモリ制御方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006058549A JP2007242068A (ja) | 2006-03-03 | 2006-03-03 | 不揮発性メモリシステムおよび不揮発性メモリ制御方法 |
US11/712,627 US7450451B2 (en) | 2006-03-03 | 2007-03-01 | Nonvolatile memory system and method for controlling nonvolatile memory |
KR1020070020963A KR20070090826A (ko) | 2006-03-03 | 2007-03-02 | 불휘발성 메모리 시스템 및 불휘발성 메모리 제어 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006058549A JP2007242068A (ja) | 2006-03-03 | 2006-03-03 | 不揮発性メモリシステムおよび不揮発性メモリ制御方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007242068A true JP2007242068A (ja) | 2007-09-20 |
Family
ID=38517665
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006058549A Abandoned JP2007242068A (ja) | 2006-03-03 | 2006-03-03 | 不揮発性メモリシステムおよび不揮発性メモリ制御方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US7450451B2 (ja) |
JP (1) | JP2007242068A (ja) |
KR (1) | KR20070090826A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010033626A (ja) * | 2008-07-25 | 2010-02-12 | Renesas Technology Corp | 半導体装置 |
JP2015049919A (ja) * | 2013-09-03 | 2015-03-16 | 富士通セミコンダクター株式会社 | メモリセル、メモリ及び半導体装置 |
KR20200077168A (ko) * | 2018-12-20 | 2020-06-30 | 삼성전자주식회사 | 스토리지 장치 및 스토리지 시스템 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20150090418A (ko) * | 2014-01-29 | 2015-08-06 | 에스케이하이닉스 주식회사 | 최소 동작 전원을 사용하는 시스템 및 메모리의 전원전압 설정 방법 |
KR20190038049A (ko) * | 2017-09-29 | 2019-04-08 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그것의 동작 방법 |
US10748591B2 (en) | 2019-01-13 | 2020-08-18 | Ememory Technology Inc. | Random code generator |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5629890A (en) * | 1994-09-14 | 1997-05-13 | Information Storage Devices, Inc. | Integrated circuit system for analog signal storing and recovery incorporating read while writing voltage program method |
US6134148A (en) * | 1997-09-30 | 2000-10-17 | Hitachi, Ltd. | Semiconductor integrated circuit and data processing system |
-
2006
- 2006-03-03 JP JP2006058549A patent/JP2007242068A/ja not_active Abandoned
-
2007
- 2007-03-01 US US11/712,627 patent/US7450451B2/en not_active Expired - Fee Related
- 2007-03-02 KR KR1020070020963A patent/KR20070090826A/ko not_active Withdrawn
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010033626A (ja) * | 2008-07-25 | 2010-02-12 | Renesas Technology Corp | 半導体装置 |
JP2015049919A (ja) * | 2013-09-03 | 2015-03-16 | 富士通セミコンダクター株式会社 | メモリセル、メモリ及び半導体装置 |
KR20200077168A (ko) * | 2018-12-20 | 2020-06-30 | 삼성전자주식회사 | 스토리지 장치 및 스토리지 시스템 |
KR102211122B1 (ko) | 2018-12-20 | 2021-02-02 | 삼성전자주식회사 | 스토리지 장치 및 스토리지 시스템 |
US11080186B2 (en) | 2018-12-20 | 2021-08-03 | Samsung Electronics Co., Ltd. | Storage device and storage system |
US11586538B2 (en) | 2018-12-20 | 2023-02-21 | Samsung Electronics Co., Ltd. | Storage device and storage system |
Also Published As
Publication number | Publication date |
---|---|
US7450451B2 (en) | 2008-11-11 |
KR20070090826A (ko) | 2007-09-06 |
US20070217274A1 (en) | 2007-09-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9558838B2 (en) | Semiconductor device for masking data stored in twin cell and outputting masked data | |
US5930169A (en) | Nonvolatile semiconductor memory device capable of improving of chip's lifetime and method of operating the same | |
US5978273A (en) | Non-volatile semiconductor memory device | |
JPH10134586A (ja) | 不揮発性半導体記憶装置 | |
TWI478166B (zh) | 記憶體抹除方法及裝置 | |
JPH0969066A (ja) | 不揮発性半導体記憶装置 | |
JP2005108273A (ja) | 不揮発性半導体記憶装置 | |
US8223541B2 (en) | Non-volatile semiconductor memory, and the method thereof | |
JP2012048770A (ja) | 不揮発性半導体記憶装置、及び、メモリシステム | |
US6331949B1 (en) | Circuit for storing and latching defective address data for a nonvolatile semiconductor memory device having redundant function | |
JP2007242068A (ja) | 不揮発性メモリシステムおよび不揮発性メモリ制御方法 | |
US9530518B2 (en) | Semiconductor device | |
US20100027353A1 (en) | Erase Method of Flash Device | |
US20120191902A1 (en) | One-Die Flotox-Based Combo Non-Volatile Memory | |
JP2011253579A (ja) | 半導体記憶装置 | |
US8081520B2 (en) | Over erase correction method of flash memory apparatus | |
CN105469822A (zh) | 半导体存储器装置、半导体系统以及读取方法 | |
US6373750B1 (en) | Non-volatile memory which performs erasure in a short time | |
JP2011146103A (ja) | 半導体記憶装置 | |
JPH11176173A (ja) | 不揮発性半導体記憶装置 | |
US20150124532A1 (en) | Dummy memory erase or program method protected against detection | |
JP2000100178A (ja) | 不揮発性半導体記憶装置 | |
JP2010123208A (ja) | Nand型フラッシュメモリ | |
JP4071572B2 (ja) | 電圧制御回路及び半導体記憶装置 | |
US20250140315A1 (en) | Floating Metal Based Flash Memory |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A762 | Written abandonment of application |
Free format text: JAPANESE INTERMEDIATE CODE: A762 Effective date: 20090813 |