以下、各実施形態について図面を参照して詳しく説明する。以下では、不揮発性記憶装置の例としてフラッシュメモリを例に挙げて説明する。ただし、EEPROM(Electrically Erasable Programmable Read-Only Memory)などのように電気的に消去およびプログラム可能な不揮発性メモリであれば、フラッシュメモリに特に限定されるものではない。なお、以下の説明において同一または相当する部分には同一の参照符号を付して、その説明を繰返さない。
<第1の実施形態>
(マイクロコンピュータ)
図1は、第1の実施形態による半導体装置の構成を示すブロック図である。図1では、半導体装置の例としてマイクロコンピュータ(MCU)1の構成が示されている。
図1を参照して、マイクロコンピュータ1は、たとえばCMOS(Complementary Metal Oxide Semiconductor)集積回路製造技術などを用いることによって、単結晶シリコンのような1個の半導体チップに形成される。
図1に示すように、マイクロコンピュータ1は、中央処理装置(CPU)2と、ランダムアクセスメモリ(RAM)5と、フラッシュメモリモジュール(FMDL)6とを備える。中央処理装置2は、命令制御部と実行部を備えて命令を実行する。ランダムアクセスメモリ5は、中央処理装置2のワーク領域などに利用される。フラッシュメモリモジュール6は、データおよびプログラムを格納する不揮発性メモリモジュールとして設けられる。
マイクロコンピュータ1は、さらに、ダイレクトメモリアクセスコントローラ(DMAC)3と、バスインタフェース回路(BIF)4と、フラッシュシーケンサ(FSQC)7と、外部入出力ポート(PRT)8,9と、タイマ(TMR)10と、クロックパルスジェネレータ(CPG)11と、高速バス(HBUS)12と、周辺バス(PBUS)13とを備える。
バスインタフェース回路4は、高速バス12と周辺バス13とのバスインタフェース制御もしくはバスブリッジ制御を行う。フラッシュシーケンサ7は、フラッシュメモリモジュール(FMDL)6に対するコマンドアクセス制御を行う。クロックパルスジェネレータ11は、マイクロコンピュータ1を制御するための内部クロックCLKを生成する。
マイクロコンピュータ1のバス構成は特に制限されないが、図1の場合には、高速バス(HBUS)12と周辺バス(PBUS)13とが設けられている。高速バス12および周辺バス13の各々は、特に制限されないが、データバス、アドレスバスおよびコントロールバスを有する。高速バス12および周辺バス13という2本のバスを設けることによって、共通のバスに全ての回路を共通接続する場合に比べてバスの負荷を軽くし、高速アクセス動作を保証することができる。
高速バス12には、中央処理装置2、ダイレクトメモリアクセスコントローラ3、バスインタフェース回路4、ランダムアクセスメモリ5、およびフラッシュメモリモジュール6が接続される。周辺バス13には、フラッシュシーケンサ7、外部入出力ポート8,9、タイマ10、およびクロックパルスジェネレータ11が接続される。
マイクロコンピュータ1は、さらに、発振子が接続されるかまたは外部クロックが供給されるクロック端子XTAL/EXTALと、スタンバイ状態を指示する外部ハードウェアスタンバイ端子STBと、リセットを指示する外部リセット端子RESと、外部電源端子Vccと、外部接地端子Vssとを備える。
図1では、ロジック回路としてのフラッシュシーケンサ7と、アレイ構成のフラッシュメモリモジュール6とは、別CADツールを用いて設計されているため、便宜上別々の回路ブロックとして図示されているが、双方併せて1つのフラッシュメモリ16を構成する。
フラッシュメモリモジュール6は、読出し専用の高速アクセスポート(HACSP)15を介して高速バス(HBUS)12に接続される。CPU2またはDMAC3は、高速バス12から高速アクセスポート15を介してフラッシュメモリモジュール6をリードアクセスすることができる。CPU2またはDMAC3は、フラッシュメモリモジュール6に対して書込みおよび初期化のアクセスを行うときは、バスインタフェース4を介して周辺バス(PBUS)13経由でフラッシュシーケンサ7にコマンドを発行する。このコマンドに応答して、フラッシュシーケンサ7は、周辺バスPBUSから低速アクセスポート(LACSP)を通じてフラッシュメモリモジュールの初期化や書込み動作の制御を行う。
(メモリセルの構成および動作)
図2および図3は、メモリセルの構成および動作を説明するための図である。図2は、スプリットゲート型フラッシュメモリ素子の場合を示し、図3は、スタックド・ゲート型フラッシュメモリセルの場合を示す。
図2(A)を参照して、スプリットゲート型フラッシュメモリ素子は、ソース領域とドレイン領域との間のチャネル形成領域の上にゲート絶縁膜を介して配置されたコントロールゲートCGとメモリゲートMGとを含む。メモリゲートMGとゲート絶縁膜の間にはシリコンナイトライドなどの電荷トラップ領域(SiN)が配置される。コントロールゲートCGはワード線WLに接続され、メモリゲートMGはメモリゲート選択線MGLに接続される。コントロールゲートCG側のドレイン領域(またはソース領域)はビット線BLに接続され、メモリゲートMG側のソース領域(またはドレイン領域)はソース線SLに接続される。
図2(B)には、スプリットゲート型フラッシュメモリ素子の読出し時および書込み/消去時におけるビット線BL、コントロールゲートCG、メモリゲートMG、ソース線SL、およびウェル領域(WELL)の電圧設定の例が示されている。
具体的に、メモリセルの閾値電圧Vthを下げるには、たとえば、BL=1.5V、CG=0.0V、MG=−10V、SL=6V、WELL=0Vに設定される。これによって、ウェル領域(WELL)とメモリゲートMGとの間の高電界によって発生した電子と正孔のうち正孔が、ウェル領域(WELL)から電荷トラップ領域(SiN)に注入される。この処理はメモリゲートを共有する複数のメモリセルを単位として実行される。
メモリセルの閾値電圧Vthを上げるには、たとえば、BL=0V、CG=1.5V、MG=10V、SL=6、WELL=0Vに設定される。この場合、ソース線SLからビット線に書込み電流が流れることによって、コントロールゲートとメモリゲートとの境界部分でホットエレクトロンが発生し、発生したホットエレクトロンが電荷トラップ領域(SiN)に注入される。電子の注入はビット線電流を流すか否かによって決まるので、この処理はビット単位で制御される。
読出し時には、たとえば、BL=1.5V、CG=1.5V,MG=0V、SL=0V、WELL=0Vに設定される。メモリセルの閾値電圧Vthが低ければメモリセルの抵抗は小さくなり(オン状態)、閾値電圧Vthが高ければメモリセルの抵抗は大きくなる(オフ状態)。
図3(A)に示されたスタックド・ゲート型フラッシュメモリ素子は、ソース領域とドレイン領域との間のチャネル形成領域の上にゲート絶縁膜を介してフローティングゲートFGとコントロールゲートCGがスタックされることによって構成される。コントロールゲートCGはワード線WLに接続される。ドレイン領域はビット線BLに接続され、ソース領域はソース線SLに接続される。
図3(B)および(C)には、スタックド・ゲート型フラッシュメモリ素子の読出しおよび書込み/消去時におけるビット線BL、ワード線WL、ソース線SL、およびウェル領域(WELL)の電圧設定の例が示されている。図3(B)は、ホットキャリア書込み方式によって閾値電圧Vthを上げ、ウェル領域WELLへの電子の放出によって閾値電圧Vthを下げる場合の電圧設定例が示されている。図3(C)はFNトンネル書込み方式によって閾値電圧Vthを上げ、ビット線BLへの電子の放出によって閾値電圧Vthを下げる場合の電圧設定例が示されている。
なお、この明細書では、コントロールゲートCGを制御電極とも称し、ビット線BLに接続される不純物領域を第1の主電極とも称し、ソース線SLに接続される不純物領域を第2の主電極とも称する。
(参照電流リード方式と相補リード方式について)
図4は、相補リード方式の場合のセルデータについて説明するための図である。図5は、参照電流リード方式の場合のセルデータについて説明するための図である。
フラッシュメモリモジュールでは情報記憶の方式として、1ビットの情報の記憶を2個の不揮発性メモリセルを用いて行う相補リード方式(相補読出し方式とも称する)と、1ビットの情報の記憶を1個の不揮発性メモリセルを用いて行う参照電流リード方式(参照電流読出し方式とも称する)とがある。
図4を参照して、相補リード方式では、メモリアレイ内の予め定められた2個の書換え可能な不揮発性メモリセルMC1,MC2が1ビットのツインセルとして利用される。本明細書では、メモリセルMC1をポジティブセル、メモリセルMC2をネガティブセルと呼ぶ。メモリセルMC1,MC2のそれぞれは、セルデータ“1”(低閾値電圧状態;閾値電圧が消去ベリファイレベルよりも小さい状態)またはセルデータ“0”(高閾値電圧状態;閾値電圧が消去ベリファイレベル以上の状態)を保持することができる。
ツインセルによる情報記憶は、ツインセルを構成する不揮発性メモリセルMC1,MC2に相補データを格納することによって行われる。すなわち、図4(A)に示すように、ツインセルデータ“0”は、ポジティブセルMC1がセルデータ“0”を保持し、ネガティブセルMC2がセルデータ“1”を保持する状態である。図4(B)に示すように、ツインセルデータ“1”はポジティブセルMC1がセルデータ“1”を保持し、ネガティブセルMC2がセルデータ“0”を保持する状態である。図4(C)に示すように、ツインセルのポジティブセルMC1およびネガティブセルMC2が共にセルデータ“1”を保持する状態はイニシャライズ状態であり、ツインセルデータは不定になる。
図5を参照して、参照電流リード方式では、メモリアレイ内の書換え可能な不揮発性メモリセルMCの各々に1ビットのデータが格納される。したがって、参照電流リード方式の場合には、ポジティブセルとネガティブセルとの区別はない。図5(A)に示すように、セルデータ“1”は、メモリセルMCがセルデータ“1”を保持する状態(低閾値電圧状態)である。図5(B)に示すように、セルデータ“0”はメモリセルMCがセルデータ“0”を保持する状態(高閾値電圧状態)である。
(フラッシュメモリモジュール)
図6は、図1のフラッシュメモリモジュールの構成を表わすブロック図である。図6では、紙面の上下方向を列方向と称し、紙面の左右方向を行方向と称する。図6を参照して、フラッシュメモリモジュール6は、メモリマット20と、出力バッファ(OBUF)34と、第1の行デコーダ(RDEC1)30と、第2の行デコーダ(RDEC2)31とを含む。
メモリマット20は、階層センスアンプ帯23と、階層センスアンプ帯に対して列方向の両側に設けられたメモリアレイ22,24とを1つの構成単位(以下、メモリブロック21と称する)として含む。メモリマット20には、このようなメモリブロック21が列方向に複数配置されている(図6では1つのメモリブロック21のみが代表的に示されている)。以下では、メモリアレイ22を上側のメモリアレイ22とも称し、メモリアレイ24を下側のメモリアレイとも称する。
メモリマット20は、行方向に延びる複数のワード線WL、行方向に延びる複数のメモリゲート選択線MGL、行方向に延びる複数のソース線SL、列方向に延びる複数の副ビット線SBLを含む。これらの制御信号線はメモリアレイ22,24ごとに設けられている。
メモリマット20は、メモリマット20で共通に設けられた複数の書込み系主ビット線WMBLと読出し系主ビット線RWBLとを含む。書込み系主ビット線WMBLの各々は、複数の副ビット線SBLに対応し、対応する副ビット線SBLに副ビット線セレクタ26U,26Dを介して接続される。すなわち、書込み系主ビット線WMBLおよび副ビット線SBLは階層化されている。
メモリアレイ22,24には、複数のメモリセルMCが行列状に配設されている。メモリアレイの行は複数のワード線WLにそれぞれ対応するとともに、複数のメモリゲート選択線MGLにそれぞれ対応する。すなわち、ワード線WLおよびメモリゲート選択線MGLは、メモリアレイの行単位で設けられている。メモリアレイの列は、複数の副ビット線SBLにそれぞれ対応する。すなわち、副ビット線SBLは、メモリアレイの列単位で設けられている。ソース線SLは、メモリアレイの複数行で共通に接続される。データ読出し時には、ソース線SLは接地ノードVSSに接続されている。
なお、図6には、各メモリセルがスプリットゲート型フラッシュメモリ素子である場合が示されている。各メモリセルは、スタックド・ゲート型フラッシュメモリ素子であってもよい。この場合には、メモリゲート選択線MGLは設けられない。
図6のフラッシュメモリモジュール6の特徴は、1ビットの情報の記憶を2個の不揮発性メモリセルを用いて行う相補リード方式と、1ビットの情報の記憶を1個の不揮発性メモリセルを用いて行う参照電流リード方式とが切替え可能である点にある。
相補リード方式では、共通のワード線WLに接続された書換え可能な1対の不揮発性メモリセルがツインセルとして用いられる。図6のメモリアレイ24では、共通のワード線WLに接続された1対のメモリセルMC1,MC2が代表的に示されている。同様にメモリアレイ22では、共通のワード線WLに接続された1対のメモリセルMC3,MC4が代表的に示されている。この明細書では、メモリセルMC1,MC3をポジティブセルと称し、メモリセルMC2,MC4をネガティブセルと称する。
ツインセルを構成するメモリセルMC1,MC2において、各メモリゲートMGは、対応する共通のメモリゲート選択線MGLに接続され、各コントロールゲートCGは、対応する共通のワード線WLに接続される。各メモリセルのソースは、共通のソース線SLに接続される。メモリセルMC1,MC2は、さらに、列単位でそれぞれ対応する副ビット線SBLに接続される。
参照電流リード方式では、メモリセルMC1〜MC4の各々に1ビットのデータが格納される。この場合、ポジティブセルとネガティブセルとの区別はない。
階層センスアンプ帯23は、センスアンプSAと、読出し列セレクタ25と、副ビット線セレクタ26U,26Dとを含む。
センスアンプSAは、第1および第2の入力ノードを備え、第1の入力ノードに接続された第1の出力信号線CBLUに流れる電流と、第2の入力ノードに接続された第2の出力信号線CBLUに流れる電流との差を増幅することによって、両電流値の比較結果を出力する(以下では、第1の出力信号線CBLUを上側の出力信号線とも称し、第2の出力信号線CBLDを下側の出力信号線とも称する)。センスアンプSAの出力信号は、列方向に延びる読出し系主ビット線RMBLを介して出力バッファ(OBUF)34に伝達される。出力バッファ34は、高速バスHBUSのうちのデータバスHBUS−Dに接続されている。出力バッファ34は、この高速データバスHBUS−Dを介してセンスアンプSAの出力を図1のCPU2またはDMAC3などに出力する。
読出し列セレクタ25は、複数のPMOSトランジスタ51U〜54U,51D〜54Dを含み、これらのPMOSトランジスタを切替えることによって、各副ビット線SBLと上記の出力信号線CBLU,CBLDとの接続切替えを行う接続切替え部として機能する(以下、上記のようにスイッチとして用いられるMOSトランジスタをMOSトランジスタスイッチとも称する)。基本的に、上側のメモリアレイ22で用いられる副ビット線SBLは、PMOS(Positive-channel MOS)トランジスタスイッチ(51U,53U;52U,54Uなど)を介して、上側の出力信号線CBLUに接続される。同様に、下側のメモリアレイ24で用いられる副ビット線SBLは、PMOSトランジスタスイッチ(51D,53D;52D,54Dなど)を介して、下側の出力信号線CBLDに接続される。
さらに、読出し列セレクタ25は、相補リード方式の場合に、ネガティブセルを上記の基本的な場合の接続先と逆の出力信号線(CBLUまたはCBLD)に接続するためのPMOSトランジスタスイッチ55U,55Dを含む。たとえば、メモリセルMC1,MC2によって構成されるツインセルのデータを読み出す場合には、メモリセルMC1は、PMOSトランジスタスイッチ53D,51Dを介して下側の出力信号線CBLDに接続される。メモリセルMC2は、PMOSトランジスタスイッチ54D,55Dを介して上側の出力信号線CBLUに接続される。同様に、メモリセルMC3,MC4によって構成されるツインセルのデータを読み出す場合には、メモリセルMC3は、PMOSトランジスタスイッチ53U,51Uを介して上側の出力信号線CBLUに接続される。メモリセルMC4は、PMOSトランジスタスイッチ54U,55Uを介して下側の出力信号線CBLDに接続される。
参照電流リード方式の場合には、上記のPMOSトランジスタスイッチ55U,55Dは常時オフ状態となっている。たとえば、下側のメモリアレイ24に設けられたメモリセルMC2のデータを読み出す場合には、メモリセルMC2は、MOSトランジスタスイッチ54D,52Dを介して下側の出力信号線CBLDに接続される。上側の出力信号線CBLUは図示しない参照電流源に接続される。このとき、MOSトランジスタスイッチ52U,54Uもオン状態にすることによって、メモリセルMC4に設けられた副ビット線SBLも上側の出力信号線CBLUに接続される。この理由は、下側の出力信号線CBLDに接続されている副ビット線SBLの配線容量と同等の配線容量を上側の出力信号線CBLUにも付加するためである。
副ビット線セレクタ26U,26Dは、複数のNMOS(Negative-channel MOS)トランジスタスイッチ60U,60Dを含み、これらのNMOSトランジスタスイッチ60U,60Dのオンおよびオフを切り替えることによって、書込み系主ビット線WMBLに対して、対応する副ビット線SBLを選択的に接続する。具体的にメモリアレイ22に設けられた副ビット線SBLは、対応する主ビット線WMBLとNMOSトランジスタスイッチ60Uを介して接続される。メモリアレイ24に設けられた副ビット線SBLは、対応する主ビット線WMBLとNMOSトランジスタスイッチ60Dを介して接続される。第1の実施形態の場合、副ビット線セレクタ26U,26Dは、データ書込み時のみに用いられ、データ読出し時には用いられない。
第1の行デコーダ(RDEC1)30は、ワード線WLを選択的に活性化するためのドライバ180を含む。第2の行デコーダ(RDEC2)31は、メモリゲート線MGLを選択的に活性化するためのドライバ182、およびソース線SLを選択的に活性化するためのドライバ183を含む。第2の行デコーダ31は、さらに、副ビット線セレクタ26U,26Dを制御する制御信号線ZLを選択的に活性化するためのドライバ183を含む。この制御信号線ZLは、副ビット線セレクタ26U,26Dに設けられたNMOSトランジスタスイッチ60U,60Dのゲートに接続される。第1の行デコーダ30および第2の行デコーダ31による選択動作は、読出しアクセスでは図1の高速アクセスポート(HACSP)15に供給されるアドレス情報などに従い、データの書込み動作および初期化動作(消去動作)では図1の低速アクセスポート(LACSP)14に供給されるアドレス情報などに従う。
フラッシュメモリモジュール6は、さらに、入出力バッファ(IOBUF)33と、主ビット線電圧制御回路39と、列デコーダ(CDEC)32と、書換え列セレクタ38と、ベリファイ回路37と、電源回路(VPG)35と、タイミングジェネレータ(TMG)36とを含む。
入出力バッファ(IOBUF)33は、低速アクセスポート(LASCP)14を介して、周辺バス(PBUS)13のうちのデータバスPBUS−D(以下、周辺データバスPBUS−Dとも称する)と接続される。入出力バッファ33は、周辺データバスPBUS−Dを介して書込みデータを受ける。入出力バッファ33は、さらに、ベリファイセンスアンプVSAの判定結果を周辺データバスPBUS−Dに出力する。
主ビット線電圧制御回路39は、書込み系主ビット線WMBLにそれぞれ対応して設けられた複数のプログラムラッチ回路PRGLを含む。プログラムラッチ回路PRGLは、入出力バッファ33を介して供給された書込みデータを保持する。データ書込みの際に書込み系主ビット線WMBLには、対応するプログラムラッチ回路PRGLに保持されたデータ(“1”または“0”)に従った書込み電流が選択的に流れる。
列デコーダ(CDEC)32は、図1の低速アクセスポート(LACSP)14に供給されるアドレス情報などに従って、書込み系主ビット線WMBLを選択するための制御信号などを生成する。
書換え列セレクタ38は、各書込み系主ビット線WMBLとベリファイセンスアンプVSAとを選択的に接続するためのNMOSトランジスタスイッチ80Bと、入出力バッファ33とプログラムラッチ回路PRGLとを選択的に接続するためのNMOSトランジスタスイッチ80Lとを含む。NMOSトランジスタスイッチ80B,80Lは、列デコーダ32からの制御信号に従ってオンまたはオフに切り替わる。NMOSトランジスタスイッチ80Lがオンすることによって、対応するプログラムラッチ回路PRGLに入出力バッファ33から書込みデータが入力される。
ベリファイ回路37は、書込み対象のメモリセルのデータと、プログラムラッチ回路PRGLに保持されている書込みデータとが一致するか否かを判定することによって、書込み対象のメモリセルに所望のデータが書き込まれているかどうかを判定する。ベリファイ回路37は、書込み対象のメモリセルのデータを読み出すためのベリファイセンスアンプVSAを含む。ベリファイセンスアンプVSAは、書換え列セレクタ38の選択動作によって(すなわち、対応するNMOSトランジスタスイッチ80Bがオンすることによって)、書込み対象のメモリセルに対応する書込み系主ビット線WMBLと接続される。
電源回路(VPG)35は、読出し、書込み、初期化(消去)に必要な各種動作電圧を生成する。生成される複数の電圧のうち、電源電圧(電源ノードVDDの電圧)は、半導体装置内におけるCMOS回路の電源電圧である。上述のメモリゲートMG、コントロールゲートCG、ソース線SL、ウェル(WELL)、ビット線BLへ与える電圧は、フラッシュシーケンサ7の制御に従って、電源回路(VPG)35で生成されて供給される。
タイミングジェネレータ(TMG)36は、図1のCPU2等から高速アクセスポート(HACSP)15に供給されるアクセスストローブ信号、フラッシュシーケンサ(FSQC)7から高速アクセスポート15に供給されるアクセスコマンド等に従って、内部動作タイミングを規定する内部制御信号を生成する。フラッシュメモリ16の制御部は、図1のフラッシュシーケンサ(FSQC)7とタイミングジェネレータ36とによって構成される。
(読出し系回路の詳細)
図7は、図6の階層センスアンプ帯の詳細な構成を示す図である。具体的に、図7には、図6の階層センスアンプ帯23のうちで、センスアンプSA、読出し列セレクタ25、および下側の副ビット線セレクタ26Dの構成と、下側のメモリアレイ24の第m行の構成とが示されている。さらに、図6では、読出し列セレクタ25と副ビット線セレクタ26Dとの間に設けられた充放電回路27Dの構成も示されている。なお、図7では図示していないが、読出し列セレクタ25と上側の副ビット線セレクタ26Uとの間にも、充放電回路27Dと同様の構成の充放電回路27Uが設けられている。
図7では、4本の書込み系主ビット線WMBL0〜WMBL3、上側のメモリアレイ22に設けられた8本の副ビット線SBL_U0〜SBL_U7、下側のメモリアレイ24に設けられた8本の副ビット線SBL_D0〜SBL_D7、および1本の読出し系主ビット線RMBL0が代表的に示されている。図7では図示していないが、実際のメモリセルモジュール6では、これらのビット線が行方向に繰り返して設けられている。
副ビット線SBLは、1本の書込み系主ビット線WMBLに対して、メモリアレイごとに2本ずつ割り当てられる。具体的に、下側のメモリアレイ24では、書込み系主ビット線WMBLi(ただし、i=0〜3)に副ビット線SBL_D2×i,SBL_D2×i+1が割当てられる。上側のメモリアレイ22では、書込み系主ビット線WMBLi(ただし、i=0〜3)に副ビット線SBL_U2×i,SBL_U2×i+1が割当てられる。
相補リード方式の場合には、互いに異なる副ビット線SBLに接続され、かつ、共通のワード線WLに接続されたメモリセル同士がツインセルを構成する。具体的に図7の場合には、副ビット線SBL_D0,SBL_D4に接続されたメモリセルのうちで、共通のワード線WLに接続されたメモリセル同士がツインセルを構成する。同様に、副ビット線SBL_Di,SBL_Di+4(ただし、i=0〜3)に接続されたメモリセル同士がツインセルを構成する。副ビット線SBL_D0〜SBL_D3に接続されたメモリセルはポジティブセルとして用いられ、SBL_D4〜SBL_D7に接続されたメモリセルはネガティブセルとして用いられる。上側のメモリアレイ22に設けられたメモリセルについても同様である。
副ビット線セレクタ26Dは、副ビット線SBL_D0〜SBL_D7にそれぞれ対応するNMOSトランジスタスイッチ60D0〜60D7と、制御信号線ZL_D0,ZL_D1とを含む。各NMOSトランジスタスイッチ60D0〜60D7は、対応する副ビット線SBLと、対応する副ビット線SBLが割当てられた書込み系主ビット線WMBLとの間に接続される。制御信号線ZL_D0は偶数番目のNMOSトランジスタスイッチ60D0,60D2,60D4,60D6のゲートに接続され、制御信号線ZL_D1は奇数番目のNMOSトランジスタスイッチ60D1,60D3,60D5,60D7のゲートに接続される。
充放電回路27Dは、偶数番目の副ビット線SBL_D0,SBL_D2,SBL_D4,SBL_D6に個別に対応する複数のPMOSトランジスタスイッチ58D0と、奇数番目の副ビット線SBL_D1,SBL_D3,SBL_D5,SBL_D7に個別に対応する複数のPMOSトランジスタスイッチ58D1と、制御信号線CH_D0N,CH_D1Nとを含む。各PMOSトランジスタスイッチ58D0または58D1は、対応する副ビット線SBLと電源ノードVDDとの間に接続される。制御信号線CH_D0Nは偶数番目のPMOSトランジスタ58D0のゲートに接続され、制御信号線CH_D1Nは奇数番目のPMOSトランジスタ58D1のゲートに接続される。
充放電回路27Dは、さらに、偶数番目の副ビット線SBL_D0,SBL_D2,SBL_D4,SBL_D6に個別に対応する複数のNMOSトランジスタスイッチ59D0と、奇数番目の副ビット線SBL_D1,SBL_D3,SBL_D5,SBL_D7に個別に対応する複数のNMOSトランジスタスイッチ59D1と、制御信号線DC_D0,DC_D1とを含む。各NMOSトランジスタスイッチ59D0または59D1は、対応する副ビット線SBLと接地ノードVSSとの間に接続される。制御信号線DC_D0は偶数番目のNMOSトランジスタ59D0のゲートに接続され、制御信号線DC_D1は奇数番目の各NMOSトランジスタ59D1のゲートに接続される。
充放電回路27Uの構成は、上記の充放電回路27Dの構成の説明において、添え字のDをUに置き換えたものに相当するので説明を繰返さない。
読出し列セレクタ25は、下側のメモリアレイ24に設けられている副ビット線SBL_D0〜SBL_D7を下側の出力信号線CBLDに選択的に接続するためのPMOSトランジスタスイッチ51D,52D,53D0〜53D3,54D0〜54D3を含む。さらに、読出し列セレクタ25は、上側のメモリアレイ22に設けられた副ビット線SBL_U0〜SBL_U7を上側の出力信号線CBLUに選択的に接続するためのPMOSトランジスタスイッチ51U,52U,53U0〜53U3,54U0〜54U3を含む。
上記のPMOSトランジスタスイッチの具体的な接続関係は次のとおりである。まず、PMOSトランジスタスイッチ53D0〜53D3は副ビット線SBL_D0〜D3にそれぞれ対応し、各々が、対応の副ビット線SBLと共通ノード62Dとの間にそれぞれ接続される。PMOSトランジスタスイッチ51Dは、共通ノード62Dと下側の出力信号線CBLDとの間に接続される。PMOSトランジスタスイッチ54D0〜54D3は副ビット線SBL_D4〜D7にそれぞれ対応し、各々が、対応の副ビット線SBLと共通ノード63Dとの間にそれぞれ接続される。PMOSトランジスタスイッチ52Dは、共通ノード63Dと下側の出力信号線CBLDとの間に接続される。
同様に、PMOSトランジスタスイッチ53U0〜53U3は副ビット線SBL_U0〜U3にそれぞれ対応し、各々が、対応の副ビット線SBLと共通ノード62Uとの間にそれぞれ接続される。PMOSトランジスタスイッチ51Uは、共通ノード62Uと上側の出力信号線CBLUとの間に接続される。PMOSトランジスタスイッチ54U0〜54U3は副ビット線SBL_U4〜U7にそれぞれ対応し、各々が、対応の副ビット線SBLと共通ノード63Uとの間にそれぞれ接続される。PMOSトランジスタスイッチ52Uは、共通ノード63Uと上側の出力信号線CBLUとの間に接続される。
読出し列セレクタ25は、さらに、上記のPMOSトランジスタスイッチのオンおよびオフを切り替えるための制御信号線YRB_D0N,YRB_D1N,YRA_D0N〜YRA_D3N,YRB_U0N,YRB_U1N,YRA_U0N〜YRA_U3Nを含む。具体的に、制御信号線YRB_D0N,YRB_D1Nは、PMOSトランジスタスイッチ51D,52Dのゲートにそれぞれ接続される。制御信号線YRA_DiNは(i=0〜3)、PMOSトランジスタスイッチ53Diおよび54Diのゲートに接続される。各制御信号線YRA_DiNが、2個のPMOSトランジスタスイッチ53Di,54Diに接続されているのは、ツインセルに対応する2本の副ビット線SBLを同時に選択するためである。
同様に、制御信号線YRB_U0N,YRB_U1Nは、PMOSトランジスタスイッチ51U,52Uのゲートにそれぞれ接続される。制御信号線YRA_UiNは(i=0〜3)、PMOSトランジスタスイッチ53Uiおよび54Uiのゲートに接続される。
読出し列セレクタ25は、さらに、定電流源CS1,CS2と、これらの定電流源CS1,CS2と上側の出力信号線CBLUとの接続をそれぞれ切替えるためのNMOSトランジスタスイッチ56U,57Uと、これらの定電流源CS1,CS2と下側の出力信号線CBLDとの間の接続をそれぞれ切替えるためのNMOSトランジスタスイッチ56D,57Dとを含む。PMOSトランジスタ56U,56Dは、共通ノード62U,62Dと定電流源CS1との間にそれぞれ接続される。PMOSトランジスタ57U,57Dは、共通ノード63U,63Dと定電流源CS2との間にそれぞれ接続される。読出し列セレクタ25は、さらに、NMOSトランジスタスイッチ56U,57Uのゲートに接続された制御信号線REF_Uと、NMOSトランジスタスイッチ56D,57Dのゲートに接続された制御信号線REF_Dとを含む。
上記の電流源CS1,CS2は、たとえば、定電圧がゲートに印加されたNMOSトランジスタによって構成される。なお、電流源CS1,CS2に相当する参照セルを各メモリアレイ内に設け、参照セルを流れる電流と読出し対象のメモリセルを流れる電流とを比較するように階層センスアンプ帯23を構成してもよい。
読出し列セレクタ25は、さらに、下側のメモリアレイ24のネガティブセルと上側の出力信号線CBLUとの接続を切替えるためのPMOSトランジスタスイッチ55Dと、上側のメモリアレイ22のネガティブセルと下側の出力信号線CBLDとの接続を切替えるためのPMOSトランジスタスイッチ55Uとを含む。PMOSトランジスタスイッチ55Dは、共通ノード63Dと上側の出力信号線CBLUとの間に接続され、PMOSトランジスタスイッチ55Uは、共通ノード63Uと下側の出力信号線CBLDとの間に接続される。
なお、上記の制御信号線の表記において参照符号の末尾がNの場合には、ローレベル(Lレベル)の信号によって当該制御信号線は活性化され、当該活性化された制御信号線に接続されているPMOSトランジスタスイッチがオン状態になることを意味している。上記の制御信号線の表記において参照符号の末尾がNでない場合には、ハイレベル(Hレベル)の信号によって当該制御信号線は活性化され、当該活性化された制御信号線に接続されているNMOSトランジスタスイッチがオン状態になることを意味している。
(参照電流リード方式におけるメモリセル電流および参照電流の経路について)
次に、図7を参照して、参照電流リード方式において、メモリセルMC1のデータを読み出す場合のセル電流Icの経路と参照電流Irefの経路とについて説明する。
メモリセルMC1のデータを読み出す場合には、メモリセルMC1のコントロールゲートに接続されているワード線WLmがHレベルに活性化される。さらに、制御信号線YRA_D0N,YRB_D0Nを活性化させることによって、セル電流Icを発生させる。セル電流Icは、センスアンプSAから、出力信号線CBLD、PMOSトランジスタスイッチ51D,53D0、副ビット線SBL_D0、メモリセルMC1を順に経由して、ソース線SLに至る方向に流れる。データ読出し時には、ソース線SLは接地ノードVSSに接続されている。
参照電流Irefを発生させるためには、制御信号線YRB_U0N,REF_Uを活性化させる。参照電流Irefは、センスアンプSAから、出力信号線CBLU、PMOSトランジスタスイッチ51U,56U、電流源CS1を順に経由して、接地ノードVSSに至る方向に流れる。電流源CS1によって参照電流Irefの大きさが調整される。
参照電流Irefを発生させる際には、さらに、制御信号線YRA_U0Nを活性化することによって、PMOSトランジスタスイッチ53U0をオンする。これによって、副ビット線SBL_U0の配線容量が、電流源側CS1側の出力信号線CBLUに付加される。副ビット線SBL_U0の配線容量は、メモリセルMC1に接続された副ビット線SBL_D0の配線容量とほぼ同じ値である。したがって、センスアンプSAの第1の入力ノードの負荷と第2の入力ノードの負荷とをほぼ等しくすることができるので、セル電流Icと参照電流Irefの正確な比較(すなわち、メモリセルMC1のデータの正確な検出)が可能になる。
センスアンプSAは、セル電流Icと参照電流Irefとの差を増幅する。センスアンプSAの出力信号は、読出し系主ビット線RMBL0を介して出力バッファOBUFに伝達される。
なお、参照電流リード方式の場合には、制御信号線YRB_U1CN,YRB_D1CNは常に非活性状態(Hレベル)に維持される。すなわち、PMOSトランジスタスイッチ55U,55Dは常にオフ状態である。
(相補リード方式におけるメモリセル電流の経路について)
図8は、図7の回路構成において相補リード方式の場合のメモリセル電流の経路を示す図である。図8では、ツインセルを構成するメモリセルMC1,MC2のデータを読み出す場合において、メモリセルMC1を流れるセル電流Ic1の経路と、メモリセルMC2を流れるセル電流Ic2の経路とが示されている。
メモリセルMC1,MC2のデータを読み出す場合には、メモリセルMC1,MC2に共通に接続されているワード線WLmが活性化される。この状態で、制御信号線YRA_D0N,YRB_D0N,YRB_D1CNを活性化させることによって、セル電流Ic1およびIc2を発生させる。セル電流Ic1は、センスアンプSAから、出力信号線CBLD、PMOSトランジスタスイッチ51D,53D0、副ビット線SBL_D0、メモリセルMC1を順に経由して、ソース線SLに至る方向に流れる。セル電流Ic2は、センスアンプSAから、出力信号線CBLU、PMOSトランジスタスイッチ55D,54D0、副ビット線SBL_D4、メモリセルMC2を順に経由して、ソース線SLに至る方向に流れる。データ読出し時には、ソース線SLは接地ノードVSSに接続されている。
センスアンプSAは、セル電流Ic1とセル電流Ic2との差を増幅する。センスアンプSAの出力信号は、読出し系主ビット線RMBL0を介して出力バッファOBUFに伝達される。
なお、相補リード方式の場合には、制御信号線REF_U,REF_Dは常にLレベルに非活性化され、制御信号線YRB_U1N,YRB_D1Nは常にHレベルに非活性化される。すなわち、NMOSトランジスタ56U,56D,57U,57DおよびPMOSトランジスタ52U,52Dは常時オフ状態である。
(階層センスアンプ帯の制御信号線の駆動回路について)
図9は、図7の階層センスアンプ帯の各制御信号線を駆動するための駆動回路の構成を示す図である。図9(A)は図6の上側のメモリアレイ22の読出しおよび書込みに関係する制御信号線用の駆動回路の構成を示し、図9(B)は図6の下側のメモリアレイ24の読出しおよび書込みに関係する制御信号線用の駆動回路を示す。
図9(A)および(B)の入力信号のうち、制御信号CMPLONは、読出しおよび書込み対象のメモリセルが相補リード方式か参照電流リード方式かを区別するための信号であり、図1のフラッシュシーケンサ(FSQC)7から供給される。相補リード方式の場合、制御信号CMPLONはHレベル(“1”)となり、参照電流リード方式の場合、制御信号CMPLONはLレベル(“0”)となる。
その他の入力信号は、フラッシュシーケンサ(FSQC)7からの制御信号と、図6のタイミングジェネレータ36からの制御信号と、入出力バッファ(IOBUF)33に入力されたアドレスに基づいて、列デコーダ(CDEC)32によって生成される。特に、制御信号YRA_U0〜3_in,YRA_D0〜3_inは下位アドレスに基づく列選択信号であり、制御信号YRB_U0〜3_in,YRB_D0〜3_inは上位アドレスに基づく列選択信号である。
図9(A)を参照して、制御信号線ZL_U0,ZL_U1,DC_U0,DC_U1に供給される信号は、それぞれ、制御信号ZL_U0_in,ZL_U1_in,DC_U0_in,DC_U1_inがバッファ101,102,105,106によって増幅されることによって生成される。同様に図9(B)を参照して、制御信号線ZL_D0,ZL_D1,DC_D0,DC_D1に供給される信号は、それぞれ、制御信号ZL_D0_in,ZL_D1_in,DC_D0_in,DC_D1_inがバッファ127,128,125,126によって増幅されることによって生成される。
図9(A)を参照して、制御信号線CH_U0N,CH_U1N,YRA_U0N〜YRA_U3N,YRB_U0Nに供給される信号は、それぞれ、制御信号CH_U0_in,CH_U1_in,YRA_U0_in〜YRA_U3_in,YRB_U0_inがインバータ103,104,107〜110,112によって反転増幅されることによって生成される。同様に図9(B)を参照して、制御信号線CH_D0N,CH_D1N,YRA_D0N〜YRA_D3N,YRB_D0Nに供給される信号は、それぞれ、制御信号CH_D0_in,CH_D1_in,YRA_D0_in〜YRA_D3_in,YRB_D0_inがインバータ123,124,119〜122,115によって反転増幅されることによって生成される。
図9(A)を参照して、制御信号線REF_U,YRB_U1N,YRB_U1CNに供給される信号は、それぞれ論理ゲート111,113,114によって生成される。具体的に、論理ゲート111は、CMPLON=“0”(参照電流リード方式)の場合に、制御信号REF_U_inを増幅した信号を制御信号線REF_Uに出力する。論理ゲート111は、CMPLON=“1”(相補リード方式)の場合に、制御信号REF_U_inによらずにLレベル(“0”)の信号を出力することによって、制御信号線REF_Uを非活性化する。
論理ゲート113は、CMPLON=“0”(参照電流リード方式)の場合に、制御信号YRB_U1_inを反転増幅した信号を制御信号線YRB_U1Nに出力する。論理ゲート113は、CMPLON=“1”(相補リード方式)の場合に、制御信号YRB_U1_inによらずにHレベル(“1”)の信号を出力することによって、制御信号線YRB_U1Nを非活性化する。
論理ゲート114は、CMPLON=“0”(参照電流リード方式)の場合に、制御信号YRB_U1_inによらずにHレベル(“1”)の信号を出力することによって、制御信号線YRB_U1CNを非活性化する。論理ゲート114は、CMPLON=“1”(相補リード方式)の場合に、制御信号YRB_U0_inを反転増幅した信号を制御信号線YRB_U1CNに出力する。
同様に、図9(B)を参照して、制御信号線REF_D,YRB_D1N,YRB_D1CNに供給される信号は、それぞれ論理ゲート118,116,117によって生成される。具体的に、論理ゲート118は、CMPLON=“0”(参照電流リード方式)の場合に、制御信号REF_D_inを増幅した信号を制御信号線REF_Dに出力する。論理ゲート118は、CMPLON=“1”(相補リード方式)の場合に、制御信号REF_D_inによらずにLレベル(“0”)の信号を出力することによって、制御信号線REF_Dを非活性化する。
論理ゲート116は、CMPLON=“0”(参照電流リード方式)の場合に、制御信号YRB_D1_inを反転増幅した信号を制御信号線YRB_D1Nに出力する。論理ゲート116は、CMPLON=“1”(相補リード方式)の場合に、制御信号YRB_D1_inによらずにHレベル(“1”)の信号を出力することによって、制御信号線YRB_D1Nを非活性化する。
論理ゲート117は、CMPLON=“0”(参照電流リード方式)の場合に、制御信号YRB_D1_inによらずにHレベル(“1”)の信号を出力することによって、制御信号線YRB_D1CNを非活性化する。論理ゲート117は、CMPLON=“1”(相補リード方式)の場合に、制御信号YRB_D0_inを反転増幅した信号を制御信号線YRB_D1CNに出力する。
(制御信号CMPLONの生成回路の一例)
図10は、図9の制御信号CMPLONの生成回路の一例を示す図である。図10に示す回路は、図6のフラッシュシーケンサ(FSQC)7に設けられる。この回路は、複数のレジスタ130と、比較器131とを含む。
複数のレジスタ130は、図6のメモリマット20を構成する複数のメモリアレイのうち、相補リード方式で利用したい領域のアドレス情報を予め格納するためのものである。比較器131は、外部から入力されたアドレス情報ADDRと、複数のレジスタ130に格納されたアドレス情報とを比較し、両者が一致した場合に制御信号CMPLONをアサートする。図10の回路によって、アクセス先の領域が、参照電流リード方式とするか相補読リード方式とするかの判定ができる。この回路を複数配置することにより、複数の領域に関して、参照電流リード方式と相補リード方式とするかの判定が可能になる。
なお、参照電流リード方式と相補リード方式とで、読出しタイミングなどを変更する必要があるときは、図6のタイミングジェネレータ36において生成されるリードタイミング信号をCMPLON信号に基づき変更することで安定的な読出しが可能になる。
(センスアンプの構成例)
図11は、図7および図8のセンスアンプの構成例を示す回路図である。図11を参照して、センスアンプSAは、PMOSトランジスタ140〜144と、NMOSトランジスタ145〜147と、セレクタ149と、3ステートバッファ149とを含む。
PMOSトランジスタ142は、図6で説明した第1の出力信号線CBLUと第2の出力信号線CBLDとの間に接続される。PMOSトランジスタ140,141は、第1の出力信号線CBLUと第2の出力信号線CBLDとの間に互いに直列かつPMOSトランジスタ142と並列に接続される。PMOSトランジスタ140,141の接続ノードは電源ノードVDDに接続される。PMOSトランジスタ140,141,142のゲートにはプリチャージ信号PCが与えられる。
PMOSトランジスタ143は、ソースが電源ノードVDDに接続され、ドレインが出力信号線CBLDに接続され、ゲートが出力信号線CBLUに接続される。PMOSトランジスタ144は、ソースが電源ノードVDDに接続され、ドレインが出力信号線CBLUに接続され、ゲートが出力信号線CBLDに接続される。
NMOSトランジスタ145は、ソースがノード135に接続され、ドレインが出力信号線CBLDに接続され、ゲートが出力信号線CBLUに接続される。NMOSトランジスタ146は、ソースがノード135に接続され、ドレインが出力信号線CBLUに接続され、ゲートが出力信号線CBLDに接続される。NMOSトランジスタ147は、ドレインがノード135に接続され、ソースが接地ノードVSSに接続される。MOSトランジスタ147のゲートには、センスイネーブル信号SENが入力される。
上記のPMOSトランジスタ143,144およびNMOSトランジスタ145,146によって2個のインバータを組み合わせたラッチ回路136が構成される。センスイネーブル信号SENがHレベル(“1”)となることによってラッチ回路136が動作し、出力信号線CBLU,CBLD間の電位差が増幅される。
セレクタ148は、フラッシュシーケンサ(FSQC)7から出力された選択信号SELUに従って、選択信号SELUが“0”の場合には上側の出力信号線CBLUの電位を出力し、選択信号SELUが“1”の場合には下側の出力信号線CBLDの電位を出力する。
3ステートバッファ149は、センスイネーブル信号SENがHレベル(“1”)のときは、セレクタ148の出力信号を増幅した信号を読出し系主ビット線RMBLに出力する。3ステートバッファ149の出力ノードは、センスイネーブル信号SENがLレベル(“1”)のときは高インピーダンスになる。
上記の構成のセンスアンプSAの動作の詳細は、図14および図15を参照して後述するが、概略的には次のとおりである。まず、予めプリチャージ信号PCを活性状態(Lレベル)にして、出力信号線CBLU,CBLDを電源電位にプリチャージした状態で、各出力信号線に読出し対象のメモリセルまたは参照電流源を電気的に接続する。次に、プリチャージ信号PCをHレベルにすると、読出し対象のメモリセルに格納されているデータに応じてセル電流の大きさが異なるので、上側の出力信号線CBLUの電位と下側の出力信号線CBLDの電位とに差が生じる。次に、センスイネーブル信号SENをHレベルに変化させることによって、ラッチ回路136の動作を開始させる。この結果、上記の出力信号線CBLU,CBLD間の電位差が増幅される。セレクタ148によって選択された一方の出力信号線の電位は、3ステートバッファ149を介して読出し系主ビット線RMBLに出力される。
(出力バッファの構成例)
図12は、図6の出力バッファの構成例を示す回路図である。図12には、2本の読出し系主ビット線RMBL0,RMBL1が代表的に示されている。
図12を参照して、出力バッファ(OBUF)34は、読出し系主ビット線RMBL0,RMBL1,…にそれぞれ対応するPMOSトランジスタ150_0,150_1,…と、読出し系主ビット線RMBL0,RMBL1にそれぞれ対応するバッファ151_0,151_1,…とを含む。
PMOSトランジスタ150は、電源ノードVDDと対応の読出し系主ビット線RMBLとの間に接続される。各PMOSトランジスタ150のゲートには、制御信号SEN_ORが共通に与えられる。制御信号SEN_ORがLレベルのとき、各PMOSトランジスタ150はオン状態であるので、読出し系主ビット線は電源電位にチャージされている。制御信号SEN_ORがHレベルのとき、各読出し系主ビット線RMBLの電位は、対応する図11のセンスアンプSAの出力信号電位に等しくなる。バッファ151は、各センスアンプSAから対応の読出し系主ビット線RMBLに出力された信号電位を増幅して高速バス(HBUS)のうちの対応するデータバス(HBUS−D0,HBUS−D1,…)に出力する。
図13は、図12の制御信号SEN_ORを生成する回路の一例を示す図である。図13の回路は、フラッシュシーケンサ(FSQC)7に設けられる。具体的に、図13の回路は、ORゲート290,291と、遅延回路292とを含む。
ORゲート290は、読出し系主ビット線RMBL0〜RMBLnにそれぞれ対応して設けられたセンスアンプSAにそれぞれ入力されるセンスイネーブル信号SEN0〜SENnを受ける。ORゲート290は、これらのセンスイネーブル信号SEN0〜SENnの論理和を出力する。
遅延回路292は、複数のバッファを従属接続したものである。ORゲート291は、ORゲート290の出力信号とこの出力信号を遅延回路292によって遅延させた信号との論理和を制御信号SEN_ORとして出力する。
(参照電流リード方式での読出し動作)
図14は、参照電流リード方式での読出し動作の一例を示すタイミングチャートである。以下、主として図6、図7、図14を参照して、参照電流リード方式の場合において、メモリアレイ24に設けられたメモリセルMC1のデータ読出しの手順について説明する。以下の説明では、メモリセルMC1にはデータ“0”(閾値電圧が高い状態)が書き込まれているとする。
まず、図14の時刻t1にアドレス情報が切り替わる。時刻t2に、図1のフラッシュシーケンサ(FSQC)7はアドレス取り込み信号を出力し、この信号に応答して、入出力バッファ(IOBUF)33はアドレス情報を取り込む。取り込まれたアドレス情報は、列デコーダ32および行デコーダ30,31においてデコードされる。
時刻t3において、行デコーダ30,31に設けられたドライバは、アドレス信号に基づいてメモリセルMC1のデータ読出しに必要な制御信号線を活性化する。具体的には次のとおりである。
(i) 制御信号線DC_U0,DC_D0に供給するディスチャージ信号は非活性状態(Lレベル)に切替えられ、制御信号線DC_U1,DC_D1は活性状態(Hレベル)のまま維持される。一方、制御信号線CH_U0N,CH_D0Nに供給するチャージ信号は活性状態(Lレベル)に切替えられ、制御信号線CH_U1N,CH_D1Nは非活性状態(Hレベル)のまま維持される。これによって、少なくとも読出し対象のメモリセルMC1が接続された副ビット線SBL_D0および上側のメモリアレイ22の同じ列の副ビット線SBL_U0は電源電位にプリチャージされ、それに隣接する副ビット線SBL_D1,SBL_U1は接地電位に維持される。これによって、隣接する副ビット線SBLをグランドシールドとして機能させ、不所望な容量カップリングによる誤動作を防止することができる。
(ii) 制御信号線YRA_U0N,YRA_D0N,YRB_U0N,YRB_D0Nは活性状態(Lレベル)に切替えられる。これによって、メモリセルMC1に対応する列の副ビット線SBL_D0,SBL_U0が出力信号線CBLD,CBLUにそれぞれ電気的に接続される。なお、相補リード方式の場合に用いられる制御信号線YRB_U1CN,YRB_D1CNは非活性状態(Hレベル)のまま維持される。
(iii) 制御信号線REF_Uを活性状態(Hレベル)にすることによって、電流源CS1が上側の出力信号線CBLUに電気的に接続される。
(iv) 読出し対象のメモリセルMC1に接続されたワード線WLmが活性状態(Hレベル)に切替えられる。
(v) 下側のメモリアレイに設けられたメモリセルMC1のデータを読み出す場合には、センスアンプSAのセレクタ148(図11参照)に供給する選択信号SELUはLレベル(“0”)に設定される。
次の時刻t4において、フラッシュシーケンサ(FSQC)7からセンスアンプSAに供給されているプリチャージ信号PCが非活性状態(Hレベル)に変化するとともに、行デコーダ30,31のドライバから制御信号線CH_U0N,CH_D0Nに供給されているチャージ信号が非活性状態(Hレベル)に変化する。この結果、下側の出力信号線CBLDからメモリセルMC1の方向へセル電流Icが流れ、上側の出力信号線CBLUから電流源CS1の方向へ参照電流Irefが流れる。メモリセルMC1にはデータ“0”(閾値電圧が高い状態)が書き込まれているので、セル電流Icは参照電流Irefより小さい。したがって、上側の出力信号線CBLUの電位のほうが、下側の出力信号線CBLDの電位よりも低くなる。
次の時刻t5において、フラッシュシーケンサ(FSQC)7は、センスアンプSAに出力するセンスイネーブル信号SENを活性状態(Hレベル)に変化させる。これによって、図11のNMOSトランジスタ147がオンするのでラッチ回路136が動作し始める。ラッチ回路136が出力信号線CBLU,CBLD間の電位差を増幅する結果、上側の出力信号線CBLUの電位は接地電位(VSS)まで低下し、下側の出力信号線CBLDの電位は電源電位(VDD)まで上昇する。上側の出力信号線CBLUの電位は、セレクタ148および3ステートバッファを介して読出し系主ビット線RMBLに出力される。
さらに、時刻t5に、センスイネーブル信号SENが活性化することによって、出力バッファ(OBUF)34に出力される制御信号SEN_ORも活性状態(Hレベル)に変化する。これによって、センスアンプSAから読出し系主ビット線RMBLに出力された電圧信号は、読出し系主ビット線RMBLを介して出力バッファ(OBUF)34に伝達され、出力バッファ34から高速バス(HBUS)のうちの対応のデータバスに出力される。
(相補リード方式での読出し動作)
図15は、相補リード方式での読出し動作の一例を示すタイミングチャートである。以下、主として図6、図8、図15を参照して、相補リード方式の場合において、メモリアレイ24に設けられたメモリセルMC1,MC2によって構成されるツインセルのデータを読出す手順について説明する。以下の説明では、メモリセルMC1にはデータ“0”(閾値電圧が高い状態)が書き込まれ、メモリセルMC2にはデータ“1”(閾値電圧が低い状態)が書き込まれているとする。
まず、図15の時刻t1において読出しアドレスが切替わり、時刻t2においてフラッシュシーケンサ(FSQC)7からアドレス取り込み信号が出力される点は図14の場合と同様である。
時刻t3において、行デコーダ30,31に設けられたドライバは、アドレス信号に基づいてメモリセルMC1,MC2のデータ読出しに必要な制御信号線を活性化する。具体的には次のとおりである。
(i) 制御信号線DC_U0,DC_D0に供給するディスチャージ信号は非活性状態(Lレベル)に切替えられ、制御信号線DC_U1,DC_D1は活性状態(Hレベル)のまま維持される。一方、制御信号線CH_U0N,CH_D0Nに供給するチャージ信号は活性状態(Lレベル)に切替えられ、制御信号線CH_U1N,CH_D1Nは非活性状態(Hレベル)のまま維持される。これによって、少なくとも読出し対象のメモリセルMC1,MC2が接続された副ビット線SBL_D0,SBL_D4および上側のメモリアレイ22の同じ列の副ビット線SBL_U0,SBL_U4は電源電位にプリチャージされ、それらに隣接する副ビット線SBL_D1,SBL_U1,SBL_D3,SBL_U3,SBL_D5,SBL_U5は接地電位に維持される。
(ii) 制御信号線YRA_D0N,YRB_D0N,YRB_D1CNは活性状態(Lレベル)に切替えられる。これによって、メモリセルMC1,MC2にそれぞれ接続された副ビット線SBL_D0,SBL_D4が出力信号線CBLD,CBLUにそれぞれ電気的に接続される。
(iii) 制御信号線REF_U,REF_Dは非活性状態(Lレベル)に維持されるので、電流源CS1,CS2は出力信号線CBLU,CBLDに電気的に接続されない。
(iv) 読出し対象のメモリセルMC1,MC2に共通に接続されたワード線WLmが活性状態(Hレベル)に切替えられる。
(v) 下側のメモリアレイに設けられたメモリセルMC1のデータを読み出す場合には、センスアンプSAのセレクタ148(図11参照)に供給する選択信号SELUはLレベル(“0”)に設定される。
次の時刻t4において、フラッシュシーケンサ(FSQC)7からセンスアンプSAに供給されているプリチャージ信号PCが非活性状態(Hレベル)に変化するとともに、行デコーダ30,31のドライバから制御信号線CH_U0N,CH_D0Nに供給されているチャージ信号が非活性状態(Hレベル)に変化する。この結果、下側の出力信号線CBLDからメモリセルMC1の方向へセル電流Ic1が流れ、上側の出力信号線CBLUからメモリセルMC2の方向へセル電流Ic2が流れる。メモリセルMC1にはデータ“0”(閾値電圧が高い状態)が書き込まれ、メモリセルMC2にはデータ“1”(閾値電圧が低い状態)が書き込まれているので、セル電流Ic1はセル電流Ic2より小さい。したがって、上側の出力信号線CBLUの電位のほうが、下側の出力信号線CBLDの電位よりも低くなる。
次の時刻t5において、フラッシュシーケンサ(FSQC)7は、センスアンプSAに出力するセンスイネーブル信号を活性状態(Hレベル)に変化させる。以降の動作は、参照電流リード方式の場合と同様であるので説明を繰返さない。
(書込み系回路の詳細)
図16は、図6の書込み系経路の詳細を示す回路図である。図16では、4本の書込み系主ビット線WMBL0〜WMBL3が代表的に示されている。
図16を参照して、主ビット線電圧制御回路39は、書込み系主ビット線WMBL0〜3にそれぞれ対応して設けられたプログラムラッチ回路PRGL0〜PRGL3と、書込み系ディスチャージ回路40とを含む。データ書込みの際に書込み系主ビット線WMBLには、対応するプログラムラッチ回路PRGLに保持されたデータ(“1”または“0”)に従った書込み電流が選択的に流れる。図17で後述するように、各プログラムラッチ回路PRGLは、フラッシュシーケンサ(FSQC)7から供給される制御信号/PPE,WPLS,/RSH,RSW,RSLに従って動作する。
書込み系ディスチャージ回路40は、ディスチャージ信号DCW0、DCW1によって書込み用主ビット線WMBLを選択的に接地ノードVSSに接続する回路である。書込み系ディスチャージ回路40は、書込み系主ビット線WMBL0〜WMBL3にそれぞれ対応して設けられた複数のNMOSトランジスタ83_0〜83_3を含む。各NMOSトランジスタは対応する書込み系主ビット線WMBLと接地ノードVSSとの間に接続される。偶数番目のNMOSトランジスタ83_0,83_2のゲートにはディスチャージ信号DCW0が与えられ、奇数番目のNMOSトランジスタ83_1,83_3のゲートにはディスチャージ信号DCW1が与えられる。
上記の書込み系ディスチャージ回路40によって、データ書込み後のベリファイ動作において選択された書込み系主ビット線WMBLに隣接する書込み系主ビット線WMBLを接地電位にすることができる。これによって、選択された書込み系主ビット線WMBLに隣接する書込み系主ビット線WMBLをグランドシールドとして機能させ、不所望な容量カップリングによる誤動作を防止することができる。
書換え列セレクタ38は、書込みアドレスに基づいて、書込みデータを入力するプログラムラッチPRGLを選択するとともに、ベリファイ回路37と接続する書込み系主ビット線WMBLを選択するための回路である。書換え列セレクタ38は、入力信号線81,82と、列選択のためのNMOSトランジスタスイッチ80B0〜80B3,80L0〜80L3と,選択信号YM0〜YM3をそれぞれ対応のNMOSトランジスタスイッチのゲートに供給するための制御信号線を含む。
NMOSトランジスタスイッチ80B0〜80B3は、書込み系主ビット線WMBL0〜WMBL3にそれぞれ挿入されている。NMOSトランジスタスイッチ80L0,80L1は、プログラムラッチ回路PRGL0,PRGL1にそれぞれ対応し、入力信号線81と対応のプログラムラッチ回路との間に接続されている。NMOSトランジスタスイッチ80L2,80L3は、プログラムラッチ回路PRGL2,PRGL3にそれぞれ対応し、入力信号線82と対応のプログラムラッチ回路との間に接続されている。ツインセルを構成する相補データの同時書込み可能にするために、入力信号線81,82が2本設けられている。入力信号線81はポジティブセルに対応し、入力信号線82はネガティブセルに対応する。
共通の書込み系主ビット線WMBLi(i=0〜4)に対応するNMOSトランジスタスイッチ80Bi,80Liのゲートは、共通の制御信号線に接続されている。各制御信号線に供給される選択信号(YM0〜YM4)は、後述するように、列デコーダ32から与えられる。
列デコーダ(CDEC)32は、その一部の構成として、セレクタ88〜90と、3ステートバッファ91,92とを含む。
3ステートバッファ91は、フラッシュシーケンサ(FSQC)7から入力されたデータ転送イネーブル信号ENDTが活性状態(Hレベル)のとき、周辺バス(PBUS)13のデータバスPBUS−Dを介して受けた書込みデータ信号を増幅して入力信号線81に出力する。
セレクタ88は、制御信号CMPLONがHレベル(“1”)のとき(すなわち、相補リード方式の場合)、周辺バス(PBUS)13のデータバスPBUS−Dを介して受けた書込みデータ信号を反転した信号を出力する。セレクタ88は、制御信号CMPLONがLレベル(“0”)のとき(すなわち、参照電流リード方式の場合)、周辺バス(PBUS)13のデータバスPBUS−Dを介して受けた書込みデータ信号を増幅して出力する。
3ステートバッファ92は、データ転送イネーブル信号ENDTが活性状態(Hレベル)のとき、セレクタ88の出力信号を増幅して入力信号線82に供給する。したがって、制御信号CMPLONがHレベル(“1”)のとき(すなわち、相補リード方式の場合)、入力信号線81,82には相補の書込みデータが入力される。入力信号線81に入力された書込データは、プログラムラッチ回路PRGL0またはPRGL1に保持され、書込み系主ビット線SMBL0またはSMBL1を介してポジティブセルに書込まれる。入力信号線82に入力された書込データは、プログラムラッチ回路PRGL2またはPRGL3に保持され、書込み系主ビット線SMBL2またはSMBL3を介してネガティブセルに書込まれる。
セレクタ89は、選択信号YW0,YW2を受ける。セレクタ89は、制御信号CMPLONがHレベル(“1”)のとき(すなわち、相補リード方式の場合)、選択信号YW0をNMOSトランジスタスイッチ80B2,80L2に供給する。したがって、相補リード方式の場合には、ポジティブセルに対応する書込み系主ビット線WMBL0およびプログラムラッチ回路PRGL0と、ネガティブセルに対応する書込み系主ビット線WMBL2およびプログラムラッチ回路PRGL2とが共に選択状態になる。一方、セレクタ89は、制御信号CMPLONがLレベル(“0”)のとき(すなわち、参照電流リード方式の場合)、選択信号YW2をNMOSトランジスタスイッチ80B2,80L2に供給する。
セレクタ90は、選択信号YW1,YW3を受ける。セレクタ90は、制御信号CMPLONがHレベル(“1”)のとき(すなわち、相補リード方式の場合)、選択信号YW1をNMOSトランジスタスイッチ80B3,80L3に供給する。したがって、相補リード方式の場合には、ポジティブセルに対応する書込み系主ビット線WMBL1およびプログラムラッチ回路PRGL1と、ネガティブセルに対応する書込み系主ビット線WMBL3およびプログラムラッチ回路PRGL3とが共に選択状態になる。一方、セレクタ90は、制御信号CMPLONがLレベル(“0”)のとき(すなわち、参照電流リード方式の場合)、選択信号YW3をNMOSトランジスタスイッチ80B3,80L3に供給する。
上記の選択信号YW0〜YW3は、図1のフラッシュシーケンサ(FSQC)7からの制御信号と、図6のタイミングジェネレータ36からの制御信号と、入出力バッファ(IOBUF)33に入力されたアドレスに基づいて、列デコーダ(CDEC)32によって生成される。
ベリファイ回路37は、ベリファイセンスアンプVSAと、バッファ84と、排他的論理和ゲート85と、セレクタ86と、ANDゲート87とを含む。
ベリファイセンスアンプVSAの入力ノードは、NMOSトランジスタスイッチ80B0〜80B3をそれぞれ介して、書込み系主ビット線WMBL0〜WMBL3に接続される。ベリファイセンスアンプVSAは、書込み対象のメモリセルに書込まれたデータを、そのメモリセルに対応する書込み系主ビット線WMBLを介して読出して反転増幅する。
ベリファイセンスアンプVSAの出力信号VSAOUT0は、セレクタ86に入力される。セレクタ86には、他のベリファイセンスアンプVSAの出力信号VSAOUT1,…も入力される。セレクタ86は、これらのベリファイセンスアンプVSAの出力信号VSAOUT0,VSAOUT1,…のうち選択された信号を周辺バスPBUSのデータバスPBUS−Dに出力する。
ベリファイセンスアンプVSAの出力信号VSAOUT0は、さらに、排他的論理和ゲート85の一方の入力ノードにも入力される。排他的論理和ゲート85の他方の入力ノードは、バッファ84を介して入力信号線81,82に接続されることによって、プログラムラッチ回路PRGLに保持されている書込みデータを受ける。したがって、排他的論理和ゲート85は、書込み対象のメモリセルのデータと、プログラムラッチ回路PRGLに保持されている書込みデータとが一致した場合にHレベル(“1”)の信号(判定結果VRSLT0)を出力する。
ANDゲート87は、複数のベリファイ回路37での判定結果VRSLT0,VRSLT1,…を受ける。ANDゲート87は、これらの判定結果が全て“1”のときに、Hレベル(“1”)の信号を判定結果VRSLTとして出力する。
(プログラムラッチ回路の詳細)
図17は、図16の各プログラムラッチ回路の詳細を示す回路図である。図17を参照して、プログラムラッチ回路PRGLは、PMOSトランジスタ160〜163と、NMOSトランジスタ164〜167と、インバータ168〜172と、トランスミッションゲート173とを含む。
インバータ169,170はインバータラッチ回路を構成し、保持ノード174,175に相補データを保持する。保持ノード174は、PMOSトランジスタ160を介して電源ノードVDDに接続されるとともに、NMOSトランジスタ164を介して接地ノードVSSに接続される。PMOSトランジスタ160のゲートには、保持ノード174の保持データをHレベルに設定するための制御信号/RSHが入力される。NMOSトランジスタのゲートには、保持ノード174の保持データをLレベルに設定するための制御信号RSLが入力される。
保持ノード174は、さらに、トランスミッションゲート173を介してデータ入力経路158に接続される。データ入力経路158は、図16のNMOSトランジスタスイッチ80L0〜L3のいずれかを介して入力信号線81または82に接続される。書込みデータの入力の可否を切替えるための制御信号RSWは、トランスミッションゲート173を構成するPMOSトランジスタのゲートにインバータ168を介して入力されるとともに、トランスミッションゲート173を構成するNMOSトランジスタのゲートに入力される。
PMOSトランジスタ161,162は、電源ノードVDDとノード176の間に互いに並列に接続される。PMOSトランジスタ161のゲートにはインバータ171を介してプログラムイネーブル信号/PREが入力される。PMOSトランジスタ162のゲートは保持ノード175に接続される。
PMOSトランジスタ163およびNMOSトランジスタ165〜167は、この並び順で、ノード176と接地ノードVSSとの間に直列に接続される。PMOSトランジスタ163にゲートには、書込みパルスWPLSがインバータ172を介して入力される。NMOSトランジスタ165のゲートは保持ノード175に接続される。NMOSトランジスタ166のゲートには書込みパルスWPLSが入力される。NMOSトランジスタ167のゲートには参照電圧VREFが入力される。NMOSトランジスタ163と165との接続ノード177は、対応する書込み系主ビット線WMBLに接続される。
したがって、プログラムイネーブル信号/PREが活性状態(Lレベル)であり、書込みパルスWPLSが活性状態(Hレベル)であり、保持ノード174に保持されているデータがLレベル(“0”)である場合に、NMOSトランジスタ165〜167がオン状態となる。これによって、書込み対象のメモリセルに接続されたソース線SLから、対応する副ビット線SBL、対応する書込み系主ビット線WMBL、およびMOSトランジスタ165〜167を経由して、接地ノードVSSに書込み電流が流れる。データ書込み時には、ソース線SLは、高電圧(たとえば6V)を与える電源ノードに接続されている。
(参照電流リード方式の書込み動作)
以下、図16および図17を主として参照して、これまでの説明を総括しながら、参照電流リード方式の場合の書込み制御について説明する。
参照電流リード方式の場合、各メモリセルに書込むデータは独立したデータである。参照電流リード方式用のデータが格納されている領域にデータ書込みを行う場合、外部から入力される書込み対象アドレスと、図10で説明したレジスタ130に格納されている相補リード領域を示すアドレスの値とが異なる。したがって、制御信号CMPLONは非活性状態(“0”)である。この場合、プログラムラッチPRGL0〜3のうち選択信号YW0〜YW3によって選択されたプログラムラッチに、周辺バスPBUSのデータバスPBUS−Dから入力されたデータが直接格納される。
書込み対象のメモリセルへのデータ書込みは、プログラムラッチPRGLに格納されているデータに基づいて実施される。たとえば、図7のメモリセルMC2にデータ“0”(閾値電圧が高い状態に対応)を書込む場合には、プログラムラッチPRGL2の保持ノード174にデータ“0”(Lレベル)が格納されている。この状態で、図7の制御信号線ZL_D0が活性状態(Hレベル)になり、ワード線WLmが1.5Vに設定され、メモリゲート線MGLmが10Vに設定され、ソース線SLmが6Vに設定される。さらに、プログラムイネーブル信号/PREが活性状態(Lレベル)に設定され、書込みパルスWPLSが活性状態(Hレベル)に設定される。この結果、ソース線SLmから、副ビット線SBL_D4、書込み系主ビット線WMBL2、プログラムラッチPRGL2のNMOSトランジスタ165〜167を順に経由して、接地ノードVSSに書込み電流が流れる。
(相補リード方式の書込み動作)
以下、図16および図17を主として参照して、これまでの説明を総括しながら、相補リード方式の場合の書込み制御について説明する。
相補リード方式の場合、ツインセルを構成する一対のメモリセルに相補データ(互いに反転したデータ)を書込む必要がある。相補リード方式用のデータが格納されている領域にデータ書込みを行う場合、外部から入力される書込み対象アドレスと、図10で説明したレジスタ130に格納されている相補リード領域を示すアドレスの値が一致する。したがって、制御信号CMPLONは活性状態(“1”)である。この場合、選択信号YW0またはYW1に従って、ツインセルを構成するポジティブセルに接続可能なプログラムラッチPRGLに、周辺バスPBUSのデータバスPBUS−Dから入力されたデータが直接格納される。ツインセルを構成するネガティブセルに接続可能なプログラムラッチPRGLに、周辺バスPBUSのデータバスPBUS−Dから入力されたデータを反転したデータが格納される。
書込み対象のツインセルへのデータ書込みは、これら2個のプログラムラッチPRGLに格納されているデータに基づいて実施される。たとえば、図8のメモリセルMC1にデータ“0”(閾値電圧が高い状態に対応)を書込み、メモリセルMC2にデータ“1”を書込む場合には、プログラムラッチPRGL0の保持ノード174にデータ“0”(Lレベル)が格納され、プログラムラッチPRGL2の保持ノード174にデータ“1”(Hレベル)が格納されている。この状態で、図7の制御信号線ZL_D0が活性状態(Hレベル)になり、ワード線WLmが1.5Vに設定され、メモリゲート線MGLmが10Vに設定され、ソース線SLmが6Vに設定される。さらに、プログラムイネーブル信号/PREが活性状態(Lレベル)に設定され、書込みパルスWPLSが活性状態(Hレベル)に設定される。この結果、ソース線SLmから、副ビット線SBL_D0、書込み系主ビット線WMBL0、プログラムラッチPRGL0のNMOSトランジスタ165〜167を順に経由して、接地ノードVSSに書込み電流が流れる。メモリセルMC2に対応するプログラムラッチPRGL2では、PMOSトランジスタ162がオン状態であり、NMOSトランジスタ165がオフ状態であるので、書込み系主ビット線WMBL2の電位は電源電位に等しくなるため、書込み電流は流れない。
(消去動作について)
複数のメモリセルを一括消去する際には、図2(B)で説明したように、対応する副ビット線SBLが高インピーダンスに設定され、対応するワード線が0Vに設定され、対応するメモリゲート線が−10Vに設定され、対応するソース線が6Vに設定される。副ビット線SBLを高インピーダンスに設定するには、対応する制御信号線YRA_U0〜3N,YRA_D0〜3N,CH_U0〜1N,CH_D0〜1Nを非活性状態(Hレベル)に設定し、対応する制御信号線ZL_U0〜1,ZL_D0〜1,DC_U0〜1,DC_D0〜1を非活性状態(Lレベル)に設定する。上記の消去動作は、参照電流リード方式であっても、相補リード方式であっても同じである。
(効果)
上記のとおり、第1の実施形態では、参照電流リード方式と相補リード方式とが切替え可能な不揮発性メモリを備えた半導体装置が提供される。これによって、データ領域とメモリサイズとコード領域のメモリサイズとを変更することが可能になる。
<第2の実施形態>
各メモリセルのドレイン領域が副ビット線SBLとコンタクトホールを介して接続され、各メモリセルのソース領域がソース線SLとコンタクトホールを介して接続されているようなメモリアレイ構造を採用した場合、メモリセルのソース領域がソース線と未接続となるように(したがって、データ記憶には用いられない)特異なメモリセルの列を設けることができる。第2の実施形態では、この特異なメモリセル列に接続された副ビット線SBLを、参照電流リード方式の場合に信号出力線に付加される配線容量専用に用いる。後述するように、この構成によれば、階層センスアンプ帯に設けられた複数のMOSトランジスタスイッチは、上側のメモリアレイ22のアクセス用と、下側のメモリアレイ24のアクセス用とに分離できるので、設計の自由度を向上させることができる。
第2の実施形態による半導体装置は、上記のように、特異なメモリセル列と、それに対応する書込み系主ビット線および副ビット線とがメモリマットに含まれる点で第1の実施形態の場合と異なる。さらに、第2の実施形態による半導体装置は、上記の特異列に対応する副ビット線と出力信号線CBLU,CBLDとの接続、ならびに特異列に対応する副ビット線と電源ノードおよび接地ノードとの接続等を切替えるために、MOSトランジスタスイッチおよび制御信号線が階層センスアンプ帯にさらに設けられている点で第1の実施形態の場合と異なる。第2の実施形態による半導体装置のその他の点は第1の実施形態の場合と同様である。たとえば、図1の半導体装置の構成および図6のメモリセルモジュールの基本的構成は、第2の実施形態の場合も同様であるので説明を繰り返さない。
(読出し系回路の構成)
図18は、第2の実施形態の場合の階層センスアンプ帯の詳細な構成を示す図である。
図18では、図7の第1の実施形態の場合と同様に、4本の書込み系主ビット線WMBL0〜WMBL3、上側のメモリアレイ22に対応する8本の副ビット線SBL_U0〜SBL_U7、下側のメモリアレイ24に対応する8本の副ビット線SBL_D0〜SBL_D7、および1本の読出し系主ビット線RMBL0が代表的に示されている。
図18の場合には、さらに、1本の主ビット線WMBLR、上側のメモリアレイ22に対応する1本の副ビット線SBL_UR、および下側のメモリアレイ24に対応する1本の副ビット線SBL_DRが付加されている。上述したように、付加された副ビット線SBL_UR,SBL_DRに接続されている各メモリセルMCRのソース領域はソース線SLと接続されていない。なお、図18では図示していないが、実際のメモリセルモジュール6では上記の複数のビット線が行方向に繰り返して設けられている。
以下、図18の階層センスアンプ帯と図7の階層センスアンプ帯との相違点について説明する。まず、副ビット線セレクタ26Dは、主ビット線WMBLRと副ビット線SBL_DRとの間に接続されたNMOSトランジスタスイッチ60DRと、NMOSトランジスタ60DRのゲートに接続された制御信号線ZL_DRをさらに含む点で、図7の副ビット線セレクタ26Dと異なる。上側の副ビット線セレクタ26Uについても同様の点で、図7の場合と異なっている。
充放電回路27Dは、副ビット線SBL_DRと電源ノードVDDとの間に接続されたPMOSトランジスタスイッチ58DRと、副ビット線SBL_DRと接地ノードVSSとの間に接続されたNMOSトランジスタスイッチ59DRとをさらに含む点で、図7の充放電回路27Dと異なる。充放電回路27Dは、MOSトランジスタスイッチ58DR,59DRのゲートにそれぞれ接続された制御信号線CH_DRN,DC_DRをさらに含む点で、図7の充放電回路27Dと異なる。
読出し列セレクタ25は、PMOSトランジスタスイッチ68D,65Dと、PMOSトランジスタスイッチ68D,65Dのゲートにそれぞれ接続された制御信号線YRB_DRN,YRA_DRNとをさらに含む点で、図7の読出し列セレクタ25と異なる。PMOSトランジスタスイッチ68D,65Dは、この並び順で、上側の出力信号線CBLUと、下側のメモリアレイ24に設けられた副ビット線SBL_DRとの間に直列に接続される。
同様に、読出し列セレクタ25は、PMOSトランジスタスイッチ68U,65Uと、PMOSトランジスタスイッチ68U,65Uのゲートに接続された制御信号線YRB_URN,YRA_URNとをさらに含む点で、図7の読出し列セレクタ25と異なる。PMOSトランジスタスイッチ68U,65Uは、この並び順で、下側の出力信号線CBLDと、上側のメモリアレイ22に設けられた副ビット線SBL_URとの間に接続される。
読出し列セレクタ25は、電流源CS1,CS2およびNMOSトランジスタスイッチ56U,56D,57U,57Dに代えて、電流源CSおよびNMOSトランジスタスイッチ66U,66Dを含む点で、図7の読出し列セレクタと異なる。NMOSトランジスタスイッチ66Uは、PMOSトランジスタスイッチ65U,68Uの接続ノード67Uと、電流源CSとの間に接続される。NMOSトランジスタスイッチ66Dは、PMOSトランジスタスイッチ65D,68Dの接続ノード67Dと、電流源CSとの間に接続される。NMOSトランジスタスイッチ66D,67Dのゲートは、制御信号線REF_U,REF_Dにそれぞれ接続される。
(参照電流リード方式におけるメモリセル電流および参照電流の経路について)
次に、図18を参照して、参照電流リード方式において、メモリセルMC1のデータを読み出す場合のセル電流Icの経路と参照電流Irefの経路とについて説明する。
メモリセルMC1のデータを読み出す場合には、メモリセルMC1のコントロールゲートに接続されているワード線WLmがHレベルに活性化される。さらに、制御信号線YRA_D0N,YRB_D0Nを活性化させることによって、セル電流Icを発生させる。セル電流Icは、センスアンプSAから、出力信号線CBLD、PMOSトランジスタスイッチ51D,53D0、副ビット線SBL_D0、メモリセルMC1を順に経由して、ソース線SLに至る方向に流れる。
参照電流Irefを発生させるためには、制御信号線YRB_DRN,REF_Dを活性化させる。参照電流Irefは、センスアンプSAから、出力信号線CBLU、PMOSトランジスタスイッチ68D,66D、電流源CSを順に経由して、接地ノードVSSに至る方向に流れる。電流源CSによって参照電流Irefの大きさが調整される。
参照電流Irefを発生させる際には、さらに、制御信号線YRA_DRNを活性化することによって、PMOSトランジスタスイッチ65Dをオンする。これによって、副ビット線SBL_DRの配線容量が、電流源側CS側の出力信号線CBLUに付加される。副ビット線SBL_DRの配線容量は、メモリセルMC1に接続された副ビット線SBL_D0の配線容量とほぼ同じ値である。したがって、センスアンプSAの第1の入力ノードの負荷と第2の入力ノードの負荷とをほぼ等しくすることができるので、セル電流Icと参照電流Irefの正確な比較(すなわち、メモリセルMC1のデータの正確な検出)が可能になる。
センスアンプSAは、セル電流Icと参照電流Irefとの差を増幅する。センスアンプSAの出力信号は、読出し系主ビット線RMBL0を介して出力バッファOBUFに伝達される。
(相補リード方式におけるメモリセル電流の経路について)
図19は、図18の回路構成において相補リード方式の場合のメモリセル電流の経路を示す図である。図19では、ツインセルを構成するメモリセルMC1,MC2のデータを読み出す場合において、メモリセルMC1を流れるセル電流Ic1の経路と、メモリセルMC2を流れるセル電流Ic2の経路とが示されている。図19に示すように、セル電流Ic1,Ic2の経路は図8の場合と同じであるので詳しい説明を繰り返さない。
(階層センスアンプ帯の制御信号線の駆動回路について)
図20は、図18および図19の階層センスアンプ帯の各制御信号線用を駆動するための駆動回路の構成を示す図である。図20(A)は図6の上側のメモリアレイ22の読出しおよび書込みに関係する制御信号線用の駆動回路の構成を示し、図20(B)は図6の下側のメモリアレイ24の読出しおよび書込みに関係する制御信号線用の駆動回路を示す。
第1の実施形態の図9の場合と同様に、制御信号CMPLONは、図1のフラッシュシーケンサ(FSQC)7から供給される。その他の入力信号は、フラッシュシーケンサ(FSQC)7からの制御信号と、図6のタイミングジェネレータ36からの制御信号と、入出力バッファ(IOBUF)33に入力されたアドレスに基づいて、列デコーダ(CDEC)32によって生成される。図9と比較して図20の場合には、制御信号ZL_UR_in,CH_UR_in,DC_UR_in,YRA_UR_in,YRA_DR_in,YRB_UR_in,YRB_DR_in,CH_DR_in,DC_DR_in,ZL_DR_inがさらに入力されている。
制御信号線ZL_UR,ZL_DRに供給される信号は、それぞれ論理ゲート230,237によって生成される。制御信号CMPLON=“1”(相補リード方式)の場合には、制御信号線ZL_UR,ZL_DRに供給される信号はLレベル(“0”)となる。CMPLON=“0”(参照電流リード方式)の場合には、制御信号ZL_UR_in,ZL_DR_inをそれぞれ増幅した信号が、制御信号線ZL_UR,ZL_DRに供給される。
制御信号線CH_URN,CH_DRNに供給される信号は、それぞれ論理ゲート231,235によって生成される。制御信号CMPLON=“1”(相補リード方式)の場合には、制御信号線CH_URN,CH_DRNに供給される信号はHレベル(“1”)となる。CMPLON=“0”(参照電流リード方式)の場合には、制御信号CH_UR_in,CH_DR_inをそれぞれ反転増幅した信号が、制御信号線CH_URN,CH_DRNに供給される。
制御信号線DC_UR,DC_DRに供給される信号は、それぞれ論理ゲート232,236で生成される。制御信号CMPLON=“1”(相補リード方式)の場合には、制御信号線DC_UR,DC_DRに供給される信号はLレベル(“0”)となる。CMPLON=“0”(参照電流リード方式)の場合には、制御信号DC_UR_in,DC_DR_inをそれぞれ増幅した信号が、制御信号線DC_UR,DC_DRに供給される。
制御信号線YRA_URN,YRA_DRNに供給される信号は、それぞれ論理ゲート233,234で生成される。制御信号CMPLON=“1”(相補リード方式)の場合には、制御信号線YRA_URN,YRA_DRNに供給される信号はHレベル(“1”)となる。CMPLON=“0”(参照電流リード方式)の場合には、制御信号YRA_UR_in,YRA_DR_inをそれぞれ反転増幅した信号が、制御信号線YRA_URN,YRA_DRNに供給される。
制御信号線YRB_URN,YRB_DRNに供給される信号は、それぞれ論理ゲート238,239で生成される。制御信号CMPLON=“1”(相補リード方式)の場合には、制御信号線YRB_URN,YRB_DRNに供給される信号はHレベル(“1”)となる。CMPLON=“0”(参照電流リード方式)の場合には、制御信号YRB_UR_in,YRB_DR_inをそれぞれ反転増幅した信号が、制御信号線YRB_URN,YRB_DRNに供給される。
(参照電流リード方式での読出し動作)
図21は、第2の実施形態において、参照電流リード方式での読出し動作の一例を示すタイミングチャートである。図21のタイミングチャートは、第1の実施形態の図14のタイミング図に対応するものであり、参照電流リード方式の場合において、メモリアレイ24に設けられたメモリセルMC1のデータ読出し動作を示している。メモリセルMC1にはデータ“0”(閾値電圧が高い状態)が書き込まれているとする。以下、図18および図21を主として参照して、第1の実施形態の図14のタイミングチャートと異なる点を説明し、図14と共通する点については説明を繰り返さない。
図21の時刻t1において読出しアドレスが切替わり、時刻t2においてフラッシュシーケンサ(FSQC)7からアドレス取り込み信号が出力される点は図14の場合と同様である。
次の時刻t3において、行デコーダ30,31に設けられたドライバは、アドレス信号に基づいてメモリセルMC1のデータ読出しに必要な制御信号線を活性化する。図14の場合と異なる点は次のとおりである。
(i) 制御信号線DC_UR,DC_DRに供給するディスチャージ信号が非活性状態(Lレベル)に切替えられ、制御信号線CH_URN,CH_DRNに供給するチャージ信号が活性状態(Lレベル)に切替えられる。これによって、第2の実施形態において付加された副ビット線SBL_UR,SBL_DRがさらにプリチャージされる。
(ii) 制御信号線YRA_D0N,YRB_D0N,YRA_DRN,YRB_DRNが活性状態(Lレベル)に切替えられる。これによって、メモリセルMC1に接続された副ビット線SBL_D0が下側の出力信号線CBLDに電気的に接続されるとともに、第2の実施形態において付加された副ビット線SBL_DRが上側の出力信号線CBLUに電気的に接続される。図14の場合と異なり、副ビット線SBL_U0を上側の出力信号線CBLUに電気的に接続する必要がないので、制御信号線YRA_U0N,YRB_U0Nは非活性状態(Hレベル)のまま維持される。制御信号線YRB_URNも非活性状態(Hレベル)のまま維持される。
(iii) 図14の場合とは逆に、信号線REF_Dを活性状態(Hレベル)にすることによって、電流源CSが上側の出力信号線CBLUに電気的に接続される。その他の制御信号線の設定は、図14の場合と同じである。
次の時刻t4において、フラッシュシーケンサ(FSQC)7からセンスアンプSAに供給されているプリチャージ信号PCが非活性状態(Hレベル)に変化するとともに、行デコーダ30,31のドライバから制御信号線CH_U0N,CH_D0N,CH_URN,CH_DRNに供給されているチャージ信号が非活性状態(Hレベル)に変化する。この結果、下側の出力信号線CBLDからメモリセルMC1の方向へセル電流Icが流れ、上側の出力信号線CBLUから電流源CSの方向へ参照電流Irefが流れる。その後の、読出し動作は図14の場合と同じであるので説明を繰り返さない。
(相補読出し方式の読出し動作)
図22は、第2の実施形態において、相補リード方式での読出し動作の一例を示すタイミングチャートである。図22のタイミングチャートは、第1の実施形態の図15のタイミング図に対応するものであり、相補リード方式の場合において、メモリアレイ24に設けられたメモリセルMC1,MC2によって構成されるツインセルのデータ読出し動作を示している。メモリセルMC1にはデータ“0”(閾値電圧が高い状態)が書き込まれ、メモリセルMC2にはデータ“1”(閾値電圧が低い状態)が書き込まれているとする。以下、図19および図22を主として参照して、第1の実施形態の図15のタイミングチャートと異なる点を説明し、図15と共通する点については説明を繰り返さない。
図22の時刻t1において読出しアドレスが切替わり、時刻t2においてフラッシュシーケンサ(FSQC)7からアドレス取り込み信号が出力される点は図15の場合と同様である。
次の時刻t3において、行デコーダ30,31に設けられたドライバは、アドレス信号に基づいてメモリセルMC1,MC2のデータ読出しに必要な制御信号線を活性化する。図15の場合と比較した特徴点は次のとおりである。
(i) 制御信号線DC_UR,DC_DRに供給するディスチャージ信号が非活性状態(Lレベル)に切替えられ、制御信号線CH_URN,CH_DRNに供給するチャージ信号が活性状態(Lレベル)に切替えられる。これによって、第2の実施形態において付加された副ビット線SBL_UR,SBL_DRがさらにプリチャージされる。
(ii) 図15の場合と同様に、制御信号線YRA_D0N,YRB_D0N,YRB_D1CNは活性状態(Lレベル)に切替えられる。これによって、メモリセルMC1,MC2にそれぞれ接続された副ビット線SBL_D0,SBL_D4が出力信号線CBLD,CBLUにそれぞれ電気的に接続される。第2の実施形態で付加された制御信号線YRA_URN,YRA_DRN,YRB_URN,YRB_DRNは非活性状態(Hレベル)のまま維持される。
(iii) 図15の場合と同様に、制御信号線REF_U,REF_Dは非活性状態(Lレベル)に維持されるので、電流源CSは出力信号線CBLU,CBLDに電気的に接続されない。その他の制御信号線の設定は、図15の場合と同じである。
次の時刻t4において、フラッシュシーケンサ(FSQC)7からセンスアンプSAに供給されているプリチャージ信号PCが非活性状態(Hレベル)に変化するとともに、行デコーダ30,31のドライバから制御信号線CH_U0N,CH_D0N,CH_URN,CH_DRNに供給されているチャージ信号が非活性状態(Hレベル)に変化する。この結果、下側の出力信号線CBLDからメモリセルMC1の方向へセル電流Ic1が流れ、上側の出力信号線CBLUからメモリセルMC2の方向へセル電流Ic2が流れる。その後の、読出し動作は図15の場合と同じであるので説明を繰り返さない。
(書込み動作、消去動作)
第2の実施形態の場合の不揮発性メモリの書込み動作および消去動作は、第1の実施形態の場合と同じであるので、説明を繰り返さない。
(効果)
上記のとおり、第2の実施形態では、メモリマット20を構成する各メモリアレイのうち特定列の各メモリセルのソース領域がソース線に接続されないように構成される。これによって、参照電流リード方式の場合に、参照電流側の出力信号線CBLUまたはCBLDに上記の特定列に対応する副ビット線SBL_URまたはSBL_DRが接続される。この構成によれば、第1の実施形態の場合と異なり、階層センスアンプ帯に設けられた複数のMOSトランジスタスイッチを、上側のメモリアレイ22のアクセス用と、下側のメモリアレイ24のアクセス用とに分離できるので、設計の自由度を向上させることができる。
<第3の実施形態>
第1および第2の実施形態では、図6に示すように、階層センスアンプ帯23とその上側および下側に設けられたメモリアレイ22,24とによってメモリブロック21が構成され、複数のメモリブロック21が列方向に配列されることによってメモリマット20が構成されていた。各階層センスアンプ帯23は、その上側および下側のメモリアレイ22,24に設けられた副ビット線SBLと接続されていた。
第3の実施形態の半導体装置では、第1および第2の実施形態の階層センスアンプ帯23に代えて、読出し用センスアンプ帯28がメモリマット20に対して1箇所のみ設けられる。読出し用センスアンプ帯28は、メモリマット20で共通に設けられた書込み系主ビット線WMBLと接続される。第3の実施形態の場合には、書込み系主ビット線WMBLはデータ読出しおよびデータ書込みの両方において用いられる。
上記の構成によってセンスアンプSAを削減することができるので、フラッシュメモリモジュール6の回路面積を減らすことができる。以下、図23〜図28を参照して詳しく説明する。
(フラッシュメモリモジュールの構成)
図23は、第3の実施形態の半導体装置におけるフラッシュメモリモジュールの構成を表すブロック図である。図23のブロック図は、第1の実施形態の図6のブロック図に対応するものである。
図23を参照して、フラッシュメモリモジュール6は、メモリマット20と、読出し用センスアンプ帯28と、出力バッファ34と、第1行デコーダ30と、第2行デコーダ31と、列デコーダ32と、入出力バッファ33と、主ビット線電圧制御回路39と、書換え列セレクタ38と、ベリファイ回路37と、電源回路35と、タイミングジェネレータ36とを含む。図6のフラッシュメモリモジュール6の構成と異なる点は、読出し用センスアンプ帯28が追加された点と、それに伴ってメモリマット20の構成が変更された点である。
メモリマット20は、列選択部23Aと、列選択部23Aの両側(列方向)に設けられたメモリアレイ22,24とを1つの構成単位(すなわち、メモリブロック21)として含む。メモリマット20には、このようなメモリブロック21が列方向に複数配置されている(図23では、1つのメモリブロック21のみが代表的に示されている)。メモリアレイ22,24の構成は図6で説明したとおりであるので、説明を繰り返さない。
列選択部23Aは、副ビット線セレクタ26U,26Dを含む。図6で説明したように、上側の副ビット線セレクタ26Uは、複数のNMOSトランジスタスイッチ60Uを含み、これらのNMOSトランジスタスイッチ60Uのオンおよびオフを切り替えることによって、上側のメモリアレイ22に設けられた副ビット線SBLを対応の書込み系主ビット線WMBLに選択的に接続する接続切替え部として機能する。同様に、下側の副ビット線セレクタ26Dは、複数のNMOSトランジスタスイッチ60Dを含み、これらのNMOSトランジスタスイッチ60Dのオンおよびオフを切り替えることによって、下側のメモリアレイ24に設けられた副ビット線SBLを対応の書込み系主ビット線WMBLに選択的に接続する接続切替え部として機能する。列選択部23Aの構成は、概ね図6の階層センスアンプ帯23から、センスアンプSAと読出し列セレクタ25を取り除いたものと考えることができる。
読出し用センスアンプ帯28は、センスアンプSAと、読出し列セレクタ25Aとを含む。センスアンプSAは、第1および第2の入力ノードを備え、第1の入力ノードに接続された第1の出力信号線CBLLに流れる電流と、第2の入力ノードに接続された第2の出力信号線CBLRに流れる電流との差を増幅することによって、両電流値の比較結果を出力する。センスアンプSAの出力信号は、列方向に延びる読出し系主ビット線RMBLを介して出力バッファ(OBUF)34に伝達される。センスアンプSAの詳細な構成は、第1の実施形態で説明したとおりであるので、説明を繰り返さない。
読出し列セレクタ25Aは、複数のPMOSトランジスタスイッチ70,71,76,78を含み、これらのPMOSトランジスタスイッチを切替えることによって、各書込み系主ビット線WMBLと上記の出力信号線CBLL,CBLRとの接続切替えを行う接続切替え部として機能する。図23の場合には、相補リード方式の場合にポジティブセルとして用いられるメモリセルMC1と接続される主ビット線WMBLは、PMOSトランジスタスイッチ70,76を介して出力信号線CBLLに接続される。相補リード方式の場合にネガティブセルとして用いられるメモリセルMC2と接続される主ビット線WMBLは、PMOSトランジスタスイッチ71,78を介して出力信号線CBLRに接続される。
読出し列セレクタ25Aは、さらに、電流源CSと、NMOSトランジスタスイッチ74,75とを含む。参照電流リード方式の場合には、電流源CSはNMOSトランジスタスイッチ74または75を介して出力信号線CBLLまたはCBLRにそれぞれ接続される。
図23のその他の点は図6の場合と同様であるので、同一または相当する部分には同一の参照符号を付して説明を繰返さない。さらに、半導体装置1の全体構成は図1で説明したものと同じであり、制御信号CMPLONの生成回路は図10で説明したものと同じであり、出力バッファ34の構成は図12で説明したものと同じである。したがって、いずれについても説明を繰返さない。
さらに、センスアンプSAの構成は図11で説明したものと同様である。ただし、第3の実施形態の場合の出力信号線CBLL,CBLRは、図11の出力信号線CBLD,CBLUにそれぞれ対応する。
(読出し系回路の詳細)
図24は、図23の列選択部と読出し用センスアンプ帯との詳細な構成を示す図である。図24では、4本の書込み系主ビット線WMBL0〜WMBL3、上側のメモリアレイ22に対応する8本の副ビット線SBL_U0〜SBL_U7、下側のメモリアレイ24に対応する8本の副ビット線SBL_D0〜SBL_D7、および1本の読出し系主ビット線RMBL0が代表的に示されている。図7の場合と同様に、1本の書込み系主ビット線WMBLに対して、メモリアレイごとに2本の副ビット線SBLが割り当てられる。なお、図24では図示していないが、実際のメモリセルモジュール6では、これらのビット線が行方向に繰り返して設けられている。
図24では、さらに、列選択部23Aの両側に設けられたメモリアレイ22,24も示されている。メモリアレイ22,24の構成は図7で説明したとおりであるので、説明を繰返さない。
列選択部23Aは、図23で説明した副ビット線セレクタ26U,26Dの他に、充放電回路27U,27Dを含む。充放電回路27U,27Dの構成は、図7で説明したとおりであるので、説明を繰返さない。
副ビット線セレクタ26Dは、副ビット線SBL_D0〜SBL_D7にそれぞれ対応するNMOSトランジスタスイッチ60D0〜60D7と、制御信号線ZL_D0〜ZL_D3とを含む。図24の副ビット線セレクタ26Dは、制御信号線ZL_D3,ZL_D4が追加されている点で、図7の副ビット線セレクタ26Dと異なる。
副ビット線セレクタ26Dにおいて、各NMOSトランジスタスイッチ60D0〜60D7は、対応する副ビット線SBLと、対応する副ビット線SBLが割当てられた書込み系主ビット線WMBLとの間に接続される。制御信号線ZL_D0はNMOSトランジスタスイッチ60D0,60D2のゲートに接続され、制御信号線ZL_D1はNMOSトランジスタスイッチ60D1,60D3のゲートに接続される。同様に、制御信号線ZL_D2はNMOSトランジスタスイッチ60D4,60D6のゲートに接続され、制御信号線ZL_D3はNMOSトランジスタスイッチ60D5,60D7のゲートに接続される。
副ビット線セレクタ26Uの構成は、上記の副ビット線セレクタ26Dの構成の説明において、添え字のDをUに置き換えたものに相当するので説明を繰返さない。たとえば、下側のメモリアレイ24に設けられた副ビット線SBL_D0〜SBL_D7は、上側のメモリアレイ22に設けられた副ビット線SBL_U0〜SBL_U7にそれぞれ置き換えられる。
図23で説明したように、読出し用センスアンプ帯28は、センスアンプSAと、読出し列セレクタ25Aとを含む。読出し列セレクタ25Aは、PMOSトランジスタスイッチ70,71,76〜79と、NMOSトランジスタスイッチ74,75と、電流源CSと、制御信号線YRA_0N,YRA_1N,YRB_N,REF_L,REF_Rとを含む。電流源CSは、たとえば、定電圧がゲートに印加されたNMOSトランジスタによって構成される。
PMOSトランジスタスイッチ76〜79は、書込み系主ビット線WMBL0〜WMBL4にそれぞれ対応する。PMOSトランジスタスイッチ76,77の各々は、対応する書込み系主ビット線と共通ノード72との間に接続される。PMOSトランジスタスイッチ78,79の各々は、対応する書込み系主ビット線と共通ノード73との間に接続される。PMOSトランジスタスイッチ70は、上記の共通ノード72と出力信号線CBLLとの間に接続される。PMOSトランジスタスイッチ71は、上記の共通ノード73と出力信号線CBLRとの間に接続される。NMOSトランジスタスイッチ74は、上記の共通ノード72と電流源CSとの間に接続される。NMOSトランジスタスイッチ75は、上記の共通ノード73と定電流源CSとの間に接続される。
制御信号線YRA_0NはPMOSトランジスタスイッチ76,78のゲートに接続される。制御信号線YRA_1Nは、PMOSトランジスタスイッチ77,79のゲートに接続される。制御信号線YRB_Nは、PMOSトランジスタスイッチ70,71のゲートに接続される。制御信号線REF_L,REF_Rは、NMOSトランジスタスイッチ74,75のゲートにそれぞれ接続される。
(参照電流リード方式におけるメモリセル電流および参照電流の経路について)
次に、図24を参照して、メモリセルMC1のデータを読み出す場合のセル電流Icの経路と参照電流Irefの経路とについて説明する。
メモリセルMC1のデータを読み出す場合には、メモリセルMC1のコントロールゲートに接続されているワード線WLmがHレベルに活性化される。さらに、制御信号線YRA_0N,YRB_N,ZL_D0を活性化させることによって、セル電流Icを発生させる。セル電流Icは、センスアンプSAから、出力信号線CBLL、PMOSトランジスタスイッチ70,76、書込み系主ビット線WMBL0、NMOSトランジスタスイッチ60D0、メモリセルMC1を順に経由して、ソース線SLに至る方向に流れる。データ読出時には、ソース線SLは接地ノードVSSに接続される。
参照電流Irefを発生させるためには、さらに、制御信号線REF_Rを活性化させる。参照電流Irefは、センスアンプSAから、出力信号線CBLR、PMOSトランジスタスイッチ71、NMOSトランジスタスイッチ75、電流源CSを順に経由して、接地ノードVSSに至る方向に流れる。電流源CSによって参照電流Irefの大きさが調整される。
参照電流Irefを発生させる際には、さらに、制御信号線ZL_U2を活性化することによって、PMOSトランジスタスイッチ60U4をオンする。これによって、副ビット線SBL_U4の配線容量が、電流源側CS側の出力信号線CBLRに付加される。副ビット線SBL_U4の配線容量は、メモリセルMC1に接続された副ビット線SBL_D0の配線容量とほぼ同じ値である。したがって、センスアンプSAの第1の入力ノードの負荷と第2の入力ノードの負荷とをほぼ等しくすることができるので、セル電流Icと参照電流Irefの正確な比較(すなわち、メモリセルMC1のデータの正確な検出)が可能になる。
センスアンプSAは、セル電流Icと参照電流Irefとの差を増幅する。センスアンプSAの出力信号は、読出し系主ビット線RMBL0を介して出力バッファOBUFに伝達される。
(相補リード方式におけるメモリセル電流の経路について)
図25は、図24の回路構成において相補リード方式の場合のメモリセル電流の経路を示す図である。図25では、ツインセルを構成するメモリセルMC1,MC2のデータを読み出す場合において、メモリセルMC1を流れるセル電流Ic1の経路と、メモリセルMC2を流れるセル電流Ic2の経路とが示されている。
メモリセルMC1,MC2のデータを読み出す場合には、メモリセルMC1,MC2に共通に接続されているワード線WLmが活性化される。この状態で、制御信号線YRA_0N,YRB_N,ZL_D0,ZL_D2を活性化させることによって、セル電流Ic1およびIc2を発生させる。セル電流Ic1は、センスアンプSAから、出力信号線CBLL、PMOSトランジスタスイッチ70,76、書込み系主ビット線WMBL0、NMOSトランジスタスイッチ60D0、メモリセルMC1を順に経由して、ソース線SLに至る方向に流れる。セル電流Ic2は、センスアンプSAから、出力信号線CBLR、PMOSトランジスタスイッチ71,78、書込み系主ビット線WMBL2、NMOSトランジスタスイッチ60D4、メモリセルMC2を順に経由して、ソース線SLに至る方向に流れる。データ読出時には、ソース線SLが接地ノードVSSに接続される。
センスアンプSAは、セル電流Ic1とセル電流Ic2との差を増幅する。センスアンプSAの出力信号は、読出し系主ビット線RMBL0を介して出力バッファOBUFに伝達される。なお、相補リード方式の場合には、制御信号線REF_L,REF_Rは常に非活性状態(Lレベル)になる。
(読出し列セレクタおよび列選択部で用いられる制御信号の駆動について)
図26は、図24の読出し用センスアンプ帯および列選択部の各制御信号線を駆動回路の構成を示す図である。図26(A)は図24の読出し用センスアンプ帯28に設けられた制御信号線用の駆動回路の構成を示し、図26(B)は図24の列選択部23Aに設けられた制御信号線用の駆動回路の構成を示す。
図26(A)および(B)の入力信号のうち、制御信号CMPLONは、読出しおよび書込み対象のメモリセルが相補リード方式か参照電流リード方式かを区別するための信号であり、図1のフラッシュシーケンサ(FSQC)7から供給される。その他の入力信号は、フラッシュシーケンサ(FSQC)7からの制御信号と、図6のタイミングジェネレータ36からの制御信号と、入出力バッファ(IOBUF)33に入力されたアドレスに基づいて、列デコーダ(CDEC)32によって生成される。
図26(A)を参照して、制御信号線YRB_N,YRA_U0N,YRA_U1Nに供給される信号は、それぞれ、制御信号YRB_in,YRA_U0_in,YRA_U1_inがインバータ260,263,264によって反転増幅することによって生成される。
制御信号線REF_U,REF_Dに供給される信号は、それぞれ論理ゲート261,262によって生成される。論理ゲート261は、CMPLON=“0”(参照電流リード方式)の場合に、制御信号REF_L_inを増幅した信号を制御信号線REF_Lに出力する。論理ゲート261は、CMPLON=“1”(相補リード方式)の場合に、制御信号REF_L_inによらずにLレベル(“0”)の信号を出力することによって、制御信号線REF_Lを非活性化する。同様に、論理ゲート262は、CMPLON=“0”(参照電流リード方式)の場合に、制御信号REF_R_inを増幅した信号を制御信号線REF_Rに出力する。論理ゲート262は、CMPLON=“1”(相補リード方式)の場合に、制御信号REF_R_inによらずにLレベル(“0”)の信号を出力することによって、制御信号線REF_Rを非活性化する。
図26(B)を参照して、制御信号線ZL_U0,ZL_U1,ZL_D0,ZL_D1に供給される信号は、それぞれ、制御信号ZL_U0_in,ZL_U1_in,ZL_D0_in,ZL_D1_inがバッファ265,266,277,278によって増幅されることによって生成される。制御信号線DC_U0,DC_U1,DC_D0,DC_D1に供給される信号は、それぞれ、制御信号DC_U0_in,DC_U1_in,DC_D0_in,DC_D1_inがバッファ271,272,275,276によって増幅されることによって生成される。
制御信号線CH_U0N,CH_U1N,CH_D0N,CH_D1Nに供給される信号は、それぞれ、制御信号CH_U0_in,CH_U1_in,CH_D0_in,CH_D1_inがインバータ269,270,273,274によって反転増幅されることによって生成される。
制御信号線ZL_U2,ZL_U3,ZL_D2,ZL_D3には、それぞれ、セレクタ267,268,279,280によって選択された信号が供給される。具体的に、セレクタ267は、CMPLON=“0”(参照電流リード方式)の場合に制御信号ZL_U2_inを制御信号線ZL_U2に出力し、CMPLON=“1”(相補リード方式)の場合に制御信号ZL_U0_inを制御信号線ZL_U2に出力する。これによって、相補リード方式の場合には、ボジティブセルが接続される副ビット線SBL_U0またはSBL_U2と、対応するネガティブセルが接続される副ビット線SBL_U4またはSBL_U6とが必ず共にアクセル可能になる。
同様に、セレクタ268は、CMPLON=“0”(参照電流リード方式)の場合に制御信号ZL_U3_inを制御信号線ZL_U3に出力し、CMPLON=“1”(相補リード方式)の場合に制御信号ZL_U1_inを制御信号線ZL_U3に出力する。セレクタ279は、CMPLON=“0”(参照電流リード方式)の場合に制御信号ZL_D2_inを制御信号線ZL_D2に出力し、CMPLON=“1”(相補リード方式)の場合に制御信号ZL_D0_inを制御信号線ZL_D2に出力する。セレクタ280は、CMPLON=“0”(参照電流リード方式)の場合に制御信号ZL_D3_inを制御信号線ZL_D3に出力し、CMPLON=“1”(相補リード方式)の場合に制御信号ZL_D1_inを制御信号線ZL_D3に出力する。
(参照電流リード方式での読出し動作)
図27は、第3の実施形態において、参照電流リード方式での読出し動作の一例を示すタイミングチャートである。以下、主として図23、図24、図27を参照して、参照電流リード方式の場合において、メモリアレイ24に設けられたメモリセルMC1のデータ読出しの手順について説明する。以下の説明では、メモリセルMC1にはデータ“0”(閾値電圧が高い状態)が書き込まれているとする。
まず、図27の時刻t1にアドレス情報が切り替わる。時刻t2に、図1のフラッシュシーケンサ(FSQC)7はアドレス取り込み信号を出力し、この信号に応答して、入出力バッファ(IOBUF)はアドレス情報を取り込む。取り込まれたアドレス情報は、列デコーダ32および行デコーダ30,31においてデコードされる。
時刻t3において、行デコーダ30,31および列デコーダ32に設けられたドライバは、アドレス信号に基づいてメモリセルMC1のデータ読出しに必要な制御信号線を活性化する。具体的には次のとおりである。
(i) 制御信号線DC_U0,DC_D0に供給するディスチャージ信号は非活性状態(Lレベル)に切替えられ、制御信号線DC_U1,DC_D1は活性状態(Hレベル)のまま維持される。一方、制御信号線CH_U0N,CH_D0Nに供給するチャージ信号は活性状態(Lレベル)に切替えられ、制御信号線CH_U1N,CH_D1Nは非活性状態(Hレベル)のまま維持される。これによって、少なくとも読出し対象のメモリセルMC1が接続された副ビット線SBL_D0および上側のメモリアレイ22の副ビット線SBL_U4は電源電位にプリチャージされ、それに隣接する副ビット線SBL_D1,SBL_U3,SBL_U5は接地電位に維持される。
(ii) 制御信号線YRA_0N,YRB_Nが活性状態(Lレベル)に切替えられるとともに、制御信号線ZL_U2,ZL_D0が活性状態(Hレベル)に切替えられる。これによって、メモリセルMC1が接続されている副ビット線SBL_D0が書込み系主ビット線WMBL0を介して出力信号線CBLLに電気的に接続されるとともに、副ビット線SBL_U4が書込み系主ビット線WMBL2を介して出力信号線CBLRに電気的に接続される。
(iii) 制御信号線REF_Rを活性状態(Hレベル)にすることによって、電流源CSが出力信号線CBLRに電気的に接続される。
(iv) 読出し対象のメモリセルMC1に接続されたワード線WLmが活性状態(Hレベル)に切替えられる。
(v) 副ビット線SBL_D0〜D3またはSBL_U0〜U3に接続されたメモリセルのデータを読み出す場合には、センスアンプSAのセレクタ148(図11参照)に供給する選択信号SELUはLレベル(“0”)に設定される。
次の時刻t4において、フラッシュシーケンサ(FSQC)7からセンスアンプSAに供給されているプリチャージ信号PCが非活性状態(Hレベル)に変化するとともに、行デコーダ30,31のドライバから制御信号線CH_U0N,CH_D0Nに供給されているチャージ信号が非活性状態(Hレベル)に変化する。この結果、出力信号線CBLLからメモリセルMC1の方向へセル電流Icが流れ、出力信号線CBLRから電流源CSの方向へ参照電流Irefが流れる。メモリセルMC1にはデータ“0”(閾値電圧が高い状態)が書き込まれているので、セル電流Icは参照電流Irefより小さい。したがって、出力信号線CBLRの電位のほうが、出力信号線CBLLの電位よりも低くなる。
次の時刻t5において、フラッシュシーケンサ(FSQC)7は、センスアンプSAに出力するセンスイネーブル信号SENを活性状態(Hレベル)に変化させる。これによって、図11のNMOSトランジスタ147がオンするのでラッチ回路136が動作し始める。ラッチ回路136が出力信号線CBLL,CBLR間の電位差を増幅する結果、出力信号線CBLRの電位は接地電位(VSS)まで低下し、出力信号線CBLLの電位は電源電位(VDD)まで上昇する。出力信号線CBLRの電位は、セレクタ148および3ステートバッファを介して読出し系主ビット線RMBLに出力される。
さらに、時刻t5に、センスイネーブル信号SENが活性化することによって、出力バッファ(OBUF)34に出力される制御信号SEN_ORも活性状態(Hレベル)に変化する。これによって、センスアンプSAから読出し系主ビット線RMBLに出力された電圧信号は、読出し系主ビット線RMBLを介して出力バッファ(OBUF)34に伝達され、出力バッファ34から高速バス(HBUS)のうちの対応のデータバスに出力される。
(相補リード方式での読出し動作)
図28は、第3の実施形態において、相補リード方式での読出し動作の一例を示すタイミングチャートである。以下、主として図23、図25、図28を参照して、相補リード方式の場合において、メモリアレイ24に設けられたメモリセルMC1,MC2によって構成されるツインセルのデータを読出す手順について説明する。以下の説明では、メモリセルMC1にはデータ“0”(閾値電圧が高い状態)が書き込まれ、メモリセルMC2にはデータ“1”(閾値電圧が低い状態)が書き込まれているとする。
まず、図28の時刻t1において読出しアドレスが切替わり、時刻t2においてフラッシュシーケンサ(FSQC)7からアドレス取り込み信号が出力される点は図27の場合と同様である。
時刻t3において、行デコーダ30,31に設けられたドライバは、アドレス信号に基づいてメモリセルMC1,MC2のデータ読出しに必要な制御信号線を活性化する。具体的には次のとおりである。
(i) 制御信号線DC_U0,DC_D0に供給するディスチャージ信号は非活性状態(Lレベル)に切替えられ、制御信号線DC_U1,DC_D1は活性状態(Hレベル)のまま維持される。一方、制御信号線CH_U0N,CH_D0Nに供給するチャージ信号は活性状態(Lレベル)に切替えられ、制御信号線CH_U1N,CH_D1Nは非活性状態(Hレベル)のまま維持される。これによって、少なくとも読出し対象のメモリセルMC1,MC2が接続された副ビット線SBL_D0,SBL_D4および上側のメモリアレイ22の同じ列の副ビット線SBL_U0,SBL_U4は電源電位にプリチャージされ、それらに隣接する副ビット線SBL_D1,SBL_U1,SBL_D3,SBL_U3,SBL_D5,SBL_U5は接地電位に維持される。
(ii) 制御信号線YRA_0N,YRB_Nが活性状態(Lレベル)に切替えられるとともに、制御信号線ZL_D0,ZL_D2が活性状態(Hレベル)に切替えられる。これによって、メモリセルMC1,MC2にそれぞれ接続された副ビット線SBL_D0,SBL_D4が出力信号線CBLL,CBLRにそれぞれ電気的に接続される。
(iii) 制御信号線REF_U,REF_Dは非活性状態(Lレベル)に維持されるので、電流源CSは出力信号線CBLL,CBLRに電気的に接続されない。
(iv) 読出し対象のメモリセルMC1,MC2に共通に接続されたワード線WLmが活性状態(Hレベル)に切替えられる。
(v) 相補リード方式の場合には、センスアンプSAのセレクタ148(図11参照)に供給する選択信号SELUはLレベル(“0”)に設定される。
次の時刻t4において、フラッシュシーケンサ(FSQC)7からセンスアンプSAに供給されているプリチャージ信号PCが非活性状態(Hレベル)に変化するとともに、行デコーダ30,31のドライバから制御信号線CH_U0N,CH_D0Nに供給されているチャージ信号が非活性状態(Hレベル)に変化する。この結果、出力信号線CBLLからメモリセルMC1の方向へセル電流Ic1が流れ、出力信号線CBLRからメモリセルMC2の方向へセル電流Ic2が流れる。メモリセルMC1にはデータ“0”(閾値電圧が高い状態)が書き込まれ、メモリセルMC2にはデータ“1”(閾値電圧が低い状態)が書き込まれているので、セル電流Ic1はセル電流Ic2より小さい。したがって、上側の出力信号線CBLRの電位のほうが、下側の出力信号線CBLLの電位よりも低くなる。
次の時刻t5において、フラッシュシーケンサ(FSQC)7は、センスアンプSAに出力するセンスイネーブル信号を活性状態(Hレベル)に変化させる。以降の動作は、参照電流リード方式の場合と同様であるので説明を繰返さない。
(書込み動作、消去動作)
第3の実施形態の場合の不揮発性メモリの書込み動作および消去動作は、第1の実施形態の場合と同じであるので、説明を繰り返さない。
(効果)
上記のとおり、第2の実施形態では、第1および第2の実施形態の階層センスアンプ帯23に代えて、読出し用センスアンプ帯28がメモリマット20に対して1箇所のみ設けられる。読出し用センスアンプ帯28は、メモリマット20で共通に設けられた書込み系主ビット線WMBLと接続される。各メモリアレイの副ビット線SBLは対応の書込み系主ビット線WMBLと副ビット線セレクタ26U,26Dを介して接続される。この構成によってセンスアンプSAを削減することができるので、フラッシュメモリモジュール6の回路面積を減らすことができる。
<変形例>
不揮発性メモリは、データ書込み時にメモリアレイの同一列の複数行に同一のデータを格納するようにしてもよい。この場合、データ読出し時には同一のデータが格納された複数行に対応するワード線が同時に活性化される。これによって、個々のメモリセルに流れる電流が少ない場合でもデータ読出しが可能になるので、読出しマージンを増やすことができる。
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は上記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることは言うまでもない。