"複数のワード線と、前記ワード線と交差する方向に配線される複数のビット線と、前記ワード線と前記ビット線の所定の交点に配置される複数のメモリセルとを具備し、前記メモリセルは、トンネル膜と固定層と自由層を有するトンネル磁気抵抗素子と、そのゲートが前記ワード線に接続され、そのドレインが前記トンネル磁気抵抗素子の前記固定層側に接続されるMOSFETを有し、前記固定層は、前記トンネル膜に隣接して配置され電子スピンの向きが所定の方向に固定され、前記自由層は、前記トンネル膜の固定層に隣接する面に対向する面で隣接して、電子スピンの向きが前記固定層に対して平行、反平行のいずれかをとり、前記自由層のスピンは、スピン注入磁化反転を利用して書き換え、読み出し時にメモリセルに流す電流の時間は、書き換え動作の時よりも短く、電流値は同程度であることを特徴とする半導体装置。請求項1において、書き換え動作の前に書き換えに必要な電流よりも弱い電流を流すことを特徴とする半導体装置。請求項1において、読み出し動作時は、ビット線電圧をMOSFETのソースフォロワモードで一定に保つことを特徴とする半導体装置。しかしながら、スピン注入型MRAMにおいても、現在の書き換えに必要電流密度しきい電流は、1x10^6~10^7A/cm2必要であり、これを50nmx100nmの素子で考えた場合には、50uAの電流が必要になり、最小加工寸法のMOSトランジスタで駆動できる電流と等しいレベルである。一方、我々は検討の中で、この書き換えに必要電流密度しきい電流は、書き込み時間書き換えパルス幅の関数であり短い書き込み時間で充分にスピンの向きを反転させるにはより大きな電流が必要であることを見出した。即ち、スピン注入型MRAMの場合、スケーラビリティがよく、かつ、高速に書き込む点で優れているが、高速に書き込む場合には、大きな電流を流すための大きなMOSトランジスタが必要になり、逆に面積を小さくするため小さなMOSトランジスタを用いる場合は、高速に書き込むことが出来ない。また、スピン注入型MRAMは、スケーラビリティに優れており微細化をすることが出来る。しかし、微細化を進めるとメモリセル毎に製造ばらつきが大きくなり、書き込み電流はメモリセル毎にばらつくことになる。そのため、書き込み時にメモリセルに流す電流のばらつきを低減する必要がある。更に、スピン注入型MRAMでは、書込みと読出しとは、流す電流量が異なるのみである。このため、読出しによる誤書込みの恐れがある。これを避けるためのリードディスターブの低減が必要である。上記課題を解決するために本願明細書に開示される主な発明は以下の通りである。第1に、スピン注入型MRAMの書き込み動作時において、トンネル磁気抵抗素子に第1の電流を流した後、第1の電流より大きい第2の電流を流す。第2に、スピン注入型MRAMの読み出し時に、メモリセルに流す電流の時間は、書き換え動作の時よりも短く、電流値は同程度とする。第3に、スピン注入型MRAMの書き込み動作時に、容量に充電した電荷を流す。第4に、スピン注入型MRAMの書き込み動作時に、書き込み補助線を用いて磁場を発生し、トンネル磁気抵抗素子に影響を与える。第5に、スピン注入型MRAMの書き込み動作前に、ビット線に電流を流して磁場を発生し、トンネル磁気抵抗素子に影響を与える。高速書き込み、又は、安定動作を実現できる。本発明の第1の実施例を図1と図2を用いて説明する。本構成のメモリセルSCは、n型MOSトランジスタM1とトンネル磁気抵抗素子T1から構成しており、ビット線BLとソース線SLとに図のように接続され、M1のゲートを制御するのがワード線Wである。トンネル磁気抵抗素子T1は図26でTMRとして既に説明したように、少なくとも2つの磁性層があり、1つは、スピンの向きが固定されている固定層PL、他方はスピンの向きが固定層に対して、平行状態、反平行状態の2状態をとる自由層FLからなる。情報の記憶は、この自由層のスピンの向きで記憶し、トンネル磁気抵抗素子の電気抵抗が反平行状態で高抵抗状態となり平行状態で低抵抗状態となる。ワード線が選択されると、T1とM1に、BL側がSL側より高電位であれば図のiの向きに電流が流れ、また、SL側がBL側より高電位であれば反対の向きに電流が流れる。これに対応して図27で既に説明したようにスピンの向きを制御でき、これに対応した情報を書き込むことができる。本構成の特徴を、図2Aに示す。電流iの値を、横軸を時間にとって示している。すなわち、非選択時の電流値は、i0値としては例えば、0μAであるが、最初のt1の時間の電流値はi1、続くt2の時間の電流値はi2であり、i1はi2よりも小さいという特徴を有する。なお、本明細書では、最初の弱い電流i1を与える動作をプレパルスと呼ぶことにする。これと比較して、プレパルスを与えない場合は、図2Bに示すように、書き換え動作時間t3の間一定の電流i3を流す場合、このi3は、i2よりも大きな値となってしまう。又、図2Cに示すように流す電流をi2と同じとしたとしても、書換え動作時間t4はt2よりも長くなってしまう。このような現象が起こる理由としては、最初の弱い電流i1によって、自由層のスピンが揺籃され、向きが変わりやすい状態となるためと考えられる。従って、一度に書き換え電流を流すよりも、最初の弱い電流でスピンを変わりやすい状態にしておきその後に本来の書き換え電流を流した方が、より小さな書き換え電流を実現できる。図3に、本発明を用いた時の実験結果の模式図を示す。横軸に書き換え時間を取り、縦軸に書き換えに必要な電流を示しており、夫々、所望の点で規格化しているため単位は任意となる。この図に示すように、図2Aに示すように最初に弱い電流を与えることによりプレパルス有り、より短い時間で書き換えを行なうことができる。以上のように、最初に弱い電流i1を与え、その後、これよりも大きな電流i2を与えるのであたえる図2Aことによって、より低い電流値で書き換えを行うことができ、また、高速な書き換え動作を実現できる。なお、プレパルス動作の後、本来の書き換え動作に用の電流を流さなければ、メモリセルの状態は最初の状態に戻ってしまい、他の状態となることは無い。また、プレパルスは書き換えるメモリセルのみに与えても良いし、書き換えないセルも含めて同時に与えても良い。図4に、本願発明を適用したメモリアレイを示す。メモリセルSCはワードドライバWDによって制御され、ワード線がW1,W2であり、各々のメモリセルは、MTとトンネル磁気抵抗素子TMRから構成しており、ビット線BLとソース線SLとに図のように接続されている。本図では、ワード線とビット線の半分の交点にメモリセルSCが配置されているが、すべての交点に配置してもよい。センスアンプブロックSABは、ビット線ソース線選択回路BLSELとビット線の微小信号を増幅するセンスアンプSA、メモリセルにデータを書き込むための書き込み回路WAが配置される。図4では、1つのセンスアンプ書き込み回路に対して、4対のビット線ソース線ペアが接続されている例であるが、これに限られるわけではない。1対のビット線ソース線ペアに対してセンスアンプ書き込み回路を接続してもよい。その場合、面積は大きくなるが、すべてのビット線に対してセンスアンプが接続されるため、一度に多量のデータを外部に出力するのに有利である。一方、4対、あるいは8対、16対など複数のビット線ソース線ペアに対して1つのセンスアンプ書き込み回路を配置すると、センスアンプ書き込み回路数を減らせるため、面積を低減できる利点がある。図5は4対のビット線ソース線ペアからビット線選択信号SEL0,SEL1,SEL2,SEL3によって、1対のビット線ソース線対を選ぶビット線ソース線選択回路例である。この回路には、さらに、イコライズ信号EQ0,EQ1,EQ2、EQ3とプリチャージ信号PC0,PC1,PC2,PC3により、ビット線とソース線を非選択時に所定の電圧Vsに設定するためのイコライズMOSと、センスアンププリチャージ信号PCSAにより、読み出し時に所定の読み出し電圧VRに設定するプリチャージ回路も含まれている。本回路は図7に示したものに限られるわけではない。同様の機能を持つものであれば、他の回路構成でもかまわない。図6は、図4に示すセンスアンプSA及び書き込み回路WAの構成例を示す。この図において、このようにすることにより、面積の低減を図ることができる。書き込み回路は、まず、LTPとLTAとを出力とするインバータ回路2段で構成したラッチ回路がある。このラッチの情報は、入出力線IOからの情報に応じて、列選択信号Y1及び第1の書き込み制御信号力WEによって、設定される。この結果のLTPとLTAの値によって、第2の書き込み制御信号力WE1によってこれに接続されたMOSトランジスタがオンすると、ビット線BLSAとソース線SLSAとが、Vd又は、Vsと電気的に接続されることになる。また、ビット線ソース線選択回路BLSELにより選択されたビット線BL、ソース線SLもVd又はVsと電気的に接続される。なお、ビット線BLSA及びソースSLSAとビット線BL、ソース線SLは同じように制御されるため、以下の説明が複雑になるのを防止するために、特に断りのない限り、ビット線BLSA及びBLは、同じものと扱い、ソース線SLSA及びSLは同じものとして扱う。この時、ビット線BLがVdに電気的に接続される時は、これはLTPが高電位でありLTAが低電位の場合であるが、ソース線SLはVsと電気的に接続される。ラッチ回路の電位は、ビット線、ソース線にVdを確実に供給するためにVdよりも高く設定しておく。読み出し時は、読み出し制御回路RE1,REによって、ビット線BLの信号をセンスアンプに取り込んで増幅したり、センスアンプの信号を列選択信号Y1で制御されるMOSトランジスタを介してIOへ出力することができる。この図6の回路構成を用いることにより、図1~図3で説明した本発明の動作を行うことができる。図7は、図4に示されるワードドライバWDの回路例である。本図のワードドライバWDは、プレパルスをワード線を制御することにより実現するための構成を示している。本ワードドライバは、ここではAi1とAI2の2つを例として示した外部アドレスによって選択される信号デコード信号によってワード線W1又はW2を選択する回路であり、この時、Vd1よりnMOSのしきい値分低い電圧と、この電圧よりも高くVd1に等しい電圧とをHVを切り替えることによってワード線に与えることができる。すなわち、非選択状態では、Ai1とAI2、及びHVは高レベルであるため、ワード線はVsレベルとなっている。ここでAi1が選択されて低レベルとなると、これを受けたインバータの出力によってVd1とW1との間に挿入されたnMOSのゲートがVd1となる。このために、ワード線には、Vd1よりnMOSのしきい値分低い電圧が出力される。次いで、HVも低レベルとなると、今度は、Vd1とW1との間に挿入された直列の2つのpMOSのゲートが低レベルとなり、ワード線にはVd1に等しい電圧が出力される。この例のようにすれば2種類の電圧を発生できることとなり、発明に必要な2種類の電流値の電流を流す動作が可能となる。図8に、図4~図7の回路の動作例を示す。IOより書き換えデータを取り込み、本発明の方法を用いて書き換えを行う動作である。IOは初め低電位であり、書き換えデータとして高電位となったとする。これをY1とWEとを高電位とすることでラッチに取り込む。この結果、LTPが低電位から高電位へ、LTAが高電位から低電位へ切り替わる。プリチャージ信号PC及びイコライズ信号EQは、この時高電位であるため、ビット線BLとソース線SLは共に低電位Vsである。また、WE1が切り替われば、ソース線SLは高電位Vdに、ビット線BLは低電位Vsと電気的に接続可能な状態となっている。この後、PC及びEQが低電位となり、ビット線BLとソース線SLは低電位Vsより電気的に切り離される。この後、WE1が高電位となり、ソース線SLは高電位Vdに、ビット線BLは低電位Vsと電気的に接続される。この時、デコード信号Ai1が切り替わり、ワードドライバWD1が動作しワード線W1がまずV1の電位となるプレパルス動作。このV1の値は、図7の回路図に示したように、Vd1よりMOSのしきい値電圧分低い電圧となっている。これによって、メモリセルには図2に対応した小さな電流であるi1が流れることになる。これによって、メモリセル中のスピンは向きを変えやすい状態となる。この後、信号線HWが切り替わる。これによって、図7の回路図に示したように、電圧Vd1よりワード線にpMOSを介して電圧が印加され、ワード線W1がV2=Vd1とより高い電圧となる。メモリセルでは図2に対応したより大きな書き換え電流であるi2が流れることとなる。これによってメモリセル中のスピンは所望の向きを向くことになり、書き換え動作を行うことができる。この時、ワード線に最初にV1を与え、その後にV2を与える動作により、一度にワード線に書き換え動作用電圧を与える場合よりも、V2は低く、又は与えている時間を短くすることができるすなわち、高速な書き換えを行うことができる。本発明は、このように書き換え電流の低減や、書き換えの高速化を行うことができるのである。書き換えを終了すると、ワード線を最初の低電位に戻し、WE1を低電位とし、また、PCを高電位とする。これによって、ビット線BLとソース線SLは共に低電位Vsとなる。図9に、本発明を実現する時の書き込み回路の他の構成例を示す。図6との差は、入出力線を差動信号相補信号線で構成とした点と、Vdと、ビット線BL又はソース線SLとを接続するMOSトランジスタをp型MOSトランジスタとした点である。まず、差動信号にしたことにより、高速かつ安定な読み出しが可能となる。また、p型MOSトランジスタとしたことによりラッチの電源電圧はVdでも、Vdの電位をビット線BL又はソース線SLに与えることができるという特徴がある。具体的には、入出力線IOを差動信号とするために、入出力線は、IOとIOBの2本であり、差動の信号がこの信号線に現われる。このため、第1の書き込み制御信号WEや読み出し制御信号REは、2つのMOSトランジスタを制御している。また、センスアンプの両端の出力がREで制御されるMOSトランジスタを介して入出力線はIOとIOBと接続されている。また、Vdと、ビット線BL又はソース線SLとを接続するMOSトランジスタをp型MOSトランジスタとするためにラッチの出力であるLTPとLTAは、前述のように、Vdとビット線BL又はソース線SLとを接続するp型トランジスタのゲートに入力している。また、第2の書き込み制御信号もWE1とこれと逆相の信号がでるWE1Bの2つとなり、WE1Bによって、Vdとビット線BL又はソース線SLとを接続するための他方のp型トランジスタを制御している。動作は、図5に対して、差動の入出力線IOとIOBとなることと、WE1に加えてこれと逆相の信号がでるWE1Bが用意されることと、ラッチの出力の高電位がVdの電位で良い点のみが異なる。なお、本実施例では、入出力線IOを差動信号線とすることとVdと、ビット線BL又はソース線SLとを接続するMOSトランジスタをp型MOSトランジスタとすることの両者を説明したが、適宜一方のみを選択して用いても良いことは言うまでもない。図10に、本発明を実現する時の書き込み回路の他の構成例を示す。この回路は、プレパルスの動作を行うのに、ワード線の電圧で行うのではなく、ビット線BL又はソース線SLで行うことが特徴である。これにより、ワード線は図8で説明したような高電位が2つある構成とせず、後に示すように高電位は一つでよい。従って、ワードドライバWDも図7に示すような回路でなく通常のワードドライバWDを用いることができる。プレパルス動作をビット線ソース線を駆動することにより実現するために、図10の回路では、ビット線BL又はソース線SLに、VdとVd2の2種類の高電位が印加できるようになっている。この時、Vd2はVdよりも低い電位である。プレパルス動作の時には、このVd2を用い、続く書き換え動作の時にVdを用いるのである。このために、図10に示すように、Vd2とビット線BL又はソース線SLとは、ラッチの出力に応じて、WE1の信号で電気的に接続する構成と共に、Vdとビット線BL又はソース線SLとは、ラッチの出力に応じて、WE2の信号で電気的に接続する構成となっている。図11に、図10の回路の動作例を示す。図6の動作と異なる点は、WE1の信号で、この例ではソース線SLに第1の高電位が現われ、その後、WE2の信号で第2の高電位が現われる点である。この第1の高電位によって流れる電流によってスピンの向きを変化させやすく、他の表現では反転しやすくするのである。なお、この例では、ソース線SLにこのような電位が現われる例としたが、ビット線BLの側に現われる例もある。これは、図31で説明したように、書き換えには書き込みたい情報に応じて、2つの方向があるためである。この回路の動作は以下のようになる。このように動作させることによって、スピンの向きが変化しやすい状態を作り出すことができるので、書き換え電流の低減や書き換え時間の短縮を実現でき、低電力、高速となる。本発明の第2の実施例を、図12を用いて説明する。読み出し動作と書き込み動作の時にメモリセルに流れる電流とそのパルスの幅を見ている。本発明の特徴は、読み出しと書き込みの電流量がほぼ等しく、そのパルス幅が読み出しのときが書き込みの時に比べ小さいことである。すなわち、電流値はi4と共に等しいが、読み出しの時のパルス幅t5と書き込みの時t6と比較すると、t5はt6よりも小さい。これをフラッシュメモリと比較すると、例えばNAND型フラッシュメモリでは、メモリセル毎の書き込み電流は読み出し電流よりも小さく、また、必要なパルス幅は、書き込み時の方が読みだしの時よりも大きい。電流によって配線に磁界を発生させて書き換えを行うMRAMでは、書き込み時の電流は大きい。このような例とは異なり、本発明では、図12のような特徴のある読み出しと書き込みを行う。これによって、我々は読み出し時のディスターブを大きく低減できることを見出した。これは読み出し時のパルス幅が短いことによって、その印加時間によって普通にディスターブが低減させるのとまったく異なる原理であることを見出した。これを図13を用いて説明する。図13に、本発明の第2の実施例を用いた時の実験結果の模式図を示す。横軸に書き換え時間を取り、縦軸に書き換えに必要な電流を示している。また、図3と同様に夫々所望の点で規格化している。ここで、読み出しディスターブとは、読み出し動作において、弱い書き換え動作が起こってしまい、書き込まれているデータが変わってしまう現象を指す。この図に示されるように、書き換え時間を短くしていくと、書き換えに必要な電流は増加していく。書き換えに必要な電流が増加することは、低電流で書き換えを行う点では不利であるが、このことは同じ書き換え電流では書き込みが起こりにくくなっていることを示している。例えば、i4という電流値で見てみよう。この時、書き換え時間をt6と取れば、この電流は書き換えに必要な電流よりも充分に大きいので書き換えを確実に実行することができる。通常、書き換えに必要な最低限の電流で書き換えを行うことはない。これはメモリセルに含まれる多くのスピンの中で書き換えを目指した方向へ変わらないスピンが残ってしまうためである。一方、この時、書き換え時間をt5として見よう。この時は、i4という電流値は、書き換えに必要な電流よりも充分に小さい。これはこの電流を流しても書き換えが起こらないことを意味する。一方この領域の電流によって、メモリセルの情報を読み取ることができる。つまり、図30で説明したように、自由層のスピンの向きにより、トンネル磁気抵抗素子の電気抵抗が異なり、この抵抗の大小を読み取ることができる。この時、この領域の電流では、書き込み動作が起こりにくいことは上述の通りである。よって、読み出しを繰り返してもディスターブが起こりにくいことになる。この特徴を用いた本発明によれば、図12と合わせて再度述べると、読み出しと読み出しも書き換えも同じi4という電流値によって、そのパルス幅を変えるのみで行うことができる。これは、書き換えと時と読み出し時とで、メモリセル印加する電圧が同じで良いこととなり、簡便な回路構成を取ることが可能となり、低コストな半導体記憶装置を実現できる。図14は、本発明の第2の実施例の他の構成例である。ここでは、読み出しと書き込みにおいて、その最大電流i4はほぼ同じ値であるが、書き込みにプレパルス動作を併用している。これによって、i4をより小さな値と出来たり、書き換え時間t7を短く取ることが可能となる。これに合わせて、読み出しのパルス幅t5や、共通の電流であるi4を選択することができ、低電力化や高速化が達成されるのである。なお、図14は、電流値を示しているが、書込み時と読み出し時において、ビット線に同じ電圧を印加することにより実現することが可能である。図15は、短い読み出し時間で高速に信号を増幅する構成の一例である。ビット線BLがセンスアンプとRE1で制御されるMOSトランジスタで接続されており、PC1で制御されるMOSトランジスタによってビット線BLはVsへ接続され、PP1で制御されるMOSトランジスタによってセンスアンプとの接続ノードNSはVdへ接続されている。ここで特徴的なことは、ビット線BLがPP1の信号でVdの電圧となっているNSよりも、RE1の電圧よりもMOSトランジスタのしきい値電圧分だけ低い電圧にクランプされることである。このため、メモリセルをオンさせると、BLよりも寄生容量の小さなNSの電位が高速に変化する。このためにこの信号を直ちにセンスアンプで増幅することが可能となり、メモリセルはオフさせて良い。このようにメモリセルをオンさせておく時間を短くすることができるのである。上で示したように流している時間が短い程、書き込みに必要な電流は大きくなるので、この結果として読み出し動作でのディスターブ耐性が大きく向上する。本構成を用いれば、ディスターブが起こりにくい短い読出し時間でもセンスアンプで増幅するのに十分な信号電圧を得ることができる。なお、同様な構成をソース線SLに対しても備えることもできる。以上のように、本実施例の回路構成を採用することにより、PP1で制御されるMOSトランジスタは、所謂ソースフォロワモードとなっており、ビット線BLの電圧変化に対して高速に接続ノードNSの電圧を変化させる。これにより高速な読み出し動作が可能となる。図16は、図15の回路の動作例を示す図である。PC1が、高電位より低電位となり、この後、PP1が低電位となりNSはVdへ電気的に接続される。この状態でRE1が高電位となると、RE1がゲートに接続されたn型MOSトランジスタにより、ビット線BLは、RE1の電位よりもこのn型MOSトランジスタのしきい値電圧分低い電圧にプリチャージされる。ここで、ワード線Wが選択されると、メモリセルに電流が流れる。しかしながら、ビット線はRE1の電位よりもn型MOSトランジスタのしきい値電圧分低い電圧にクランプされる。この結果、ビット線BLの寄生容量よりもNSの寄生容量ははるかに小さいので、NSの電位が大きく変化することになる。この結果、センスアンプをオンすることができ、その前にRE1を低電圧に戻し、またワード線を閉じることができる。よって、メモリセルに電流を流す時間を短くすることができる。また、本構成は、ビット線の大きな寄生容量を直接放電する場合と比較して、高速に動作させることが可能となる。図17は、本発明の第3の実施例を示す図である。この実施例では、ビット線BLへの電位を与えるために、容量CSとこれを電源Vdと接続するためのスイッチS1とビット線BLと接続するためのスイッチS2とが用意されている。すなわち、これまではビット線BLへ電位を与えるのに、電源Vdとビット線BLとスイッチで結ぶ構成としていた。このように、電源と直接接続すると、メモリセルを構成するMOSトランジスタの性能などによって流れる電流がメモリセル毎にばらついてしまう場合がある。本実施例ではこれと異なり、最初にスイッチS1を閉じて、容量CSを電源Vdによって充電する。この後、スイッチS1を開けてスイッチS2を閉じて、容量CSの電荷によってビット線BLへ電流を供給する。この構成を用いると、容量CSに蓄積された一定の電荷のみ用いるため、ビット線よりメモリセルに流される電流の総量、電荷量のばらつきが小さくなる。この流れる電荷のスピンによって、メモリセル中の状態が変化することになるが、この元になる電荷量が一定であることは、メモリセル毎のスピンの変化量も揃う。従って、本実施例を採用することによりばらつきの小さな書き換え後の状態を作り出すことができる。なお、同様な構成をソース線SLに対しても形成し、書き換えの電流の向きを変えることにより、必要な情報を書き換えることができる。なお、容量Cは、MOSキャパシタやMIMキャパシタを用いて形成することができる。図18に、図17の回路の動作例を示す。最初はスイッチS1とスイッチS2の両方がオフしている開いている。まず、スイッチS1がオンする。これによって、図には示されていないが、図17の容量CSが充電される。これが終わるとスイッチS1をオフし、次にスイッチS2をオンする。これによって、容量CSより、電流i5が流れる。なお、この図では一定の電流値で模式的に書いているが、これに時間を乗じた総電荷量が書換え後の状態に影響する。本実施例では、容量CSに充電された値を元にしているため、書換え時にメモリセルに流れる総電荷量のばらつきが小さくなる。図19は、本発明の第3の実施例の他の構成例を示す図である。この構成例では、CS1とCS2の2種類の容量を準備している。スイッチS1で両方の容量をVdへプリチャージするが、CS1はS2を介して、ビット線BLと接続され、CS2はS3を介してビット線BLと接続される。この構成を用いるとプレパルス動作を行うことができ、またこの時のスピンの向きを変化させやすくするための電流を、CS1の容量を変化させることで達成可能となる。また、書換え時にメモリセルに流れる総電荷量を容量CS1及びCS2に充電した電荷を元にしているため、ばらつきが小さい。なお、プレパルス動作を行うために、C1の容量値は、C2の容量値より小さくする。図20は、図19の回路の動作例をしめすものであり、共にS1でCS1とCS2をプリチャージし、S2とS3とでメモリセルとこれらの容量とを接続し電流をメモリセルに流すのである。S2のパルス幅はS3のパルス幅よりも小さい。これによってメモリセルにプレパルス動作を与えることができ、スピンの向きを変えやすい状態にすることができる。この後、S3によって書き換え電流電荷が与えられる。なお、スイッチS2をオンした後、スイッチS2がオフする前にスイッチS3をオンにすると、一時的に容量CS1と容量CS2が同時に負荷となるため、メモリセルが電荷を引き抜く動作が遅くなる。従って、プリパルスと書換えパルスが重複しないように制御すると容量CS1が負荷にならないためメモリセルは高速に容量CS2の電荷を引き抜くことが可能となる。従って、図20では、プレパルスと書換えパルスが連続していない。しかし、その間の時間を短く数ns程度すれば、プレパルスの効果は十分に得られる。なお、プレパルスと書換えパルスとが連続するようにスイッチS2,S3を制御しても良い。この場合、プレパルスでスピンを揺籃した効果が最大限に活用できる。なお、スイッチS2を書き込み中にオフ状態とすると容量CS1に容量CS2に蓄積した電荷の一部が残存することになるため、プレパルスと書換えパルスを連続させる場合は、スイッチS2は、書込みが終了した後にオフ状態とするのが良い。図21は、本発明の第3の実施例の他の構成例を示す図である。この例で特徴的であるのは、図17で説明したCSを、ビット線BLやソース線SLの寄生容量CB1やCB2で構成したことである。また、この寄生容量に予め充電を行う動作を実現するために、WEPで制御されるMOSトランジスタが設けられている。WEDによってビット線BL又はソース線SLの電位はVSへ放電される。これにより、MOSキャパシタやMIMキャパシタを形成する必要はなくなり、面積の低減をすることが出来る。なお、プリパルス動作を併用する場合は、容量CS1を寄生容量を用いて形成し、容量CS2をMOSキャパシタやMIMキャパシタを用いて形成すれば良い。この場合、スイッチは、図19のビット線と容量を接続するスイッチS3のみとなるため、プリパルス動作と書込み動作を連続して行うことになり、プリパルスでスピンを揺籃した効果を最大限に活用できる。図22に、図21の構成例の動作例を示す。これまで説明したものと同様の動作の後、WEPが高電位となる。これにより書き込みデータによって指定されたSLが充電される。この時このSLには寄生容量がある。この後、WEPを低電位に戻し、ワード線を選択し、またWEDを高電位とする。これにより、ソース線SLの寄生容量に蓄えられていた電荷がメモリセルに流れる。ソース線及びビット線の容量はメモリセルトランジスタの性能よりは、ばらつきが小さいので一定の電荷をメモリセルに流すことができる。図23は、本発明の実施例を実現するメモリセルアレーのレイアウト例である。メモリセルの面積は、ワード線あるいはビット線の配線ピッチを2Fとした場合8F2である。また、図24は図23のA-A‘間の断面図と周辺回路の断面図を示している。図25はB-B’間の断面図、C-C‘間の断面図を示している。メモリセルMCは、1つのnMOSトランジスタとトンネル磁気抵抗TMRからなる。ワード線WLはトランジスタのゲートGPに接続される。ゲート材料は、P型ポリシリコンやP型ポリシリコンの上部にシリサイドあるいは、タングステンWが積層され、低抵抗化されている。メモリセルトランジスタは、p型の半導体領域pWEL中に形成される。p型半導体領域pWELは、n型半導体領域DWELの中に形成され、このDWELはP-Sub上に形成される。nMOSトランジスタの拡散層LNの一方には、ソース線コンタクトSLCが配置される。ソース線コンタクトは、隣接するメモリセルMCと共有化して小面積化している。ソース線コンタクト上には、ワード線と直行する方向にソース線が配線される。ソースコンタクトが配置されない拡散層LPには、トンネル磁気抵抗TMRに接続される下部電極コンタクトBECが配置される。下部電極コンタクトBECはトンネル磁気抵抗が配置される下部電極BEに接続される。下部電極BE上には、複数の磁性体膜とトンネル膜からなるトンネル磁気抵抗TMRが配置される。トンネル磁気抵抗TMRには、少なくとも1層のトンネル膜TBとその両側に配置される固定層PLと自由層FLが含まれる。磁性体の固定層PLでは、内部の電子のスピンの向きが一定方向に固定されている。一方、磁性体の自由層FLでは、内部の電子のスピンの向きが固定層に対して平行反平行状態の2状態のいずれかの状態にある。本構成では、トンネル膜TBと下部電極の間に固定層PLが配置され、トンネル磁気抵抗TMRの上層に配線されるビット線BLとトンネル膜TBの間に自由層FLが配置される。ビット線は、ワード線と直交し、ソース線と平行に配線される。トンネル磁気抵抗TMRはビット線配線方向がワード線配線方向に比べて長い長方形あるいは、楕円形状になっている。これにより、縦横比の異なる形状にすることで、自由層の磁化を固定層PLに対して平行反平行状態以外の方向に磁化されにくい磁気的な異方性が現れ、自由層FLのスピン方向の保持特性がよくなる利点がある。図26は、本発明の第4の実施例を示したメモリセルアレーのレイアウト例である。図24に対応する部分のみを示している。本実施例の特徴は、下部電極BEの下方にワード線と平行に走るアシストワード線AWを配置したことである。このアシストワード線AWに電流を流すことによって磁界を発生することができ、TMR素子の動作に影響を与えることができる。図27は、図26の断面構造のメモリセルに対応する回路図として書いたものである。ワード線Wとアシストワード線AWは平行に配置されており、アシストワード線AWがこれに流れる電流によって発生する磁界でTMR素子T1に影響を与えることができることを矢印によって示している。この動作例としてAとBで示した例がある。すなわち、最初Aのようにアシストワード線のみオンさせて電流を流す。これによって実際は発生する磁界によって、T1内部のスピンの向きを変えやすい状態にすることができる。続くBの動作において今度はワード線Wをオンさせ、書き換え電流を流す。既にアシストワード線AWの動作によってスピンは反転しやすくなっているので、より少ない電流で書き換えを行えるのである。なお、アシストワード線に電流を流したのみでは、スピンは反転しやすい状態とはなるが、直に最初の状態に戻ってしまう。このような動作は図26の構造でなく他の方法で実現できる。これを本発明の第4の実施例の他の構成例として図28に示す。このように、ビット線BLと電流源i0との間にスイッチS2を設けた構成とすれば良い。この動作例を図29に示す。まずAに示すように、S2をオンし、電流i0を流す。これによってビット線BLには磁界が発生する。断面図である図24によれば、ビット線BLはTMR素子に接続されるように配置されている。よって、この磁界によってTMRの素子は影響を受け、スピンは反転しやすくなる。次に、BのようにスイッチS2をオフし、ワード線Wを活性化することにより書き換え電流i9を流す。Aの動作によってスピンは反転しやすくなっているので、より少ない電流で書き換えを行える。なお、Aの動作の後、スイッチS2をオフしたのみでは、直にTMRの素子は元の状態に戻ってしまう。以上、実施例に即して本発明を説明してきたが、本発明の要旨を逸脱しない限り種々の変更が可能である。"