"複数のビット線と、前記複数のビット線に交差する複数のワード線と、前記複数のビット線及び前記複数のワード線の交差部に配置された複数のメモリセルを有し、前記複数のメモリセルの各々は、ビット線及びワード線間に可変抵抗素子及びダイオードが直列に接続されて構成される、メモリセルアレイと、前記ダイオードに逆方向バイアスを印加するようにして、選択ビット線及び選択ワード線に接続された選択メモリセルにデータを書き込む制御回路と、書き込み時に前記選択メモリセルに流れる電流を制限する電流制限回路と、を具備し、前記電流制限回路は、前記選択ビット線に流れる電流が、所定の第1のコンプライアンス電流に前記選択ビット線に接続された非選択メモリセルからのリーク電流分が加算された第2のコンプライアンス電流を超えないように制御することを特徴とする抵抗変化メモリ。前記電流制限回路は、前記選択メモリセルにデータを書き込む前に、前記非選択メモリセルからのリーク電流を保存することを特徴とする請求項1に記載の抵抗変化メモリ。前記制御回路は、書き込み時に、前記選択ビット線に第1の電圧を印加し、前記選択ワード線に前記第1の電圧より高い第2の電圧を印加し、非選択ビット線及び非選択ワード線に前記第1の電圧及び前記第2の電圧の中間電圧を印加し、前記リーク電流を保存する場合に、前記選択ビット線に前記第1の電圧を印加し、前記選択ワード線、前記非選択ビット線及び前記非選択ワード線に前記中間電圧を印加することを特徴とする請求項2に記載の抵抗変化メモリ。前記電流制限回路は、前記第1のコンプライアンス電流を生成する電流源と、前記リーク電流を保存するキャパシタとを含むことを特徴とする請求項2又は3に記載の抵抗変化メモリ。前記電流制限回路は、前記第1のコンプライアンス電流に前記キャパシタに保存されたリーク電流を付加する回路を含むことを特徴とする請求項4に記載の抵抗変化メモリ。前記可変抵抗素子の抵抗状態は、印加電圧の極性を切り替えることで変化することを特徴とする請求項1乃至5のいずれかに記載の抵抗変化メモリ。実施形態は、メモリセルの抵抗変化を正確に行うことが可能な抵抗変化メモリを提供する。実施形態に係る抵抗変化メモリは、複数のビット線と、前記複数のビット線に交差する複数のワード線と、前記複数のビット線及び前記複数のワード線の交差部に配置された複数のメモリセルを有し、前記複数のメモリセルの各々は、ビット線及びワード線間に可変抵抗素子及びダイオードが直列に接続されて構成される、メモリセルアレイと、前記ダイオードに逆方向バイアスを印加するようにして、選択ビット線及び選択ワード線に接続された選択メモリセルにデータを書き込む制御回路と、書き込み時に前記選択メモリセルに流れる電流を制限する電流制限回路とを具備する。前記電流制限回路は、前記選択ビット線に流れる電流が、所定の第1のコンプライアンス電流に前記選択ビット線に接続された非選択メモリセルからのリーク電流分が加算された第2のコンプライアンス電流を超えないように制御する。以下、実施形態について図面を参照して説明する。ただし、図面は模式的または概念的なものであり、各図面の寸法および比率などは必ずしも現実のものと同一とは限らないことに留意すべきである。以下に示す幾つかの実施形態は、本発明の技術思想を具体化するための装置および方法を例示したものであって、構成部品の形状、構造、配置などによって、本発明の技術思想が特定されるものではない。なお、以下の説明において、同一の機能及び構成を有する要素については、同一符号を付し、重複説明は必要な場合にのみ行う。[1.抵抗変化メモリ1の構成]図1は、本実施形態に係る抵抗変化メモリ1の基本構成、すなわち半導体基板上のグローバルバス等の配線が形成される配線領域3と、その上に積層されたメモリブロック2との構成を示している。図1に示すように、メモリブロック2は、この例では4層のメモリセルアレイMA0~MA3からなる。メモリブロック2の直下の半導体基板には、配線領域3が設けられる。配線領域3には、メモリブロック2に書き込み/読み出しされるデータを外部とやり取りするためのグローバルバス等が設けられる。また、この配線領域3には、後述するカラムスイッチ等を含むカラム系制御回路や、ロウデコーダ等を含むロウ系制御回路が設けられていてもよい。積層された複数のメモリセルアレイMAの各々に配設された複数のワード線WL及び複数のビット線BLと、半導体基板上に形成された配線領域3とを接続するために、メモリブロック2の側面に垂直配線ビアコンタクトが必要になる。配線領域3の四辺には、ビット線コンタクト領域4及びワード線コンタクト領域5が設けられている。ビット線コンタクト領域4及びワード線コンタクト領域5には、ビット線BL及びワード線WLと制御回路とをそれぞれ接続するためのビット線コンタクト6及びワード線コンタクト7が形成される。ワード線WLは、その一端がワード線コンタクト領域5に形成されたワード線コンタクト7を介して配線領域3に接続されている。また、ビット線BLは、その一端がビット線コンタクト領域4に形成されたビット線コンタクト6を介して配線領域3に接続されている。図1では、複数のメモリセルアレイMAを半導体基板に垂直な方向図1に示すZ方向に積層した1つのメモリブロック2について示しているが、実際にはこのようなメモリブロック2がワード線WLの長手方向図1に示すX方向及びビット線BLの長手方向図1に示すY方向に複数個マトリクス状に配置される。本実施形態では、ワード線コンタクト領域5では、一列のコンタクトのみ、すなわち一断面での全ての層のワード線WLが共通コンタクトを介して配線領域3に接続されている。また、ビット線コンタクト領域4では、各層のビット線BLが別々に用意された4列のコンタクトを介して配線領域3に接続されている。本実施形態では、ビット線BLは層毎に独立駆動され、ワード線WLは全ての層で共通に接続されているが、ワード線WLについても層毎に独立駆動するようにしてもよい。また、ビット線BLを共通にして、ワード線WLを独立駆動するようにしてもよい。さらに、ビット線BL及びワード線WLの少なくとも一方を上下の層で共有するように構成することもできる。図2は、抵抗変化メモリ1が備えるメモリセルアレイMAの回路図である。ここで、図2に示すメモリセルアレイMAは、ビット線BLの長手方向図2に示すY方向に例えば2Kビット2048個、ワード線WLの長手方向図2に示すX方向に例えば512ビットのメモリセルMCが配置されている。これにより、1つのメモリセルアレイMA内に1Mビット約1×106個のメモリセルMCが配置される。1つのメモリセルアレイMA内では、メモリセルMCが二次元マトリクス状に配列されている。なお、図2には、5本のワード線WL0~WL4と5本のビット線BL0~BL4とに接続されたメモリセルMCを抽出して示している。ワード線WLとビット線BLとの交差部に、整流素子としてのダイオードDiと可変抵抗素子VRとが直列接続された抵抗変化型のメモリセルMCが配置される。可変抵抗素子VRの一端は、ビット線に接続されている。可変抵抗素子VRの他端は、ダイオードDiのアノードに接続されている。ダイオードDiのカソードは、ワード線WLに接続されている。なお、メモリセルMCを構成するダイオードDi及び可変抵抗素子VRの配置及び極性は、図示のものに限定されない。可変抵抗素子VRは例えば、電極/遷移金属酸化物/電極からなる積層構造を有しており、電圧、電流、熱等の印加条件により金属酸化物の抵抗値変化をもたらし、その抵抗値の異なる状態を情報として不揮発に記憶する。この可変抵抗素子VRとしては、より具体的には、電圧或いは電流の印加により抵抗値が変化するReRAMResistiveRAMが用いられる。ReRAMには例えば、電極界面に存在する電荷トラップにトラップされた電荷の存在の有無により抵抗変化が起きるものと、酸素欠損等に起因する伝導パスの存在の有無により抵抗変化が起きるものとが含まれる。本実施形態のReRAMは、バイポーラ型のReRAMであり、すなわち、メモリセルMCに印加する電圧の極性を切り替えることにより、高抵抗状態と低抵抗状態とを設定する。バイポーラ型のReRAMでは、ダイオードDiには順方向バイアス及び逆方向バイアスが印加されるため、ダイオードDiは、順方向バイアスに加え、逆方向バイアスが印加された場合においても十分に電流を流すことが求められる。つまり、バイポーラ型の場合、メモリセルのダイオードは、ユニポーラ型で動作するメモリセルのダイオードに比べ、逆方向バイアス時に流れる電流が十分に確保できるように設計される。ダイオードDiに負電圧逆方向バイアスが印加されるようにメモリセルMCに電圧を印加する動作を書き込み動作と呼ぶ。書き込み動作では、可変抵抗素子VRは、高抵抗状態から低抵抗状態に変化する。一方、ダイオードDiに正電圧順方向バイアスが印加されるようにメモリセルMCに電圧を印加する動作を消去動作と呼ぶ。消去動作では、抵抗変化素子は、低抵抗状態から高抵抗状態に変化する。逆方向バイアスによってダイオードDiに電流を流す際には降伏現象を用いるので、逆方向バイアス時にダイオードDiに印加される負電圧は、順方向バイアス時にダイオードDiに印加される正電圧に比べて、その絶対値が大きい。すなわち、書き込み動作時にメモリセルMCに印加される電圧及び電流は、消去動作時にメモリセルMCに印加される電圧及び電流に比べて、その絶対値が大きい。このため、必然的に、書き込み動作は、消去動作に比べてメモリセルMCからのリーク電流が大きくなる。<制御回路の構成>次に、ビット線BL及びワード線WLの電圧を制御するためのカラム系制御回路及びロウ系制御回路の構成例について説明する。ここでは、ワード線方向に2Kビット=2048ビット、ビット線方向に512ビットのメモリセルMCを配列して1MビットのメモリセルアレイMAを構成する場合を例として説明する。図3は、抵抗変化メモリ1のカラム系制御回路及びロウ系制御回路のブロック図である。図3に示されるように、ロウ系制御回路は例えば、ロウデコーダ10、メインロウデコーダ11、書き込み駆動線ドライバ12、ロウ電源線ドライバ13、及びロウ系周辺回路14を備えている。また、カラム系制御回路は例えば、カラムスイッチ20、カラムデコーダ21、センスアンプ/書き込みバッファ22、カラム電源線ドライバ23、及びカラム系周辺回路24を備えている。本実施形態に係るワード線は階層構造を有しており、メインロウデコーダ11は、256本のメインワード線対MWLx,MWLbxx=<255:0>のいずれか一対を選択駆動する。選択されたメインワード線対MWLx,MWLbxでは、メインワード線MWLxがハイレベルとなり、メインワード線MWLbxがローレベルとなる。逆に、非選択のメインワード線対MWLx,MWLbxでは、メインワード線MWLxがローレベルとなり、メインワード線MWLbxがハイレベルとなる。一本のメインワード線対MWLx,MWLbxはロウデコーダ10に接続され、ロウデコーダ10は、メインワード線対MWLx,MWLbxの階層下にある8本のワード線WLx<7:0>のうちの1本を選択駆動する。メインロウデコーダ11により選択駆動されたメインワード線対MWLx,MWLbxに接続されたロウデコーダ10がさらにワード線WLを選択駆動することにより、1本のワード線WLが選択駆動される。書き込み駆動線ドライバ12には8本の書き込み駆動線WDRV<7:0>及びロウ電源線VRowが接続され、ロウ電源線ドライバ13にはロウ電源線VRowが接続されている。このロウ電源線VRowには、非選択のメインワード線対MWLx,MWLbxの階層下のワード線WL、及び選択されたメインワード線対MWLx,MWLbxの階層下の非選択のワード線WLに供給される電圧が印加される。書き込み駆動線WDRV<7:0>及びロウ電源線VRowは、ロウデコーダ10に接続され、この書き込み駆動線WDRV<7:0>及びロウ電源線VRowには、ロウデコーダ10がワード線WLを駆動するための電圧が印加される。ロウ系周辺回路14は、この抵抗変化メモリ1全体の管理を行うもので、外部のホスト装置からの制御信号を受け、読み出し、書き込み、消去、及びデータの入出力管理等を行う。本実施形態に係るビット線も階層構造を有しており、カラムデコーダ21は、64本のカラム選択線対CSLy,CSLbyy=<63:0>のいずれか一対を選択駆動する。選択されたカラム選択線対CSLy,CSLbyでは、カラム選択線CSLyがハイレベルとなり、カラム選択線CSLbyがローレベルとなる。逆に、非選択のカラム選択線対CSLy,CSLbyでは、カラム選択線CSLyがローレベルとなり、カラム選択線CSLbyがハイレベルとなる。一本のカラム選択線対CSLy,CSLbyはカラムスイッチ20に接続され、このカラムスイッチ20は、カラム選択線対CSLy,CSLbyの階層下にある8本のビット線BLy<7:0>のうちの1本を選択駆動する。カラムデコーダ21により選択駆動されたカラム選択線対CSLy,CSLbyに接続されたカラムスイッチ20がさらにビット線BLを選択駆動することにより、1本のビット線BLが選択駆動される。センスアンプ/書き込みバッファ22は、ローカルデータ線LDQ<7:0>に読み出された信号を検知増幅するとともに、データ入出力線IO<7:0>から入力される書き込みデータをカラムスイッチ20を介してメモリセルMCに供給する。センスアンプ/書き込みバッファ22には、8本のローカルデータ線LDQ<7:0>及びカラム電源線VCol1が接続され、カラム電源線ドライバ23にはカラム電源線VCol1,VCol2が接続されている。ローカルデータ線LDQ<7:0>及びカラム電源線VCol2は、カラムスイッチ20に接続され、このローカルデータ線LDQ<7:0>及びカラム電源線VCol2には、カラムスイッチ20がビット線BLを駆動するための電圧が印加される。カラム系周辺回路24は、この抵抗変化メモリ1全体の管理を行うもので、外部のホスト装置からの制御信号を受け付け、読み出し、書き込み、消去、及びデータの入出力管理等を行う。<電流制限回路25の構成>次に、図3に示した電流制限回路25の構成の一例について説明する。電流制限回路25は例えば、センスアンプ/書き込みバッファ22に含まれる。電流制限回路25は、書き込み動作時に、メモリセルMCに流れる最大電流が所定値を超えないように制御するものである。すなわち、書き込み動作では、選択メモリセルMCが高抵抗状態から低抵抗状態に変化するため、低抵抗状態になった際に選択メモリセルMCを介して選択ワード線WL及び選択ビット線BL間に大きな電流が流れる。ReRAMでは、このような大きな電流が選択メモリセルMCに流れるのを防ぐための機能が必要であり、この機能を電流制限回路25が担っている。図4は、電流制限回路25の回路図である。スイッチSW1の一端は、ローカルデータ線LDQ<7:0>及びカラムスイッチ20を介して選択ビット線BLに接続される。スイッチSW1の他端は、nチャネルMOSトランジスタnMOSトランジスタM1のドレインに接続されている。nMOSトランジスタM1のゲートは自身のドレインに接続され、ソースは接地されている。また、nMOSトランジスタM1のゲートはスイッチSW2を介してキャパシタCの一方の電極に接続されている。キャパシタCの他方の電極は接地されている。nMOSトランジスタM9のドレインはキャパシタCの一方の電極に接続され、ゲートにはカラム系周辺回路24からリセット信号RSが入力され、ソースは接地されている。nMOSトランジスタM9は、キャパシタCの電荷を放電リセットする機能を有する。pチャネルMOSトランジスタpMOSトランジスタM5のソースは電源端子VDDに接続され、ゲートは自身のドレインに接続されている。pMOSトランジスタM6のソースは電源端子VDDに接続され、ゲートはpMOSトランジスタM5のゲートに接続されている。nMOSトランジスタM2のドレインはpMOSトランジスタM5のドレインに接続され、ゲートはスイッチSW3を介してキャパシタCの一方の電極に接続され、ソースは接地されている。定電流源CSは、定電流コンプライアンス電流Icompを流すように構成されている。コンプライアンス電流Icompは、メモリセルMCに電圧を印加して抵抗状態を変化させる過程で、メモリセルMCに急激又は過度に電流が流れてメモリセルMCが劣化又は破壊されるのを防ぐことが可能である値に設定される。コンプライアンス電流Icompは、可変抵抗素子VR及びダイオードDiを構成する材料やサイズなどに応じて最適に設計される。定電流源CSが生成するコンプライアンス電流Icompには、選択メモリセル以外の非選択メモリセルからのリーク電流は考慮されていない。nMOSトランジスタM3のドレインは定電流源CSに接続され、ゲートは自身のドレインに接続され、ソースは接地されている。nMOSトランジスタM4のドレインはpMOSトランジスタM5のドレインに接続され、ゲートはnMOSトランジスタM3のゲートに接続され、ソースは接地されている。nMOSトランジスタM7のドレインはpMOSトランジスタM6のドレインに接続され、ゲートは自身のドレインに接続され、ソースは接地されている。nMOSトランジスタM8のドレインは、スイッチSW4の一端に接続され、スイッチSW4の他端は、ローカルデータ線LDQ<7:0>及びカラムスイッチ20を介して選択ビット線BLに接続される。nMOSトランジスタM8のゲートはnMOSトランジスタM7のゲートに接続され、ソースは接地されている。スイッチSW1~SW4のオン/オフは、カラム系周辺回路24によって制御される。nMOSトランジスタM1及びM2は、カレントミラー回路を構成している。従って、nMOSトランジスタM2には、nMOSトランジスタM1に流れるリーク電流Ileakと同じ電流が流れる。nMOSトランジスタM3及びM4は、カレントミラー回路を構成している。従って、nMOSトランジスタM4には、nMOSトランジスタM3に流れるコンプライアンス電流Icompと同じ電流が流れる。pMOSトランジスタM5及びM6は、カレントミラー回路を構成している。pMOSトランジスタM5には、nMOSトランジスタM2に流れるリーク電流IleakとnMOSトランジスタM4に流れるコンプライアンス電流Icompとを合わせた電流が流れる。従って、pMOSトランジスタM6には、pMOSトランジスタM5に流れる電流IcompIleakと同じ電流が流れる。nMOSトランジスタM7及びM8は、カレントミラー回路を構成している。従って、nMOSトランジスタM8には、nMOSトランジスタM7に流れる電流IcompIleakと同じ電流が流れる。[2.動作]次に、抵抗変化メモリ1の書き込み動作について説明する。書き込み動作は、可変抵抗素子VRを高抵抗状態から低抵抗状態に変化させる動作である。この書き込み動作では、選択メモリセルに接続された選択ワード線WL及び選択ビット線BLのうち、選択ワード線WLにハイレベル電圧を印加し、選択ビット線BLにローレベル電圧を印加し、ダイオードDiに負電圧逆方向バイアスを印加するようにして可変抵抗素子VRに書き込み電圧を印加する。図5は、抵抗変化メモリ1の書き込み動作を示すタイミングチャートである。本実施形態では、5つのステージステージ1~5によって書き込み動作が行われる。図6は、ステージ1においてビット線及びワード線に印加される電圧を説明する図である。図6の丸印のメモリセルにデータを書き込むものとし、この丸印のメモリセルを選択メモリセルと呼び、選択メモリセルに接続されたワード線及びビット線をそれぞれ選択ワード線及び選択ビット線と呼ぶ。選択ビット線に印加する電圧選択ビット線電圧をVSL、選択ワード線に印加する電圧選択ワード線電圧をVSH、非選択ビット線及び非選択ワード線に印加する電圧非選択電圧をVNSとし、これら電圧の大小関係は、VSL<VNS<VSHである。例えば、非選択電圧VNSは、選択ビット線電圧VSLと選択ワード線電圧VSHとの中間電圧に設定される。選択ビット線電圧VSLは、例えば0Vである。まず、ステージ1において、ロウ系制御回路及びカラム系制御回路は、全てのビット線及び全てのワード線に選択ビット線電圧VSLを印加する。また、ステージ1において、カラム系制御回路は、スイッチSW1~SW4をオフにする。また、カラム系制御回路は、リセット信号RSをハイレベルにし、nMOSトランジスタM9をオンにする。これにより、キャパシタCの電荷が放電リセットされる。続いて、ステージ2において、ロウ系制御回路及びカラム系制御回路は、非選択ビット線及び全てのワード線に非選択電圧VNSを印加する。選択ビット線は、選択ビット線電圧VSLのままである。また、ステージ2において、カラム系制御回路は、スイッチSW1,SW2をオンにし、スイッチSW3,SW4をオフにし、リセット信号RSをローレベルにする。これにより、選択ビット線がnMOSトランジスタM1及びキャパシタCに接続される。図7は、ステージ2においてビット線及びワード線に印加される電圧を説明する図である。このステージ2の電圧関係により、選択ビット線に接続された非選択メモリセルには、逆方向バイアスが印加される。本実施形態では、非選択電圧VNSが選択ビット線電圧VSLと選択ワード線電圧VSHとの中間電圧に設定されているので、選択ビット線に接続された非選択メモリセルには、大きさ|VNS-VSL|の負電圧が印加される。これは、後述するステージ5において、選択ビット線に接続された非選択メモリセルに印加される負電圧と同等である。従って、ステージ2において選択ビット線の電流量を測定することにより、ステージ5において選択メモリセルにデータを書き込む際に選択ビット線に接続された非選択メモリセルから生じる合計のリーク電流を測定することが可能となる。選択ビット線に流れるリーク電流は、図4のキャパシタCを充電する。続いて、ステージ3において、ロウ系制御回路及びカラム系制御回路は、選択ビット線に非選択電圧VNSを印加する。すなわち、ステージ3では、全てのビット線及び全てのワード線に非選択電圧VNSが印加される。また、ステージ3において、カラム系制御回路は、スイッチSW1~SW4をオフにする。図8は、ステージ3においてビット線及びワード線に印加される電圧を説明する図である。これにより、キャパシタCにはステージ2のリーク電流によって充電された電圧が保存される。続いて、ステージ4において、ロウ系制御回路及びカラム系制御回路は、選択ワード線に選択ワード線電圧VSHを印加する。図9は、ステージ4においてビット線及びワード線に印加される電圧を説明する図である。続いて、ステージ5において、ロウ系制御回路及びカラム系制御回路は、選択ビット線に選択ビット線電圧VSLを印加する。また、ステージ5において、カラム系制御回路は、スイッチSW3,SW4をオンにする。これにより、キャパシタCがnMOSトランジスタM2に接続され、選択ビット線がnMOSトランジスタM8に接続される。図10は、ステージ5においてビット線及びワード線に印加される電圧を説明する図である。ステージ5の電圧関係により、選択メモリセルには、大きさ|VSH-VSL|の負電圧が印加され、選択メモリセルが書き込み状態低抵抗状態に設定される。また、選択ビット線に接続された非選択メモリセルには大きさ|VNS-VSL|の負電圧が印加され、この非選択メモリセルが半選択状態になるが、電圧値が低いため書き込みが禁止される。また、ステージ5では、キャパシタCの電圧がnMOSトランジスタM2のゲートに印加されるので、nMOSトランジスタM2には、ステージ2で選択ビット線に流れるリーク電流Ileakと同じ電流が流れ、nMOSトランジスタM2は、コンプライアンス電流Icompにリーク電流Ileakを加算するように機能する。よって、pMOSトランジスタM5のドレイン電流IcompIleakとなり、この電流がミラーされて、選択ビット線には、新たなコンプライアンス電流としてIcompIleakが設定される。この結果、新たなコンプライアンス電流IcompIleakを最大電流として、選択メモリセルの書き込みが行われる。[3.効果]以上詳述したように本実施形態の抵抗変化メモリ1では、制御回路ロウ系制御回路及びカラム系制御回路は、ダイオードDiに逆方向バイアスを印加するようにして、選択ビット線及び選択ワード線に接続された選択メモリセルにデータを書き込み、この書き込み動作において、選択ビット線に選択ビット線電圧VSLを印加し、選択ワード線に選択ワード線電圧VSHを印加し、非選択ビット線及び非選択ワード線に非選択電圧VNSを印加する。これら電圧の大小関係は、VSL<VNS<VSHである。また、制御回路は、選択メモリセルにデータを書き込む前に、選択ビット線に選択ビット線電圧VSLを印加し、非選択ビット線及び全ワード線に非選択電圧VNSすることで、書き込み時に選択ビット線に接続された非選択メモリセルから選択ビット線に流れるリーク電流Ileakを再現し、電流制限回路25は、このリーク電流Ileakを保存する。そして、電流制限回路25は、書き込み時に、所定のコンプライアンス電流Icompにリーク電流Ileakが加算された新たなコンプライアンス電流IcompIleakを超えないように最大電流を制限するようにしている。従って本実施形態によれば、書き込み時に、選択メモリセルに最適なコンプライアンス電流Icompを供給することが可能となる。これにより、選択メモリセルの抵抗状態の変化本実施形態では高抵抗状態から低抵抗状態への変化を正確に行うことができる。また、選択メモリセルの抵抗変化の過程において、選択メモリセルが劣化又は破壊されることもない。本実施形態で説明したコンプライアンス電流の補正を行わない場合、選択メモリセルへの書き込み動作において、非選択メモリセルに大きさ|VNS-VSL|の負電圧が印加され、この非選択メモリセルにリーク電流Ileakが発生する。この場合、選択メモリセルには、規定のコンプライアンス電流Icompからリーク電流Ileakを差し引いた電流しか流れず、選択メモリセルの抵抗変化を正確に行うことが困難となる。さらに、メモリセルアレイMAのサイズが大きくなると、当然に選択ビット線に接続される非選択メモリセルの数が多くなり、非選択メモリセルからの合計のリーク電流が大きくなる。これにより、書き込み時に選択メモリセルに流れるコンプライアンス電流が大幅に減少してしまう。従って、本実施形態では、メモリセルアレイMAのサイズが大きくなるほどより効果が大きくなる。また、本実施形態では、書き込み時にダイオードDiに逆方向バイアスを印加している。ダイオードDiの逆方向バイアスは、順方向バイアスに比べて電圧の絶対値が大きい。このため、書き込み動作では、選択ワード線電圧VSH及び非選択電圧VNSが大きくなり、必然的にメモリセルのリーク電流も大きくなる。従って、本実施形態は、ダイオードDiに逆方向バイアスを印加して書き込みを行う抵抗変化メモリに有効である。なお、コンプライアンス電流の補正動作は、書き込み動作毎に行わなくてもよく、例えば、書き込み動作が所定回数だけ行われた場合にコンプライアンス電流の補正動作を行うようにしてもよい。また、本実施形態は、ダイオードDiに逆方向バイアスを印加する書き込み動作に限定されるものではなく、ダイオードDiに順方向バイアスを印加する消去動作に適用してもよい。また、本実施形態の説明では、抵抗変化メモリとしてReRAMを例に挙げて説明したが、これに限定されるものではなく、カルコゲナイド等のように結晶状態と非晶質状態の相転移により抵抗値を変化させるものPCRAM:PhaseChangeRAMや、金属陽イオンを析出させて電極間に架橋コンタクティングブリッジを形成したり、析出した金属をイオン化して架橋を破壊したりすることで抵抗値を変化させるものCBRAM:ConductiveBridgingRAM等の抵抗変化メモリを用いることも可能である。本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。"