以下、本発明の実施形態について、図面を参照しながら詳細に説明する。なお、同一の構成要素には同一の参照符号を付して、重複する説明を省略する。
<不揮発性メモリー>
図1は、本発明の一実施形態に係る半導体集積回路装置に内蔵された不揮発性メモリーの構成例を示すブロック図である。本発明の一実施形態に係る半導体集積回路装置は、フラッシュメモリーやEEPROM等の電気的に書き換え可能な不揮発性メモリーのみを内蔵しても良いし、不揮発性メモリーに加えて、所定の機能を有する回路ブロック又はCPU(中央演算装置)等の機能回路を内蔵しても良い。以下においては、不揮発性メモリーの一例として、フラッシュメモリーについて説明する。
図1に示すように、この不揮発性メモリーは、メモリーセルアレイ10と、電源回路20と、ワード線昇圧回路30と、ワード線駆動回路40と、ソース線駆動回路50と、スイッチ回路60と、メモリー制御回路70とを含んでいる。メモリー制御回路70は、メモリーセルアレイ10に含まれている複数のメモリーセルに消去動作、書き込み動作、又は、読み出し動作を行わせるように、電源回路20〜スイッチ回路60を制御する。
メモリーセルアレイ10の複数のメモリーセルは、m行n列のマトリックス状に配置されている(m及びnは、2以上の整数)。例えば、メモリーセルアレイ10は、2048行のメモリーセルを含んでいる。また、1行のメモリーセルは、1024個のメモリーセルを含み、128個の8ビットデータを記憶することができる。
また、メモリーセルアレイ10は、複数のワード線WL0、WL1、・・・、WLmと、複数のソース線SL0、SL1、・・・、SLmと、複数のビット線BL0、BL1、・・・、BLnとを含んでいる。それらのワード線の各々は、それぞれの行に配置された複数のメモリーセルに接続されている。また、それらのビット線の各々は、それぞれの列に配置された複数のメモリーセルに接続されている。
電源回路20には、例えば、基準電源電位VSSと、データ消去及びデータ書き込み用の高電源電位VPPと、ロジック回路用のロジック電源電位VDDとが、外部から供給される。あるいは、電源回路20は、外部から供給される複数の電源電位の内の1つの電源電位を昇圧又は降圧することにより、他の電源電位を生成しても良い。
基準電源電位VSSは、他の電位に対して相対的な基準となる基準電位であり、以下においては、基準電源電位VSSが接地電位(0V)である場合について説明する。高電源電位VPPは、基準電源電位VSSよりも高い所定の電位であり、例えば、5V〜10V程度である。ロジック電源電位VDDは、基準電源電位VSSよりも高く高電源電位VPPよりも低い電位であり、例えば、1.2V〜1.8V程度である。ロジック電源電位VDDは、半導体集積回路装置において不揮発性メモリーと共に使用される機能回路の電源電位と共用されても良い。
電源回路20は、ロジック電源電位VDDをメモリー制御回路70に供給すると共に、メモリー制御回路70の制御の下で、高電源電位VPP及びロジック電源電位VDDを、必要に応じて不揮発性メモリーの各部に供給する。図1においては、電源回路20からワード線昇圧回路30に供給される電源電位がワード線電源電位VWLとして示されており、電源回路20からソース線駆動回路50に供給される電源電位がソース線電源電位VSLとして示されている。
例えば、メモリーセルを消去状態にする消去モードにおいて、電源回路20は、高電源電位VPPをワード線昇圧回路30及びソース線駆動回路50に供給する。ワード線昇圧回路30は、高電源電位VPPをワード線駆動回路40に供給する。
メモリーセルにデータを書き込む書き込みモードにおいて、電源回路20は、高電源電位VPPをワード線昇圧回路30及びソース線駆動回路50に供給する。ワード線昇圧回路30は、高電源電位VPPをワード線駆動回路40に供給する。
メモリーセルからデータを読み出す読み出しモードにおいて、電源回路20は、ロジック電源電位VDDをワード線昇圧回路30及びソース線駆動回路50に供給する。ワード線昇圧回路30は、ロジック電源電位VDDを上昇させてワード線昇圧電位VUP(例えば、2.8V)を生成し、ワード線昇圧電位VUPをワード線駆動回路40に供給する。
メモリーセルのベリファイモードにおいて、電源回路20は、ロジック電源電位VDDをワード線昇圧回路30及びソース線駆動回路50に供給する。ワード線昇圧回路30は、ロジック電源電位VDDをワード線駆動回路40に供給する。
リファレンスセルのベリファイモードにおいて、電源回路20は、高電源電位VPP及びロジック電源電位VDDをワード線昇圧回路30に供給すると共に、高電源電位VPPをソース線駆動回路50に供給する。ワード線昇圧回路30は、高電源電位VPP及びロジック電源電位VDDをワード線駆動回路40に供給する。
ワード線駆動回路40は、複数のワード線WL0、WL1、・・・、WLmに接続されており、メモリー制御回路70によって選択されるメモリーセルに接続されたワード線を駆動する。ソース線駆動回路50は、複数のソース線SL1、SL2、・・・、SLmに接続されており、メモリー制御回路70によって選択されるメモリーセルに接続されたソース線を駆動する。
スイッチ回路60は、例えば、複数のビット線BL0、BL1、・・・、BLnの経路にそれぞれ接続された複数のトランジスターを含み、それらのトランジスターは、メモリー制御回路70の制御の下でオン又はオフする。メモリー制御回路70は、スイッチ回路60を介して、複数のビット線BL0、BL1、・・・、BLnに接続されたメモリーセルに接続可能となっている。
メモリー制御回路70は、例えば、組み合わせ回路及び順序回路を含む論理回路や、アナログ回路等で構成され、リファレンスセルRC1及びRC2と、データ読み出し回路71と、ベリファイ回路72とを含んでいる。メモリー制御回路70には、チップセレクト信号CS、モードセレクト信号MS、動作クロック信号CK、及び、アドレス信号ADが供給される。
メモリー制御回路70は、チップセレクト信号CSによって不揮発性メモリーが選択されたときに、モードセレクト信号MSに従って、不揮発性メモリーを、消去モード、書き込みモード、読み出しモード、メモリーセルのベリファイモード、又は、リファレンスセルのベリファイモードに設定する。
書き込みモード、読み出しモード、及び、メモリーセルのベリファイモードにおいて、メモリー制御回路70は、動作クロック信号CKに同期して、アドレス信号ADによって指定されたメモリーセルにアクセスするように不揮発性メモリーの各部を制御する。
書き込みモードにおいて、メモリー制御回路70は、書き込みデータを入力し、アドレス信号ADによって指定されたメモリーセルにデータを書き込むように不揮発性メモリーの各部を制御する。また、読み出しモード及びメモリーセルのベリファイモードにおいて、メモリー制御回路70は、アドレス信号ADによって指定されたメモリーセルからデータを読み出すように不揮発性メモリーの各部を制御し、読み出しデータを出力する。
例えば、読み出しモードにおいて、メモリー制御回路70は、アドレス信号ADによって指定されたメモリーセルに接続されたスイッチ回路60のトランジスターをオンさせて、そのメモリーセルに流れる読み出し電流に基づいてデータを読み出す。その際に、データ読み出し回路71は、リファレンスセルRC1に流れる電流とリファレンスセルRC2に流れる電流とに基づいて判定電流を生成し、アドレス信号ADによって指定されたメモリーセルに流れる読み出し電流を判定電流と比較することにより、指定されたメモリーセルに記憶されているデータが「0」であるか「1」であるかを判定する。
<メモリーセルアレイ>
図2は、図1に示すメモリーセルアレイ及びその周辺の構成例を示す回路図である。各々のメモリーセルMCは、コントロールゲート、フローティングゲート、ソース、及び、ドレインを有するNチャネルMOSトランジスターを含んでいる。メモリーセルMCのトランジスターは、フローティングゲートに蓄積される電荷に応じて1ビットのデータを記憶する。
ワード線WL0〜WLmの各々は、それぞれの行に配置された複数のメモリーセルMCのトランジスターのコントロールゲートに接続されている。ソース線SL0〜SLmの各々は、それぞれの行に配置された複数のメモリーセルMCのトランジスターのソースに接続されている。また、ビット線BL0〜BLnの各々は、それぞれの列に配置された複数のメモリーセルMCのトランジスターのドレインに接続されている。
ワード線駆動回路40(図1)は、ワード線WL0〜WLmに接続されたメモリーセルMCのトランジスターのコントロールゲートを駆動する複数のワード線ドライバー41と、複数のNチャネルMOSトランジスター42と、ワード線ドライバー41の高電位側電源電位を供給するインバーター43とを含んでいる。各々のワード線ドライバー41は、例えば、レベルシフター、バッファー回路、又は、インバーター等で構成される。各々のワード線ドライバー41には、インバーター43からワード線電源電位VWL又はワード線昇圧電位VUPが供給される。
複数のワード線ドライバー41の入力端子には、メモリーセルアレイを構成する複数のメモリーセルの内から1行又は複数行のメモリーセルを選択する際にハイレベルに活性化されるハイアクティブの行選択信号SW0〜SWmが、メモリー制御回路70から入力される。ワード線ドライバー41は、行選択信号がアクティブであるときに、ワード線電源電位VWL又はワード線昇圧電位VUPをワード線に出力し、行選択信号がノンアクティブであるときに、基準電源電位VSSをワード線に出力する。
ソース線駆動回路50(図1)は、ソース線SL0〜SLmに接続されたメモリーセルMCのトランジスターのソースを駆動するために、ソース線ドライバー51と、複数のトランスミッションゲートTGと、複数のインバーター52とを含んでいる。ソース線ドライバー51は、例えば、レベルシフター、バッファー回路、又は、インバーター等で構成される。複数のトランスミッションゲートTGは、ソース線ドライバー51の出力端子とソース線SL0〜SLmとの間に接続されている。
ソース線ドライバー51には、電源回路20(図1)からソース線電源電位VSLが供給される。ソース線ドライバー51の入力端子には、ソース線に高電源電位を印加する際にハイレベルに活性化されるハイアクティブのソース線駆動信号SSLが、メモリー制御回路70から入力される。ソース線ドライバー51は、ソース線駆動信号SSLがアクティブであるときに、ソース線電源電位VSLを出力し、ソース線駆動信号SSLがノンアクティブであるときに、基準電源電位VSSを出力する。
各々のトランスミッションゲートTGは、NチャネルMOSトランジスターと、PチャネルMOSトランジスターとで構成され、ソース線ドライバー51の出力端子とソース線との間の接続を開閉するスイッチ回路として機能する。トランスミッションゲートTGにおいて、NチャネルMOSトランジスターのゲートは、ワード線ドライバー41の出力端子に接続され、PチャネルMOSトランジスターのゲートは、インバーター52の出力端子に接続されている。
インバーター52には、ワード線駆動回路40(図1)からワード線電源電位VWL又はワード線昇圧電位VUPが供給される。インバーター52の入力端子には、行選択信号SW0〜SWmが入力される。インバーター52は、行選択信号SW0〜SWmを反転して、反転された信号をトランスミッションゲートTGのPチャネルMOSトランジスターのゲートに印加する。
スイッチ回路60は、ビット線BL0〜BLnに接続されたメモリーセルMCのトランジスターのドレインとメモリー制御回路70との間に接続されたNチャネルMOSトランジスターQ0〜Qnを含んでいる。トランジスターQ0〜Qnのゲートには、メモリーセルアレイを構成する複数のメモリーセルの内から1列又は複数列のメモリーセルを選択する際にハイレベルに活性化されるハイアクティブの列選択信号SB0〜SBnが、メモリー制御回路70から印加される。
書き込みモードにおいて、メモリー制御回路70は、アドレス信号によって指定されるメモリーセルMCに接続されたワード線及びビット線を選択するために、対応する行選択信号及び列選択信号をアクティブにし、それ以外の行選択信号及び列選択信号をノンアクティブにすると共に、ソース線駆動信号SSLをアクティブにする。以下においては、一例として、ワード線WL0及びビット線BL0が選択される場合について説明する。
インバーター43、ソース線ドライバー51、及び、インバーター52には、高電源電位VPPが供給される。ノンアクティブの消去モード信号ERが入力されるインバーター43によって、ワード線ドライバー41の高電位側電源端子に高電源電位VPPが供給される。アクティブの行選択信号SW0が入力されるワード線ドライバー41は、高電源電位VPPをワード線WL0に出力する。また、アクティブのソース線駆動信号SSLが入力されるソース線ドライバー51は、高電源電位VPPを出力する。
アクティブの行選択信号SW0が入力されるインバーター52は、高電源電位VPPを反転して、基準電源電位VSSをトランスミッションゲートTGのPチャネルMOSトランジスターのゲートに印加する。それにより、トランスミッションゲートTGがオンして、ソース線ドライバー51から出力される高電源電位VPPがソース線SL0に印加される。
また、アクティブの列選択信号SB0が入力されるスイッチ回路60のトランジスターQ0がオンして、メモリー制御回路70が、基準電源電位VSSをビット線BL0に印加する。このように、メモリー制御回路70は、アドレス信号によって指定されるメモリーセルMCのトランジスターのコントロールゲート及びソースに高電源電位VPPを印加するようにワード線駆動回路40(図1)及びソース線駆動回路50(図1)を制御すると共に、ドレインに基準電源電位VSSを印加する。
その結果、アドレス信号によって指定されるメモリーセルMCのトランジスターのソースからドレインに向けて電流が流れる。その電流によって発生したホットキャリア(本実施形態においては、電子)がフローティングゲートに注入されることにより、フローティングゲートに負の電荷が蓄積されるので、トランジスターの閾値電圧が上昇する。
一方、ノンアクティブの行選択信号SW1〜SWmが入力されるワード線ドライバー41は、基準電源電位VSSをワード線WL1〜WLmに出力する。ノンアクティブの行選択信号SW1〜SWmが入力されるインバーター52は、基準電源電位VSSを反転して、高電源電位VPPをトランスミッションゲートTGのPチャネルMOSトランジスターのゲートに印加する。従って、ワード線WL1〜WLmに接続されたトランスミッションゲートTGがオフする。また、ノンアクティブの列選択信号SB1〜SBnが入力されるスイッチ回路60のトランジスターQ1〜Qnがオフする。その結果、アドレス信号によって指定されていないメモリーセルMCのトランジスターのソース・ドレイン間には電流が流れないので、トランジスターの閾値電圧は変化しない。
消去モードにおいて、メモリー制御回路70は、アドレス信号によって指定されるメモリーセルMCに接続されたワード線を選択するために、対応する行選択信号をアクティブにし、それ以外の行選択信号をノンアクティブにすると共に、列選択信号SB0〜SBnをノンアクティブにし、ソース線駆動信号SSLをアクティブにする。以下においては、一例として、ワード線WL0が選択される場合について説明する。
インバーター43、ソース線ドライバー51、及び、インバーター52には、高電源電位VPPが供給される。アクティブの消去モード信号ERが入力されるインバーター43によって、ワード線ドライバー41の高電位側電源端子に基準電源電位VSSが印加される。アクティブの行選択信号SW0が入力されるワード線ドライバー41は活性化しないが、アクティブの消去モード信号ERがゲートに印加されるNチャネルMOSトランジスター42によって、基準電源電位VSSがワード線WL0に印加される。また、アクティブのソース線駆動信号SSLが入力されるソース線ドライバー51は、高電源電位VPPを出力する。
アクティブの行選択信号SW0が入力されるインバーター52は、高電源電位VPPを反転して、基準電源電位VSSをトランスミッションゲートTGのPチャネルMOSトランジスターのゲートに印加する。それにより、トランスミッションゲートTGのPチャネルMOSトランジスターがオンして、ソース線ドライバー51から出力される高電源電位VPPがソース線SL0に印加される。
また、ノンアクティブの列選択信号SB0〜SBnが入力されるスイッチ回路60のトランジスターQ0〜Qnがオフする。このように、メモリー制御回路70は、スイッチ回路60のトランジスターQ0〜QnをオフさせてメモリーセルMCのトランジスターのドレインをオープン状態(ハイ・インピーダンス状態)とし、コントロールゲートに基準電源電位VSSを印加するようにワード線駆動回路40(図1)を制御すると共に、ソースに高電源電位VPPを印加するようにソース線駆動回路50(図1)を制御する。その結果、メモリーセルMCのトランジスターのフローティングゲートに負の電荷が蓄積されている場合に、フローティングゲートに蓄積されている負の電荷がソースに放出されて、トランジスターの閾値電圧が低下する。
一方、ノンアクティブの行選択信号SW1〜SWmが入力されるインバーター52は、基準電源電位VSSを反転して、高電源電位VPPをトランスミッションゲートTGのPチャネルMOSトランジスターのゲートに印加する。従って、ワード線WL1〜WLmに接続されたトランスミッションゲートTGがオフする。その結果、アドレス信号によって指定されていないメモリーセルMCのトランジスターのフローティングゲートに蓄積されている負の電荷が放出されないので、トランジスターの閾値電圧は変化しない。
読み出しモードにおいて、メモリー制御回路70は、アドレス信号によって指定されるメモリーセルに接続されたワード線及びビット線を選択するために、対応する行選択信号及び列選択信号をアクティブにし、それ以外の行選択信号及び列選択信号をノンアクティブにすると共に、ソース線駆動信号SSLをノンアクティブにする。以下においては、一例として、ワード線WL0及びビット線BL0が選択される場合について説明する。
インバーター43及びインバーター52には、ワード線昇圧電位VUPが供給され、ソース線ドライバー51には、ロジック電源電位VDDが供給される。ノンアクティブの消去モード信号ERが入力されるインバーター43によって、ワード線ドライバー41の高電位側電源端子にワード線昇圧電位VUPが供給される。アクティブの行選択信号SW0が入力されるワード線ドライバー41は、ワード線昇圧電位VUPをワード線WL0に出力する。また、ノンアクティブのソース線駆動信号SSLが入力されるソース線ドライバー51は、基準電源電位VSSを出力する。
ワード線ドライバー41から出力されるワード線昇圧電位VUPは、ワード線WL0に接続されたトランスミッションゲートTGのNチャネルMOSトランジスターのゲートにも印加される。それにより、トランスミッションゲートTGのNチャネルMOSトランジスターがオンして、ソース線ドライバー51から出力される基準電源電位VSSがソース線SL0に印加される。
また、アクティブの列選択信号SB0が入力されるスイッチ回路60のトランジスターQ0がオンして、メモリー制御回路70が、ロジック電源電位VDDをビット線BL0に印加する。このように、メモリー制御回路70は、アドレス信号によって指定されるメモリーセルMCのトランジスターのコントロールゲートにワード線昇圧電位VUPを印加するようにワード線駆動回路40(図1)を制御すると共に、ソースに基準電源電位VSSを印加するようにソース線駆動回路50(図1)を制御し、スイッチ回路60のトランジスターQ0をオンさせてドレインにロジック電源電位VDDを印加する。
その結果、アドレス信号によって指定されるメモリーセルMCにおいて、メモリーセルMCのトランジスターのドレインからソースに向けてドレイン電流が流れる。ドレイン電流の大きさは、フローティングゲートに蓄積されている負の電荷の量によって異なるので、メモリー制御回路70は、ドレイン電流の大きさに基づいてメモリーセルMCからデータを読み出すことができる。なお、メモリーセルのベリファイモードにおいては、ワード線昇圧電位VUPの替りにロジック電源電位VDDが、インバーター43及びインバーター52に供給される。
<データ読み出し回路>
図3は、図1に示すデータ読み出し回路及びその周辺の構成例を示す回路図である。リファレンスセルRC1及びRC2の各々は、コントロールゲート、フローティングゲート、ソース、及び、ドレインを有するNチャネルMOSトランジスターを含んでいる。
リファレンスセルRC1のトランジスターは、第1の閾値電圧を有しており、リファレンスセルRC2のトランジスターは、第1の閾値電圧よりも大きい第2の閾値電圧を有している。即ち、リファレンスセルRC1は消去状態であり、リファレンスセルRC2は、書き込み状態である。
アドレス信号によって指定されるメモリーセルMCのトランジスターのコントロールゲートには、ワード線駆動回路40(図1)によって第1の駆動電位WLが印加される。例えば、第1の駆動電位WLは、読み出しモードにおいてワード線昇圧電位VUPであり、メモリーセルのベリファイモードにおいてロジック電源電位VDDであり、リファレンスセルのベリファイモードにおいて基準電源電位VSSである。
また、リファレンスセルRC1及びRC2のトランジスターのコントロールゲートには、メモリー制御回路70(図1)によって第2の駆動電位RWLが印加される。例えば、第2の駆動電位RWLは、読み出しモードにおいてワード線昇圧電位VUPであり、メモリーセルのベリファイモード及びリファレンスセルのベリファイモードにおいてロジック電源電位VDDである。メモリーセルMC、及び、リファレンスセルRC1及びRC2のトランジスターのソースには、基準電源電位VSSが供給される。
読み出しモード及びメモリーセルのベリファイモードにおいて、データ読み出し回路71は、リファレンスセルRC1に流れる電流とリファレンスセルRC2に流れる電流とに基づいて判定電流を生成し、メモリーセルMCに流れる電流を判定電流と比較することにより、メモリーセルMCに記憶されているデータを読み出す。
また、リファレンスセルのベリファイモードにおいて、データ読み出し回路71は、リファレンスセルRC2に流れる電流に比例する電流をリファレンスセルRC1に流れる電流に比例する電流と比較して、ベリファイ回路72(図1)が、リファレンスセルRC2の閾値電圧が適切であるか否かを確認する。リファレンスセルRC2の閾値電圧が適切でなければ、ベリファイ回路72は、リファレンスセルRC2の閾値電圧を修正することができる。
例えば、図3に示すように、データ読み出し回路71は、PチャネルMOSトランジスターQP1〜QP10と、NチャネルMOSトランジスターQN1〜QN5と、インバーターIN1と、センスアンプ71aとを含んでいる。センスアンプ71aは、PチャネルMOSトランジスターQP11〜QP14と、NチャネルMOSトランジスターQN6〜QN8と、インバーターIN2及びIN3とを含んでおり、入力端子INと、出力端子OUTとを有している。
トランジスターQP1〜QP3のソースには、ロジック電源電位VDDが供給され、ゲートは、トランジスターQP1のドレイン、及び、リファレンスセルRC1のトランジスターのドレインに接続されている。ここで、トランジスターQP1〜QP3は、リファレンスセルRC1に流れる電流に比例する電流(図3においては、4種類の電流)を供給する第1のカレントミラー回路を構成している。
トランジスターQP2のドレインは、トランジスターQP4を介してセンスアンプ71aの入力端子INに接続されている。トランジスターQP3のドレインは、トランジスターQP5を介してセンスアンプ71aの入力端子INに接続されている。トランジスターQP4のゲートには、電流設定信号E0が印加され、トランジスターQP5のゲートには、電流設定信号E1が印加される。ここで、トランジスターQP4及びQP5は、電流設定信号E0及びE1に従って、第1のカレントミラー回路から供給される電流の大きさを選択する第1のセレクター回路を構成している。
メモリー制御回路70(図1)は、読み出しモード、メモリーセルのベリファイモード、及び、リファレンスセルのベリファイモードに応じて、電流設定信号E0及びE1をローレベル(例えば、基準電源電位VSS)又はハイレベル(例えば、ロジック電源電位VDD)に設定する。
電流設定信号E0がローレベルに活性化されると、トランジスターQP4がオンして、トランジスターQP2のドレインから供給される電流をセンスアンプ71aの入力端子INに供給する。また、電流設定信号E1がローレベルに活性化されると、トランジスターQP5がオンして、トランジスターQP3のドレインから供給される電流をセンスアンプ71aの入力端子INに供給する。
トランジスターQP6〜QP8のソースには、ロジック電源電位VDDが供給され、ゲートは、トランジスターQP6のドレイン、及び、リファレンスセルRC2のトランジスターのドレインに接続されている。ここで、トランジスターQP6〜QP8は、リファレンスセルRC2に流れる電流に比例する電流(リファレンスセルRC2に流れる電流と略等しい電流でも良い)を供給する第2のカレントミラー回路を構成している。
トランジスターQP7のドレインは、トランジスターQP9を介してセンスアンプ71aの入力端子INに接続されている。トランジスターQP8のドレインは、トランジスターQP10を介してトランジスターQN1のドレインに接続されている。トランジスターQP9のゲートには、リファレンスセルのベリファイモードを設定するベリファイ信号VFYが印加され、トランジスターQP10のゲートには、インバーターIN1によって反転されたベリファイ信号VFYが印加される。ここで、トランジスターQP9及びQP10、及び、インバーターIN1は、ベリファイ信号VFYに従って、第2のカレントミラー回路から供給される電流の供給先を選択する第2のセレクター回路を構成している。
メモリー制御回路70(図1)は、読み出しモード及びメモリーセルのベリファイモードにおいて、ベリファイ信号VFYをローレベルに設定し、リファレンスセルのベリファイモードにおいて、ベリファイ信号VFYをハイレベルに設定する。
従って、読み出しモード及びメモリーセルのベリファイモードにおいては、トランジスターQP9がオンして、トランジスターQP7のドレインから供給される電流が、センスアンプ71aの入力端子INに供給される。一方、リファレンスセルのベリファイモードにおいては、トランジスターQP10がオンして、トランジスターQP8のドレインから供給される電流が、トランジスターQN1のドレインに供給される。
トランジスターQN1及びQN2のゲートには、ベリファイ信号VFYが印加される。トランジスターQN3のドレインは、トランジスターQN1及びQP10を介してトランジスターQP8のドレインに接続されている。トランジスターQN4のドレインは、トランジスターQN2を介してトランジスターQP12のドレインに接続されている。
トランジスターQN3及びQN4のゲートは、トランジスターQN1のソース、及び、トランジスターQN3のドレインに接続されており、ソースには、基準電源電位VSSが供給される。ここで、トランジスターQN3及びQN4は、リファレンスセルのベリファイモードにおいて、第2のカレントミラー回路から供給される電流に比例する電流を供給する第3のカレントミラー回路を構成している。
読み出しモード及びメモリーセルのベリファイモードにおいては、トランジスターQN1及びQN2がオフするので、第3のカレントミラー回路は動作しない。データ読み出し回路71は、第1のカレントミラー回路から供給される電流と第2のカレントミラー回路から供給される電流とを足し合わせることによって判定電流を生成し、判定電流をセンスアンプ71aの入力端子INに供給する。
また、リファレンスセルのベリファイモードにおいては、トランジスターQN1及びQN2がオンするので、第3のカレントミラー回路が動作する。データ読み出し回路71は、第1のカレントミラー回路から供給される電流をセンスアンプ71aの入力端子INに供給すると共に、第3のカレントミラー回路から供給される電流を、オフしているメモリーセルMCのトランジスターの替りにセンスアンプ71aに供給する。
センスアンプ71aの入力端子INには、トランジスターQN5のドレイン及びゲートが接続されており、トランジスターQN5のソースには、基準電源電位VSSが供給される。従って、センスアンプ71aの入力端子INに供給される電流は、トランジスターQN5に流れる。
<センスアンプ>
センスアンプ71aにおいて、トランジスターQN6のゲートが、入力端子INに接続されており、ソースには、基準電源電位VSSが供給される。トランジスターQN5及びトランジスターQN6は、カレントミラー回路を構成しており、第1のカレントミラー回路及び第2のカレントミラー回路で生成された判定電流が、トランジスターQN6に流れる。
トランジスターQP11及びQP12のソースには、ロジック電源電位VDDが供給され、ゲートは、トランジスターQP11のドレイン、及び、トランジスターQN6のドレインに接続されている。ここで、トランジスターQP11及びQP12は、同一のサイズを有しており、トランジスターQN6に流れる電流と略等しい電流を供給するカレントミラー回路を構成している。トランジスターQP12のドレインは、メモリーセルMCのトランジスターのドレイン、及び、トランジスターQN2のドレインに接続されている。
読み出しモード及びメモリーセルのベリファイモードにおいては、メモリーセルMCのトランジスターに、第1の駆動電位WLに従って電流が流れ、トランジスターQN6に、リファレンスセルRC1に流れる電流とリファレンスセルRC2に流れる電流とに基づいて生成される判定電流が流れる。また、トランジスターQP11及びQP12にも、判定電流が流れる。
従って、メモリーセルMCに流れる電流が判定電流よりも大きければ、トランジスターQP12のドレイン電位がトランジスターQP11のドレイン電位よりも低くなる。一方、メモリーセルMCに流れる電流が判定電流よりも小さければ、トランジスターQP12のドレイン電位がトランジスターQP11のドレイン電位よりも高くなる。
リファレンスセルのベリファイモードにおいては、トランジスターQN2に、リファレンスセルRC2に流れる電流に比例した電流が流れ、トランジスターQN6に、リファレンスセルRC1に流れる電流に比例した電流が流れる。また、トランジスターQP11及びQP12にも、リファレンスセルRC1に流れる電流に比例した電流が流れる。
従って、リファレンスセルRC2に流れる電流に比例した電流がリファレンスセルRC1に流れる電流に比例した電流よりも大きければ、トランジスターQP12のドレイン電位がトランジスターQP11のドレイン電位よりも低くなる。一方、リファレンスセルRC2に流れる電流に比例した電流がリファレンスセルRC1に流れる電流に比例した電流よりも小さければ、トランジスターQP12のドレイン電位がトランジスターQP11のドレイン電位よりも高くなる。
トランジスターQP13及びQP14のソースには、ロジック電源電位VDDが供給されており、ゲートは、トランジスターQP11のドレイン、及び、トランジスターQP12のドレインにそれぞれ接続されている。従って、トランジスターQP13及びQP14は、トランジスターQP11及びQP12のドレイン電位に従って、それぞれの電流を流す。
トランジスターQN7のドレインは、トランジスターQP13のドレインに接続されており、トランジスターQN8のドレインは、トランジスターQP14のドレインに接続されている。トランジスターQN7及びQN8のゲートは、トランジスターQP13のドレイン、及び、トランジスターQN7のドレインに接続されており、ソースには、基準電源電位VSSが供給される。ここで、トランジスターQN7及びQN8は、同一のサイズを有しており、トランジスターQP13に流れる電流と略等しい電流を供給するカレントミラー回路を構成している。
トランジスターQN8のドレインは、インバーターIN2の入力端子に接続されている。インバーターIN2の出力端子は、インバーターIN3の入力端子に接続されており、インバーターIN3の出力端子は、センスアンプの出力端子OUTに接続されている。従って、トランジスターQP12のドレイン電位がトランジスターQP11のドレイン電位よりも低くければ、出力端子OUTからハイレベルの判定信号Yが出力される。一方、トランジスターQP12のドレイン電位がトランジスターQP11のドレイン電位よりも高ければ、出力端子OUTからローレベルの判定信号Yが出力される。
このように、センスアンプ71aは、読み出しモード及びメモリーセルのベリファイモードにおいて、メモリーセルMCに流れる電流を、第1のカレントミラー回路から供給される電流と第2のカレントミラー回路から供給される電流との和である判定電流と比較して、比較結果を表す判定信号Yを出力する。また、センスアンプ71aは、リファレンスセルのベリファイモードにおいて、第3のカレントミラー回路から供給される電流を第1のカレントミラー回路から供給される電流と比較して、比較結果を表す判定信号Yを出力する。
それにより、センスアンプ71aは、読み出しモードにおいて、メモリーセルMCに流れる電流をリファレンスセルRC1に流れる電流とリファレンスセルRC2に流れる電流とに基づいて生成される判定電流と比較し、メモリーセルMCに流れる電流が判定電流よりも大きい場合に、ハイレベルの判定信号Yを出力する。
また、センスアンプ71aは、リファレンスセルのベリファイモードにおいて、リファレンスセルRC2に流れる電流に比例する電流をリファレンスセルRC1に流れる電流に比例する電流と比較し、リファレンスセルRC2に流れる電流がリファレンスセルRC1に流れる電流よりも大きい場合に、ハイレベルの判定信号Yを出力する。
このように、読み出しモードとリファレンスセルのベリファイモードとにおいて同じセンスアンプ71aを共用できるので、回路規模をあまり大きくすることなく、リファレンスセルの閾値電圧を精度良く確認することができる。
<判定レベルの設定例>
図4は、図3に示すデータ読み出し回路の読み出しモードにおける判定レベルの設定例を示す図である。図4において、横軸は、リファレンスセルRC1又はRC2のコントロールゲートに印加される駆動電位を表しており、縦軸は、リファレンスセルRC1又はRC2に流れる電流Icellを表している。実線(a)は、イレーズ(消去)状態のリファレンスセルRC1に流れる電流を表しており、実線(b)は、プログラム(書き込み)状態のリファレンスセルRC2に流れる電流を表している。
例えば、図3に示す電流設定信号E0及びE1によって、第1のカレントミラー回路から供給される電流をリファレンスセルRC1に流れる電流の約1/3倍に設定することにより、破線(c)で表される判定レベルが得られる。さらに、第2のカレントミラー回路から供給される電流をリファレンスセルRC2に流れる電流の約1倍に設定して、第1のカレントミラー回路から供給される電流と第2のカレントミラー回路から供給される電流とを足し合わせることにより、破線(d)で表される判定レベルが得られる。
破線(d)で表される判定レベルは、読み出しモードにおいてメモリーセルに記憶されているデータを読み出す際に比較の対象となる判定電流に相当する。このように、リファレンスセルRC1に流れる電流とリファレンスセルRC2に流れる電流とに基づいて判定レベルを設定することにより、メモリーセルMCからデータを読み出す際の温度や電源電圧の影響を低下させることができる。
また、メモリーセルのベリファイモードにおいては、イレーズ状態のメモリーセルMCをベリファイするイレーズベリファイと、プログラム状態のメモリーセルMCをベリファイするプログラムベリファイとにおいて、異なる判定レベルを用いても良い。それにより、読み出しモードにおけるよりも判定レベルを厳しく設定して、メモリーセルMCに記憶されるデータの信頼性を高めることができる。
例えば、イレーズベリファイにおいては、第1のカレントミラー回路から供給される電流をリファレンスセルRC1に流れる電流の約1/2倍に設定し、第2のカレントミラー回路から供給される電流をリファレンスセルRC2に流れる電流の約1倍に設定して、第1のカレントミラー回路から供給される電流と第2のカレントミラー回路から供給される電流とを足し合わせることにより、判定電流を生成しても良い。
一方、プログラムベリファイにおいては、第1のカレントミラー回路から供給される電流をリファレンスセルRC1に流れる電流の約1/10倍に設定し、第2のカレントミラー回路から供給される電流をリファレンスセルRC2に流れる電流の約1倍に設定して、第1のカレントミラー回路から供給される電流と第2のカレントミラー回路から供給される電流とを足し合わせることにより、判定電流を生成しても良い。
このように、本実施形態によれば、メモリーセルMCに記憶されているデータを読み出す際に比較の対象となる判定電流を、リファレンスセルRC1に流れる電流とリファレンスセルRC2に流れる電流とに基づいて適切に設定することができる。また、読み出しモードと、メモリーセルのベリファイモードとにおいて、判定電流を変更することも可能になる。
しかしながら、リファレンスセルRC2の閾値電圧のばらつきにより、メモリーセルMCに記憶されているデータを読み出す際にエラーが発生するおそれがある。そこで、リファレンスセルRC2の閾値電圧を確認又は修正するために、リファレンスセルのベリファイモードが設けられている。
<ベリファイ回路>
図5は、図1に示すベリファイ回路の構成例を示す回路図である。また、図6は、図5に示すベリファイ回路の動作例を示すタイミングチャートである。ベリファイ回路72は、図3に示すリファレンスセルRC1の閾値電圧に基づいて、リファレンスセルRC2の閾値電圧を設定する。リファレンスセルのベリファイモードにおいて、ベリファイの対象となるのはリファレンスセルRC2のみであるので、リファレンスセルを選択するためのデコード回路が不要になり、回路規模をあまり大きくすることなく、リファレンスセルの閾値電圧を精度良く設定することができる。
例えば、リファレンスセルのベリファイモードにおいて、データ読み出し回路71が、リファレンスセルRC2に流れる電流に比例する電流をリファレンスセルRC1に流れる電流に比例する電流と比較する。ベリファイ回路72は、リファレンスセルRC2に流れる電流に比例する電流がリファレンスセルRC1に流れる電流に比例する電流よりも大きい場合に、リファレンスセルRC2の閾値電圧を上昇させる。それにより、リファレンスセルRC1に流れる電流とリファレンスセルRC2に流れる電流との比に従って、リファレンスセルRC2の閾値電圧を精度良く設定することができる。
図5に示すように、ベリファイ回路72は、インバーターIN4及びIN5と、NAND回路81と、フリップフロップ82及び83と、AND回路84〜86と、OR回路87とを含んでいる。インバーターIN4は、判定信号Yを反転して、反転された判定信号を出力する。インバーターIN5は、負論理のチップイネーブル信号XCEを反転して、正論理のチップイネーブル信号を出力する。
NAND回路81は、チップイネーブル信号XCEがローレベル(L)で、ベリファイ信号VFYがハイレベル(H)である場合に、クロック信号CKを反転して、反転されたクロック信号を出力する。なお、クロック信号CKは、LSIテスター等から半導体集積回路装置に供給されても良い。
フリップフロップ82及び83は、ベリファイ信号VFYがローレベルに非活性化されているときにリセットされ、ベリファイ信号VFYがハイレベルに活性化されると、リセットが解除される。フリップフロップ82は、クロック信号CKの立下りに同期してクロック信号CKを分周し、分周クロック信号CK2を出力する。フリップフロップ83は、分周クロック信号CK2の立ち上がりに同期して、反転された判定信号Yをラッチする。従って、フリップフロップ83の反転データ出力端子Xからは、分周クロック信号CK2の立ち上がりに同期してラッチされた判定信号Yが出力される。
AND回路84は、分周クロック信号CK2及びフリップフロップ83の反転データ出力端子Xから出力される判定信号Yがハイレベルである場合に、ハイレベルの出力信号を出力し、それ以外の場合に、ローレベルの出力信号を出力する。
プログラムモード信号PRGは、書き込みモードにおいてハイレベルに活性化されるので、リファレンスセルのベリファイモードにおいてはローレベルに非活性化されている。片側反転入力のAND回路85は、プログラムモード信号PRGがハイレベルであり、ベリファイ信号VFYがローレベルである場合に、ハイレベルの出力信号を出力する。リファレンスセルのベリファイモードにおいては、ベリファイ信号VFYがハイレベルであるので、AND回路85は、ローレベルの出力信号を出力する。
AND回路86は、ベリファイ信号VFYがハイレベルであり、AND回路84の出力信号がハイレベルである場合に、ハイレベルの出力信号を出力し、それ以外の場合に、ローレベルの出力信号を出力する。また、OR回路87は、AND回路85又は86の出力信号がハイレベルである場合に、内部プログラムモード信号INTPRGをハイレベルに活性化し、それ以外の場合に、内部プログラムモード信号INTPRGをローレベルに非活性化する。従って、リファレンスセルのベリファイモードにおいて、内部プログラムモード信号INTPRGは、判定信号Yがハイレベルである場合に分周クロック信号CK2と同じであり、判定信号Yがローレベルになった後にローレベルになる。
リファレンスセルのベリファイモードにおいては、内部プログラムモード信号INTPRGがローレベルである間に、メモリー制御回路70(図1)が、図3に示すセンスアンプ71aを動作させる。センスアンプ71aは、リファレンスセルRC2に流れる電流に比例する電流(リファレンスセルRC2に流れる電流と略等しい電流でも良い)をリファレンスセルRC1に流れる電流に比例する電流と比較して、比較結果を表す判定信号Yを出力する。
その際に、例えば、図4の破線(c)で表される判定レベルが用いられる。判定レベルは、図3に示す第1のカレントミラー回路の電流設定信号E0及び電流設定信号E1により、ミラー比を変えることで調整が可能である。また、図4に示すように、判定レベルは、ロジック電源電位VDDに依存して変化するので、LSIテスター等を用いてロジック電源電位VDDを調整することによって、より細かな判定レベルの調整が可能となる。
判定信号Yがハイレベルであれば、内部プログラムモード信号INTPRGがハイレベルである間に、クロック信号Cに同期して、リファレンスセルRC2のプログラムが行われる。即ち、リファレンスセルRC2のトランジスターのコントロールゲート及びソースに高電源電位VPPが印加され、ドレインに基準電源電位VSSが印加されて、リファレンスセルRC2が書き込みモードに設定される。その結果、リファレンスセルRC2の閾値電圧が上昇する。
次に、内部プログラムモード信号INTPRGがローレベルとなっている間に、センスアンプ71aが、再び、リファレンスセルRC2に流れる電流に比例する電流をリファレンスセルRC1に流れる電流に比例する電流と比較して、比較結果を表す判定信号Yを出力する。
判定信号Yがハイレベルであれば、リファレンスセルRC2のプログラムが繰り返されて、リファレンスセルRC2の閾値電圧がさらに上昇する。その際に、LSIテスターから半導体集積回路装置にデータ書き込み用の高電源電位VPPを供給して、リファレンスセルRC2のプログラム回数に応じて高電源電位VPPを上昇させても良い。また、LSIテスターから半導体集積回路装置にクロック信号CKを供給して、リファレンスセルRC2のプログラム回数に応じてクロック信号CKの周期を増加させても良い。
リファレンスセルRC2の閾値電圧が上昇して、リファレンスセルRC1に流れる電流が減少し、判定信号Yがローレベルになると、分周クロック信号CK2がハイレベルになっても、内部プログラムモード信号INTPRGがローレベルを維持する。そのような場合に、メモリー制御回路70(図1)は、リファレンスセルのベリファイモードを終了させる。
<電子機器>
次に、本発明の一実施形態に係る電子機器について、図7を参照しながら説明する。
図7は、本発明の一実施形態に係る電子機器の構成例を示すブロック図である。電子機器100は、本発明の一実施形態に係る半導体集積回路装置110と、CPU120と、操作部130と、ROM(リードオンリー・メモリー)140と、RAM(ランダムアクセス・メモリー)150と、通信部160と、表示部170と、音声出力部180とを含んでも良い。なお、図7に示す構成要素の一部を省略又は変更しても良いし、あるいは、図7に示す構成要素に他の構成要素を付加しても良い。
半導体集積回路装置110は、不揮発性メモリーを含んでおり、CPU120からのコマンドに応じて各種の処理を行う。例えば、半導体集積回路装置110は、不揮発性メモリーに記憶されているパラメーターに基づいて、入力されたデータを補正したり、データのフォーマットを変換したりする。
CPU120は、ROM140等に記憶されているプログラムに従って、半導体集積回路装置110から供給されるデータ等を用いて各種の演算処理や制御処理を行う。例えば、CPU120は、操作部130から供給される操作信号に応じて各種のデータ処理を行ったり、外部との間でデータ通信を行うために通信部160を制御したり、表示部170に各種の画像を表示させるための画像信号を生成したり、音声出力部180に各種の音声を出力させるための音声信号を生成したりする。
操作部130は、例えば、操作キーやボタンスイッチ等を含む入力装置であり、ユーザーによる操作に応じた操作信号をCPU120に出力する。ROM140は、CPU120が各種の演算処理や制御処理を行うためのプログラムやデータ等を記憶している。また、RAM150は、CPU120の作業領域として用いられ、ROM140から読み出されたプログラムやデータ、操作部130を用いて入力されたデータ、又は、CPU120がプログラムに従って実行した演算結果等を一時的に記憶する。
通信部160は、例えば、アナログ回路及びデジタル回路で構成され、CPU120と外部装置との間のデータ通信を行う。表示部170は、例えば、LCD(液晶表示装置)等を含み、CPU120から供給される表示信号に基づいて各種の情報を表示する。また、音声出力部180は、例えば、スピーカー等を含み、CPU120から供給される音声信号に基づいて音声を出力する。
電子機器100としては、例えば、スマートカード、電卓、電子辞書、電子ゲーム機器、携帯電話機等の移動端末、デジタルスチルカメラ、デジタルムービー、テレビ、テレビ電話、防犯用テレビモニター、ヘッドマウント・ディスプレイ、パーソナルコンピューター、プリンター、ネットワーク機器、カーナビゲーション装置、測定機器、及び、医療機器(例えば、電子体温計、血圧計、血糖計、心電図計測装置、超音波診断装置、及び、電子内視鏡)等が該当する。
本実施形態によれば、半導体集積回路装置110に内蔵された不揮発性メモリーに記憶されているデータを読み出す際に比較の対象となる判定電流を、2つのリファレンスセルに流れる電流に基づいて適切に設定することができる電子機器を提供することができる。例えば、半導体集積回路装置110の不揮発性メモリーにプログラムを記憶させることによりROM140を省略したり、半導体集積回路装置110の不揮発性メモリーにデータを記憶させることによりRAM150を省略したりすることができる。
以上の実施形態においては、リファレンスセルの閾値電圧を設定する場合について説明したが、メモリーセルのコントロールゲート電圧を昇圧する際に用いられるレベル検出用メモリーセルの閾値電圧を設定する場合にも、本発明を適用することができる。このように、本発明は、以上説明した実施形態に限定されるものではなく、当該技術分野において通常の知識を有する者によって、本発明の技術的思想内で多くの変形が可能である。