"第1および第2の磁化状態を有するトンネル磁気抵抗素子と、前記トンネル磁気抵抗素子の一端に接続された信号線と、電流磁界またはスピン注入によって前記トンネル磁気抵抗素子を前記第1の磁化状態に初期設定するために、前記信号線に直流電流を流す駆動回路と、前記トンネル磁気抵抗素子に近接して設けられた電源配線とを備え、前記トンネル磁気抵抗素子は、前記電源配線に直流電流が流れるときに生じる電流磁界によって第2の磁化状態に変化し、さらに、前記トンネル磁気抵抗素子が前記第1の磁化状態から前記第2の磁化状態に変化したか否かを判定するために、前記信号線を介して前記トンネル磁気抵抗素子に流れる電流を検出するセンスアンプとを備えた、半導体装置。前記トンネル磁気抵抗素子と前記電源配線とは非接続である、請求項1に記載の半導体装置。前記半導体装置は、さらに、前記電源配線を介して電源電圧の供給を受け、動作状態と待機状態とを有する論理回路ブロックと、前記電源配線へ電源電圧を供給するか否かを切替える電源スイッチとを備え、前記電源スイッチがオン状態となって前記電源配線を介して前記論理回路ブロックに電源電圧が供給されるとともに前記論理回路ブロックが動作状態のときに、前記トンネル磁気抵抗素子は、前記電源配線に流れる直流電流による電流磁界によって前記第2の磁化状態になる、請求項1または2に記載の半導体装置。前記論理回路ブロックが待機状態のときに前記電源スイッチをオフ状態にして前記電源配線への電源電圧の供給を停止するパワーゲーティングを行なう制御部をさらに備え、前記制御部は、前記電源配線に対してパワーゲーティングを行なっていない複数回の判定期間において、各前記判定期間の最初に前記駆動回路を駆動することによって前記トンネル磁気抵抗素子を前記第1の磁化状態に初期設定し、前記センスアンプによって各前記判定期間内に前記トンネル磁気抵抗素子が前記第2の磁化状態に変化したか否かを検出し、前記制御部は、複数回の前記判定期間のうちで前記トンネル磁気抵抗素子が前記第1の磁化状態から前記第2の磁化状態に変化した回数の割合が所定の基準値以下の場合に、前記電源配線に対してパワーゲーティングを行なう、請求項3に記載の半導体装置。前記半導体装置は、前記電源配線の両端にそれぞれ接続された第1および第2のパッドをさらに備え、前記第1および第2のパッド間には、前記半導体装置の外部に設けられた外部直流電源および外部回路が接続される、請求項1または2に記載の半導体装置。通常、パワーゲーティングは、使用頻度の低い論理回路ブロックに対して実行される。しかしながら、いつ、どの論理回路ブロックの使用頻度が低いのかを推測するのが難しい場合がある。このようなときに、使用頻度の推測が実際と異なり、使用頻度が高いブロックで電源遮断が頻繁に行われると電源遮断とその復帰のための時間が費やされCPUの演算速度などの能力が低下するばかりか、かえって電力を消費してしまう。このため、論理回路ブロックの使用頻度を観測できるようにすることが望ましい。ここで、各論理回路ブロックの使用されたか否かは、各論理回路ブロックに電源電圧を供給する電源配線を流れる電流をモニタすることによって検出できる。この発明は、上記の点を考慮してなされたものであって、その目的は、直流電源配線に電流が流れたか否かを検出可能な回路を備えた半導体装置を提供することである。この発明の実施の一形態による半導体装置は、トンネル磁気抵抗素子と、信号線と、駆動回路と、電源配線と、センスアンプとを備える。トンネル磁気抵抗素子は、第1および第2の磁化状態を有する。信号線は、トンネル磁気抵抗素子の一端に接続されている。駆動回路は、電流磁界またはスピン注入によってトンネル磁気抵抗素子を第1の磁化状態に初期設定するために、信号線に直流電流を流す。電源配線は、トンネル磁気抵抗素子に近接して設けられる。ここで、トンネル磁気抵抗素子は、電源配線に直流電流が流れるときに生じる電流磁界によって第2の磁化状態に変化する。センスアンプは、トンネル磁気抵抗素子が第1の磁化状態から第2の磁化状態に変化したか否かを判定するために、信号線を介してトンネル磁気抵抗素子に流れる電流を検出する。上記の実施の形態によれば、トンネル磁気抵抗素子の磁化状態の変化をモニタすることによって、電源配線に直流電流が流れたか否かを検出することができる。なお、以下で具体的に説明するように、この発明は、メモリ装置としてMRAMを備えた半導体装置において、半導体装置に内蔵された論理回路ブロックに対してパワーゲーティング制御を行なうか否かを判定するために利用するのに適した構成となっているが、この発明が適用される分野は、このようなパワーゲーティング制御に限定されるものでない。電源配線に電流が流れたか否か、さらにはその発生頻度を検出するための手段として広く用いることができる。以下、この発明の実施の形態について図面を参照して詳しく説明する。なお、同一または相当する部分には同一の参照符号を付して、その説明を繰返さない。<実施の形態1>[半導体装置1の概略構成]図1は、この発明の実施の形態1による半導体装置1の構成を示すブロック図である。図1には半導体装置1の一例として基板SUB上に形成された1チップマイコンが示されている。半導体装置1は、中央処理装置CPU:CentralProcessingUnit2と、MRAM装置3と、機能モジュール4と、電源回路5と、電源制御回路6と、バス8コントロールバス、アドレスバス、およびデータバスとを含む。CPU2、MRAM装置3、機能モジュール4、および電源制御回路6は、バス8を介して相互に接続される。CPU2は、パワーゲーティングを含めた半導体装置1全体の制御を司る。MRAM装置3は、RAMRandomAccessMemoryおよびROMReadOnlyMemoryとして用いられる。電源回路5は、半導体装置1の各部分に供給する電源電圧VDDを生成する。なお、図1では、機能モジュール4へ電源電圧VDDを供給する電源配線7が代表的に示されている。機能モジュール4は、たとえば、入出力インターフェース回路やタイマ回路などである。機能モジュール4は、複数の論理回路ブロックに分割され、各論理回路ブロックは、インバータ、NAND、NOR、およびラッチ回路などのスタンダードセルの組合せによって構成されている。図1には、論理回路ブロックLCB1が代表として示されている。論理回路ブロックLCB1は、対応の電源配線DL1および接地ノードGNDと接続され、電源配線DL1を介して電源電圧の供給を受ける。なお、図1では図解を容易にするために、論理回路ブロックLCB1は、電源配線DL1および接地ノードGNDとそれぞれ1箇所で接続されているが、実際には多数の箇所で接続されている。電源配線DL1の両端は、PMOSPositivechannelMetalOxideSemiconductorトランジスタによって構成された電源スイッチMP1,MPB1を介在して、電源回路5から引き出された電源配線7に接続される。電源スイッチMP1,MPB1のオンオフによって電源配線DL1に対するパワーゲーティングが実行される。電源制御回路6は、CPU2の指令に基づいて、電源スイッチMP1,MPB1のオンオフを制御する制御信号PCNT1を出力する。さらに、電源制御回路6は、後述するように、論理回路ブロックの使用頻度を検出する機能を有する。[機能モジュール4の構成]図2は、図1の機能モジュール4の内部構成をより詳しく示した図である。1.論理回路ブロック、電源配線、制御信号線および電源スイッチ図2を参照して、機能モジュール4は、論理回路ブロックLCB1~LCB4と、電源配線DL1~DL4と、制御信号線CL1~CL4と、電源スイッチMP1~MP4,MPB1~MPB4とを含む。以下、これらの要素について総称する場合または不特定のものを示す場合には、論理回路ブロックLCB、電源配線DL、制御信号線CL、電源スイッチMP,MPBと記載する。論理回路ブロックLCB1~LCB4は、図2の場合、2行2列に配設されている。各論理回路ブロックLCBは、図1のCPU2からの指令に基づいて動作状態のときと、待機状態のときとを有する。論理回路ブロックLCBの個数は4個には限られない。電源配線DL1~DL4は、論理回路ブロックLCB1~LCB4にそれぞれ対応して設けられ、図2のX方向に延在するように配置される。なお、電源配線DLは、一般のMRAM装置では、メモリセル行の方向に設けられるディジット線に対応する。各論理回路ブロックLCBは、対応の電源配線DLと接続され、対応の電源配線DLを介して電源電圧VDDの供給を受ける。各論理回路ブロックLCBが動作状態のときには対応の電源配線DLに電流が流れるが、各論理回路ブロックLCBが待機状態のときには対応の電源配線DLに電流はほとんど流れない。なお、図2では図解を容易にするために、各電源配線DLは対応の論理回路ブロックLCBと1箇所のみで接続されているが、実際には多数箇所で接続される。各電源配線DLに対応してPMOSトランジスタで構成された1対の電源スイッチMP,MPBが設けられる。電源スイッチMPを構成するPMOSトランジスタのドレイン端子は対応の電源配線DLの一端に接続され、ソース端子は電源電圧VDDまたはVCCの供給を受ける。同様に電源スイッチMPBを構成するPMOSトランジスタのドレイン端子は対応の電源配線DLの他端に接続され、ソース端子は電源電圧VDDまたはVCCの供給を受ける。ここで、電源配線DL1~DL3の各々は、対応の電源スイッチMP,MPBを介して図1の電源配線7に接続されることによって、電源電圧VDDの供給を受ける。電源配線DL4は、対応の電源スイッチMP4,MPB4を介して半導体装置1の外部から電源電圧VCCの供給を受ける。制御信号線CL1~CL4は、電源配線DL1~DL4にそれぞれ対応して設けられる。各制御信号線CLは、対応の電源配線DLに沿って図2のX方向に延在するように配置される。各制御信号線CLは、対応の電源配線DLに接続された電源スイッチMP,MPBとしてのPMOSトランジスタのゲートに接続される。制御信号線CL1~CL4には、図1の電源制御回路6から制御信号PCNT1~PCNT4総称する場合または不特定のものを示す場合、制御信号PCNTと記載するがそれぞれ与えられる。制御信号PCNTによって対応の電源スイッチMP,MPBのオンオフが制御される。2.電源配線DLに流れる電流を検出するための構成図2の機能モジュール4は、さらに、トンネル磁気抵抗素子TMR1~TMR4,TMRB1~TMRB4と、アクセストランジスタMN1~MN4,MNB1~MNB4と、制御信号線BL0,BLB0,BL1,BLB1と、制御信号線WL0,WL1と、駆動回路BLDU0,BLDD0、BLBDU0,BLBDD0,BLDU1,BLDD1、BLBDU1,BLBDD1と、駆動回路WLD0,WLD1とを含む。以下、これらの要素について総称する場合または不特定のものを示す場合には、トンネル磁気抵抗素子TMR,TMRB、アクセストランジスタMN,MNB、制御信号線BL,BLB、制御信号線WL、駆動回路BLDU,BLDD,BLBDU,BLBDD、駆動回路WLDと記載する。各電源配線DLに対応して一対のトンネル磁気抵抗素子BL,BLBが設けられる。トンネル磁気抵抗素子TMR,TMRBは、対応する電源配線DLの両端寄りの位置で、対応の電源配線DLに接続された電源スイッチMP,MPBよりも内側に設けられる。具体的には、電源配線DL1の両端寄りにトンネル磁気抵抗素子TMR1,TMRB1が設けられ、電源配線DL2の両端寄りにトンネル磁気抵抗素子TMR2,TMRB2が設けられ、電源配線DL3の両端寄りにトンネル磁気抵抗素子TMR3,TMRB3が設けられ、電源配線DL4の両端寄りにトンネル磁気抵抗素子TMR4,TMRB4が設けられる。論理回路ブロックLCBが動作状態のときには、対応の電源配線DLを介して電流が流れることによって、対応のトンネル磁気抵抗素子TMR、TMRBの記憶データは、初期設定時の1,[0から0,1にそれぞれ書き換えられる。なお、トンネル磁気抵抗素子TMR,TMRBの記憶データを反転させるのに十分な駆動電流が対応の電源配線DLに流れるように、論理回路ブロックLCBの回路規模が決定される。アクセストランジスタMN1~MN4,MNB1~MNB4は、NMOSNegativechannelMetalOxideSemiconductorトランジスタによって構成され、トンネル磁気抵抗素子TMR1~TMR4,TMRB1~TMRB4の一端にそれぞれ接続される。すなわち、アクセストランジスタMN,MNBのドレインが、トンネル磁気抵抗素子TMR,TMRBの一端にそれぞれ接続され、ソースが接地ノードGNDに接続される。トンネル磁気抵抗素子TMR1とアクセストランジスタMN1とによって電流検出部CD1が構成され、トンネル磁気抵抗素子TMRB1とアクセストランジスタMNB1とによって、電流検出部CD1と対をなす電流検出部CDB1が構成される。電流検出部CD1,CDB1の各々は、一般のMRAM装置ではメモリセルに相当する。他のトンネル磁気抵抗素子TMR,TMRBおよびアクセストランジスタMN,MNBについても同様にメモリセルに相当する電流検出部が構成される。制御信号線BL0,BLB0,BL1,BLB1の各々は、図2のY方向に概ね延在して設けられるただし、図3~図5で後述するように、トンネル磁気抵抗素子TMR,TMRBの近傍ではX方向に沿うように屈曲する。制御信号線BLまたはTMRBは、Y方向に沿って配設されたトンネル磁気抵抗素子TMRまたはTMRBの一端に接続される。具体的に、制御信号線BL0は、Y方向に沿って配設されたトンネル磁気抵抗素子TMR1,TMR3の各一端アクセストランジスタMN1,MN3の反対側に接続される。制御信号線BLB0は、Y方向に沿って配設されたトンネル磁気抵抗素子TMRB1,TMRB3の各一端アクセストランジスタMNB1,MNB3の反対側に接続される。制御信号線BL1は、Y方向に沿って配設されたトンネル磁気抵抗素子TMR2,TMR4の各一端アクセストランジスタMN2,MN4の反対側に接続される。制御信号線BLB1は、Y方向に沿って配設されたトンネル磁気抵抗素子TMRB2,TMRB4の各一端アクセストランジスタMNB2,MNB4の反対側に接続される。制御信号線BL,BLBは、一般のMRAM装置ではビット線に対応するものである。後述するように、ビット線に相当する制御信号線BLまたはBLBに電流を流すことによって、近接して設けられたトンネル磁気抵抗素子TMRまたはTMRBの記憶データは、1および0にそれぞれ初期設定される。制御信号線WL0,WL1は、図2のX方向に延在して設けられ、X方向に沿って配設されたアクセストランジスタのゲートに接続される。具体的には、制御信号線WL0は、X方向に沿って配設されたアクセストランジスタMN1,MNB1,MN2,MNB2のゲートに接続される。制御信号線WL1は、X方向に沿って配設されたアクセストランジスタMN3、MNB3,MN4,MNB4のゲートに接続される。制御信号線WL0,WL1は、一般のMRAM装置ではワード線に対応するものである。駆動回路BLDU,BLDDは、図1の電源制御回路6からの指令に従って、一方が電流ソースCurrentSourceとして機能し、他方が電流シンクCurrentSinkとして機能する。具体的に、駆動回路BLDU0,BLDD0は制御信号線BL0の両端近傍に接続され、一方が電流ソースとして用いられ、他方が電流シンクとして用いられる。同様に、駆動回路BLBDU0,BLBDD0は制御信号線BLB0の両端近傍に接続され、一方が電流ソースとして用いられ、他方が電流シンクとして用いられる。駆動回路BLDU1,BLDD1は制御信号線BL1の両端近傍に接続され、一方が電流ソースとして用いられ、他方が電流シンクとして用いられる。駆動回路BLBDU1,BLBDD1は制御信号線BLB1の両端近傍に接続され、一方が電流ソースとして用いられ、他方が電流シンクとして用いられる。以上の構成によって、制御信号線BL0,BLB0,BL1,BLB1の各々について、図1の電源制御回路6からの指令に従って、制御信号線の一方端から他方端に向かう電流を流すことができる。駆動回路WLD0,WLD1は、制御信号線WL0,WL1にそれぞれ対応して設けられ、図1の電源制御回路6からの指令に従って、対応の制御信号線をHレベルに活性化する。制御信号線WL0がHレベルに活性化されることよって、制御信号線WL0に接続されたアクセストランジスタMN1,MNB1,MN2,MNB2は導通状態になる。同様に、制御信号線WL1がHレベルに活性化されることよって、制御信号線WL1に接続されたアクセストランジスタMN3,MNB3,MN4,MNB4は導通状態になる。3.トンネル磁気抵抗素子のデータ読出のための構成図2の機能モジュール4は、さらに、読出データ線RD,RDBと、NMOSトランジスタによって構成される選択トランジスタTS0,TSB0,TS1,TSB1と、読出データ線RD,RDBと接続されたセンスアンプSA:SenseAmplifier10とを含む。読出データ線RDは、選択トランジスタTS0を介して制御信号線BL0と接続され、選択トランジスタTS1を介して制御信号線BL1と接続される。読出データ線RDBは、選択トランジスタTSB0を介して制御信号線BLB0と接続され、選択トランジスタTSB1を介して制御信号線BLB1と接続される。選択トランジスタTS0,TSB0のゲートには、図1の電源制御回路6から出力された列選択信号CSL0が供給され、選択トランジスタTS1,TSB1のゲートには、電源制御回路6から出力された列選択信号CSL1が供給される。センスアンプ10は、図1の電源制御回路6によって選択された一対のトンネル磁気抵抗素子TMR,TMRBに流れる電流の差を検知増幅する。たとえば、トンネル磁気抵抗素子TMR1,TMRB1の書込データを検出する場合には、図1の電源制御回路6は、駆動回路WLD0によって制御信号線WL0をHレベル活性状態にするとともに、列選択信号CSL0をHレベル活性状態にすることによって選択トランジスタTS0,TS1をオン状態にする。図1の電源制御回路6は、この状態でセンスアンプ10を活性化する。これによって、センスアンプ10は一対のトンネル磁気抵抗素子TMR1,TMRB1に流れる電流の差を検出することができる。[トンネル磁気抵抗素子の詳細な構成]図3は、図2の論理回路ブロックLCB1とその周辺部を取り出して示した図である。なお、他の論理回路ブロックLCBとその周辺部も図3と同様の構成を有しており、以下ではこれらの代表として論理回路ブロックLCB1の周辺部の構成について説明する。図3を参照して、制御信号線BL0は対応するトンネル磁気抵抗素子TMR1,TMRB1の各々の近傍では電源配線DL1と平行になるように屈曲して配設されている。このため、トンネル磁気抵抗素子TMR1の近傍では、制御信号線BL0に流れる電流IBL0の方向と、電源スイッチMP1から電源配線DL1を通って論理回路ブロックLCB1に流れる電流IDL1の方向とは同じである。同様に、トンネル磁気抵抗素子TMRB1の近傍では、制御信号線BLB0に流れる電流IBLB0の方向と、電源スイッチMPB1から電源配線DL1を通って論理回路ブロックLCB1に流れる電流IDLB1の方向とは同じである。図4は、図3の電流検出部CD1の具体的構成を示す平面図である。図5は、図4のV-V線に沿った断面図である。電流検出部CDB1の構成は電流検出部CD1の構成と同じであるので、以下では、電流検出部CD1を代表として説明する。図4、図5を参照して、トンネル磁気抵抗素子TMR1は、電極ELと制御信号線BL0との間に積層された固定磁化膜FL、トンネル絶縁膜TBおよび自由磁化膜VLを含む。固定磁化膜FLおよび自由磁化膜VLの各々は、強磁性体膜で形成されている。固定磁化膜FLの磁化方向は一方の方向図5の場合、-Y方向に固定されている。自由磁化膜VLの磁化方向は、固定磁化膜FLの磁化方向と同一方向-Y方向および逆方向Y方向の2通りの方向をとり得る。±Y方向を磁化容易方向と称する。固定磁化膜FLおよび自由磁化膜VLの磁化方向が逆の場合第1の磁化状態とも称するは、両者の磁化方向が同じである場合第2の磁化状態とも称するに比べて、トンネル磁気抵抗素子TMRの電気抵抗値が高い値になる。トンネル磁気抵抗素子TMRの2段階の抵抗値は、たとえばデータ1および0にそれぞれ対応付けられる。この明細書では、電気抵抗値が高い場合のデータを1と定義し、電気抵抗値が低い場合のデータを0と定義する逆に定義してもよい。基板SUB上には、アクセストランジスタMN1を構成する不純物領域であるソース領域22とドレイン領域23とが形成される。ソース領域22とドレイン領域23との間のチャネル領域上にゲート酸化膜を介在してゲート電極21が形成される。ドレイン領域23は、コンタクトホールに形成された金属層2424A~24Dを介して電極ELと接続される。電源配線DL1は、トンネル磁気抵抗素子TMR1の直下の位置で、電極ELと間隔あけて配置される。X方向の電流図3の電流IDL1が電源配線DL1に流れることによって、自由磁化膜VLの磁化方向は-Y方向図4の磁化方向MG0になる。この結果、トンネル磁気抵抗素子TMR1の記憶データは0になる。一方、トンネル磁気抵抗素子TMR1近傍の制御信号線BL0にX方向の電流図3の電流IBL0が流れることによって、自由磁化膜VLの磁化方向はY方向図4の磁化方向MG1になる。この結果、トンネル磁気抵抗素子TMR1の記憶データは1になる。[電流検出方法]以下、上記で説明したトンネル磁気抵抗素子TMR,TMRBを用いて、電源配線DLに電流が流れたか否かを検出する方法について説明する。図6は、電源配線DLを流れる電流を検出する手順を示したフローチャートである。図2、図3、図6を参照して、初期状態ではパワーゲーティングは実行されておらず、電源スイッチMP,MPBはオン状態であるとする。まず、ステップS1で、図1の電源制御回路6はトンネル磁気抵抗素子TMR,TMRBの記憶データを初期設定する。具体的には、制御信号線BL0に接続された駆動回路BLDU0から駆動回路BLDD0の方向トンネル磁気抵抗素子TMR1,TMR3の近傍でX方向に駆動電流を流し、制御信号線BLB0に接続された駆動回路BLBDD0から駆動回路BLBDU0の方向トンネル磁気抵抗素子TMRB1,TMRB3の近傍で-X方向に駆動電流を流す。同様に、制御信号線BL1に接続された駆動回路BLDU1から駆動回路BLDD1の方向トンネル磁気抵抗素子TMR2,TMR4の近傍でX方向に駆動電流を流し、制御信号線BLB1に接続された駆動回路BLBDD1から駆動回路BLBDU1の方向トンネル磁気抵抗素子TMRB2,TMRB4の近傍で-X方向に駆動電流を流す。この結果、駆動電流によって生じた電流磁界によって、各一対のトンネル磁気抵抗素子TMR,TMRBのうちトンネル磁気抵抗素子TMRがデータ1に設定され、トンネル磁気抵抗素子TMRBがデータ0に設定される。次のステップS2で、図1の電源制御回路6は、所定の判定時間が経過したか否かを判断する。所定の判定期間が経過するまでの間、各論理回路ブロックLCBは、図1のCPU2の指令に従って動作中であるか、待機状態であるかのいずれかである。所定の判定時間が経過するとステップS2でYES、電源制御回路6は、センスアンプ10によって各トンネル磁気抵抗素子対TMR,TMRBの記憶データを順次読み出す。このとき、所定の判定期間の間に各論理回路ブロックLCBが1回でも動作状態になった場合には、対応するトンネル磁気抵抗素子TMRの近傍の電源配線DLにはX方向の電流が流れ、対応するトンネル磁気抵抗素子TMRBの近傍の電源配線DLBには-X方向の電流が流れる。この結果、トンネル磁気抵抗素子TMR,TMRBのデータが初期状態の1,[0]から0,1に変化する。次のステップS4で、図1の電源制御回路6は、上記のステップS1~S3を所定回数繰返したか否かを判定する。所定回数に達するまでの間の上記のステップS1~S3が繰返して実行される。所定回数に達した場合には、次のステップS5で、電源制御回路6は、所定回数の判定期間のうちで各トンネル磁気抵抗素子TMR,TMRBのデータが初期状態から変化した回数すなわち、各論理回路ブロックの使用頻度を計算する。次のステップS6で、図1のCPU2は、各論理回路ブロックについて、ステップS5で計算した所定回数すなわち論理回路ブロックの使用頻度が基準値以下であるか否かを判定する。CPU26は、使用頻度が基準値以下となる論理回路ブロックがあった場合には、その回路ブロックLCBに対してパワーゲーティングを実行するように、電源制御回路6に指令する。[効果]このように実施の形態1の半導体装置によれば、実際に各論理回路ブロックLCBを動作させた状態で各論理回路ブロックLCBの使用頻度に基づいてパワーゲーティングを行なうか否かを判定するために、論理回路ブロックの不要な電源遮断を減らし、効率的なパワーゲーティングを行なうことができる。図2の論理回路ブロックの場合には、論理回路ブロックLCB1~LCB3は電源電圧VDDで動作するが、論理回路ブロックLCB4は電源電圧VDDと異なる電源電圧VCCで動作する。この場合、電源電圧VCCが供給される電源配線DL4は、トンネル磁気抵抗素子TMR4,TMRB4とは電気的に分離されているので、トンネル磁気抵抗素子TMR4,TMRB4に初期データを書込むための回路およびトンネル磁気抵抗素子TMR4,TMRB4からデータを読み出すための回路は、他のトンネル磁気抵抗素子TMR,TMRB用の回路と同じ回路を使うことができる。<実施の形態2>実施の形態1では、各トンネル磁気抵抗素子TMR,TMRBにデータを初期設定するとき、制御信号線BL,BLBに流れる電流によって生じる電流磁界を利用していた。実施の形態2の半導体装置では、電流磁界に代えて、スピン注入方式によって各トンネル磁気抵抗素子TMR,TMRBにデータを初期設定する。以下、図7を参照して説明する。図7は、図2の機能モジュール4の変形例として、機能モジュール4Aの構成を示す図である。図7の機能モジュール4Aは、制御信号線BL0,BLB0,BL1,BLB1にそれぞれ沿って設けられたソース線SL0,SLB0,SL1,SLB1をさらに含む点で図2の機能モジュール4と異なる。ソース線SL0はアクセストランジスタMN1,MN3の各ソースと接続され、ソース線SLB0はアクセストランジスタMNB1,MNB3の各ソースと接続される。同様にソース線SL1はアクセストランジスタMN2,MN4の各ソースと接続され、ソース線SLB1はアクセストランジスタMNB2,MNB4の各ソースと接続される。さらに、図7の機能モジュール4Aは、駆動回路BLDU0,BLDD0、BLBDU0,BLBDD0,BLDU1,BLDD1、BLBDU1,BLBDD1に代えて、制御信号線BL0,BLB0,BL1,BLB1にそれぞれ接続された駆動回路BLD0,BLBD0,BLD1,BLBD1とソース線SL0,SLB0,SL1,SLB1にそれぞれ接続された駆動回路SLD0,SLBD0,SLD1,SLBD1を含む点で図2の機能モジュールと異なる。これらの駆動回路を総称する場合または不特定のものを示す場合、駆動回路BLD,BLBD,SLD,SLBDと記載する。駆動回路BLD,SLDは、一方が電流ソースCurrentSourceとして機能し、他方が電流シンクCurrentSinkとして機能する。駆動回路BLBD,SLBDは、一方が電流ソースとして機能し、他方が電流シンクとして機能する。トンネル磁気抵抗素子TMR,TMRBのデータをそれぞれ1および0に初期設定する場合には、スピン注入方式によって行なう。すなわち、トンネル磁気抵抗素子TMRに初期データ1を書込む場合には、固定磁化膜FLから自由磁化膜VLの方向に電流を流す電子は、自由磁化膜VLから固定磁化膜FLの方向に流れる。トンネル磁気抵抗素子TMRの構成が図4、図5と同様であるとすると、この場合、駆動回路SLDを電流ソースとして動作させ、駆動回路BLDを電流シンクとして動作させることになる。同様に、トンネル磁気抵抗素子TMRBに初期データ0を書込む場合には、自由磁化膜VLから固定磁化膜FLの方向に電流を流す電子は、固定磁化膜FLから自由磁化膜VLの方向に流れる。この場合、駆動回路BLBDを電流ソースとして動作させ、駆動回路SLBDを電流シンクとして動作させることになる。上記のように電流磁界ではなくスピン注入を用いてトンネル磁気抵抗素子TMR,TMRBの磁化方向を初期設定する場合には、図3、図4の場合とは異なり、制御信号線BL,BLBをトンネル磁気抵抗素子TMR,TMRBの近傍で屈曲させる必要はない。図7のその他の構成は実施の形態1図2~図6で説明したとおりであるので、同一または相当する部分には同一の参照符号を付して説明を繰り返さない。<実施の形態3>図8は、図2の機能モジュール4の他の変形例として、機能モジュール4Bの構成を示す図である。図9は、図8の電流検出部CD5,CDB5とこれらの周辺部を取り出して示した図である。図8、図9を参照して、機能モジュール4Bは、電源配線DL5,DLB5と、パッドPD0,PD1と、トンネル磁気抵抗素子TMR5,TMR5Bと、NMOSトランジスタで構成されるアクセストランジスタMN5,MNB5と、制御信号線WL2と、駆動回路WLD2とをさらに含む点で、図2の機能モジュール4と異なる。電源配線DL5,DLB5の一端は互いに接続され、他端はパッドPD0,PD1にそれぞれ接続される。すなわち、電源配線DL5,DLB5を1本の電源配線と見れば、その両端にパッドPD0,PD1が接続されていることになる。パッドPD0,PD1の間には、半導体装置1の外部に設けられたスイッチ41、直流電源42、および外部回路43が直列に接続される。トンネル磁気抵抗素子TMR5,TMR5Bは、電源配線DL5,DLB5の近傍にそれぞれ設けられる。トンネル磁気抵抗素子TMR5の一端は制御信号線BL0に接続され、他端はアクセストランジスタMN5のドレインに接続される。アクセストランジスタMN5のソースは接地ノードGNDに接続される。トンネル磁気抵抗素子TMRB5の一端は制御信号線BLB0に接続され、他端はアクセストランジスタMNB5のドレインに接続される。アクセストランジスタMNB5のソースは接地ノードGNDに接続される。制御信号線WL2は、アクセストランジスタMN5,MNB5のゲートに接続される。駆動回路WLD2によって制御信号線WL2がHレベルに活性化されると、アクセストランジスタMN5,MNB5はオン状態になる。図8、図9のその他の点は実施の形態1の場合と同様であるので、同一または相当する部分には同一の参照符号を付して説明を繰返さない。なお、図9に示すように、制御信号線BL0は、磁気抵抗素子TMR5の近傍で電源配線DL5と同一方向になるように屈曲し、制御信号線BLB0は、磁気抵抗素子TMRB5の近傍で電源配線DLB5と同一方向になるように屈曲している。以上の構成によれば、外部回路43の使用頻度を検出することができる。具体的には次の手順による。まず、複数の判定期間を設定し、各判定期間の最初に、図1の電源制御回路6は、駆動回路BLDU0を電流ソースとして駆動することによってトンネル磁気抵抗素子TMR5にデータ1を初期設定するとともに、駆動回路BLBDD0を電流ソースとして駆動することによってトンネル磁気抵抗素子TMRB5にデータ0を初期設定する。次に、各判定期間の最後に、電源制御回路6は、センスアンプ10によってトンネル磁気抵抗素子対のTMR5,TMRB5の記憶データを検出する。複数の判定期間の全てにおいて上記の動作が実行された後、図1の電源制御回路6は、複数回の判定期間のうちで、トンネル磁気抵抗素子TMR5,TMRB5のデータが0,1に変化した回数の比率すなわち、外部回路43の使用頻度を算出する。今回開示された実施の形態はすべての点で例示であって制限的なものでないと考えられるべきである。この発明の範囲は上記した説明ではなくて請求の範囲によって示され、請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。"