(57)【要約】【課題】効率的かつ安定的にプログラム情報を記憶することができる薄膜磁性体記憶装置の構成を提供する。【解決手段】プログラムセルおよびメモリセルの各々は、共に同じ磁気記憶部を含み、プログラムセルは、さらに状態変化部を含む。したがって、プログラムセルは、メモリセルと同様の構造にさらに状態変化部を付加した構成である。すなわち磁気記憶部等についてはメモリセルと同様の設計が可能であり、効率的なプログラムセルを設けることができる。また、状態変化部は電気的な変化に基づいて固定的な状態へ変化する。したがって、状態変化部は、磁気ノイズ等によってプログラム情報が書換えられることはなく、安定的にプログラム情報を記憶することができる。【選択図】　　　　図８
2004110992.tif 000002
【特許請求の範囲】
【請求項１】
各々が磁気的にデータ記憶を実行する複数のメモリセルと、
前記複数のメモリセルに対して用いられるプログラム情報を記憶するためのプログラムセルを備え、
前記プログラムセルおよび各前記メモリセルの各々は、データ書込電流に応じた磁化方向によって異なる電気抵抗値を有する磁気記憶部を含み、
前記プログラムセルは、外部からのアクセス指示に応答して第１の状態から第２の状態の電気抵抗値に固定的に変化する状態変化部をさらに含む、薄膜磁性体記憶装置。
【請求項２】
前記プログラムセルは、
前記磁気記憶部と固定電圧との間の電気的な接続を制御する第１のアクセス素子と、
前記状態変化部と所定電圧との間の電気的な接続を制御する第２のアクセス素子と、
前記第１および第２のアクセス素子と前記磁気記憶部とを電気的に結合する導体配線とを含み、
前記導体配線の第１の領域は、前記第１のアクセス素子と前記磁気記憶部とを電気的に結合し、
前記導体配線の第２の領域は、前記第１のアクセス素子と第２のアクセス素子とを電気的に結合し、
前記導体配線の第２の領域は、前記状態変化部を構成する、請求項１記載の薄膜磁性体記憶装置。
【請求項３】
前記第２のアクセス素子は、外部からの前記アクセス指示に応答して前記所定電圧と前記固定電圧との間の前記状態記憶部の電気的な接続を制御する、請求項２記載の薄膜磁性体記憶装置。
【請求項４】
前記プログラムセルは、前記磁気記憶部および前記状態変化部の接続ノードと固定電圧との間に設けられるアクセス素子をさらに含む、請求項１記載の薄膜磁性体記憶装置。
【請求項５】
複数個の前記プログラムセルをさらに備え、
前記複数個のプログラムセルは、行列状に配置され、
前記薄膜磁性体記憶装置は、
列にそれぞれ対応して設けられた複数のビット線と、
前記複数のビット線にそれぞれ対応して設けられ、各々が書込データに応じて対応するビット線にデータ書込電流を供給する複数の書込ドライバと、
データ書込時に、前記複数の書込ドライバのうちの少なくとも２つに対して前記書込データをそれぞれ並列に出力する制御回路とをさらに備える、請求項１記載の薄膜磁性体記憶装置。
【請求項６】
各々が磁気的にデータ記憶を実行する複数のメモリセルと、
前記複数のメモリセルに対して用いられるプログラム情報を記憶するプログラムセルとを備え、
前記プログラムセルは、
外部からのアクセス指示および印加磁界のいずれか一方にそれぞれ応答して電気抵抗が変化する複数の状態変化部と、
データ読出時にデータ読出電流が供給されるノードに対して各前記状態変化部を互いに直列に接続するアクセス素子とを含む、薄膜磁性体記憶装置。
【請求項７】
各前記メモリセルは、磁化方向によって電気抵抗が変化する磁気記憶部を含み、
前記複数の状態変化部の少なくとも１つは、前記磁気記憶部で構成される、請求項６記載の薄膜磁性体記憶装置。
【請求項８】
各々が磁気的にデータ記憶を実行する複数のメモリセルと、
前記複数のメモリセルに対して用いられるプログラム情報を記憶するプログラムセルとを備え、
前記プログラムセルは、
外部からのアクセス指示および印加磁界のいずれか一方にそれぞれ応答して電気抵抗が変化する複数の状態変化部と、
各前記状態変化部に対応して設けられ固定電圧と所定電圧との間の電気的な接続を制御するアクセス素子とを含み、
前記複数の状態変化部は、前記プログラム情報を構成する複数のプログラムデータにそれぞれ対応して設けられ、
前記複数の状態変化部のそれぞれは互いに異なる電気抵抗値に設定される、薄膜磁性体記憶装置。
【請求項９】
前記複数の状態変化部は、複数ビットの前記プログラム情報を記憶する、請求項８記載の薄膜磁性体記憶装置。
【請求項１０】
前記複数の状態変化部のうちのいずれか１つは、前記印加磁界に応じて可逆的に状態が変化する特性を有する、請求項８記載の薄膜磁性体記憶装置。
【請求項１１】
各々が磁気的にデータ記憶を実行する複数のメモリセルと、
前記複数のメモリセルに対して用いられるプログラム情報を構成する第１および第２のプログラムデータを記憶するプログラムユニットとを備え、
前記プログラムユニットは、
各々が、互いに異なる電気抵抗を有する第１および第２のプログラムセルを含み、
前記第１および第２のプログラムセルの各々は、
データ書込電流に応じた磁化方向によって異なる電気抵抗値を有する磁気記憶部と、
外部からのアクセス指示に応答して第１の状態から第２の状態の電気抵抗値に固定的に変化する状態変化部とを有する、薄膜磁性体記憶装置。
【請求項１２】
前記第１および第２のプログラムセルの前記磁気記憶部の各々は、前記第１のプログラムデータに応じて互いに異なる方向の前記データ書込電流が供給される、請求項１１記載の薄膜磁性体記憶装置。
【請求項１３】
前記第１および第２のプログラムセルの前記状態変化部のいずれか一方の電気抵抗値は、前記第２のプログラムデータに応じて前記第１の状態から前記第２の状態の電気抵抗値に変化する、請求項１１記載の薄膜磁性体記憶装置。
【請求項１４】
前記第１および第２のプログラムセルは、データ読出において、各々が有する前記磁気記憶部および前記状態変化部の少なくとも一方の電気抵抗に応じた第１および第２のプログラム信号をそれぞれ出力し、
前記プログラムユニットは、前記第１および第２のプログラムセルに対応して設けられ、前記第１および第２のプログラム信号を保持するデータラッチ回路をさらに含み、
前記データ読出は、前記薄膜磁性体記憶装置の電源起動時に応答して実行され、
前記データラッチ回路は、前記電源が起動されてから遮断されるまでの期間前記第１および第２のプログラム信号を保持する、請求項１１記載の薄膜磁性体記憶装置。
【請求項１５】
各々が磁気的にデータ記憶を実行する複数のメモリセルと、
前記複数のメモリセルに対して用いられるプログラム情報を記憶するプログラムユニットとを備え、
前記プログラムユニットは、
少なくとも１個のプログラムセルを含み、
各前記プログラムセルは、
データ書込電流に応じた磁化方向によって異なる電気抵抗値を有する磁気記憶部と、
外部からのアクセス指示に応答して第１の状態から第２の状態の電気抵抗値に固定的に変化する状態変化部とを有し、
各前記プログラムセルに対応して共通に設けられ、データ読出時に選択的に前記プログラムセルの前記磁気記憶部および前記状態変化部の少なくとも一方に基づいて出力されるプログラム信号を増幅する増幅回路をさらに含む、薄膜磁性体記憶装置。
【請求項１６】
複数の回路ブロック間の信号伝送経路を設定する複数のスイッチ部と、
前記複数のスイッチ部にそれぞれ対応して設けられ、対応するスイッチ部を制御する複数のスイッチ制御部とを備え、
前記スイッチ制御部は、各々が、不揮発的な電気抵抗を有する第１および第２のプログラムセルを含み、
前記スイッチ制御部は、前記第１および第２のプログラムセルの電気抵抗に基づくデータ信号により対応するスイッチ部を制御する、薄膜磁性体記憶装置。
【請求項１７】
前記第１および第２のプログラムセルに対応して設けられ、データ読出時に前記第１および第２のプログラムセルの電気抵抗にそれぞれ対応して生成される第１および第２のプログラム信号を保持するためのデータラッチ回路をさらに備える、請求項１６記載の薄膜磁性体記憶装置。
【請求項１８】
前記第１および第２のプログラムセルの各々は、
データ書込電流に応じた磁化方向によって異なる電気抵抗値を有する磁気記憶部と、
外部からのアクセス指示に応答して第１の状態から第２の状態の電気抵抗値に固定的に変化する状態変化部とを有する、請求項１６記載の薄膜磁性体記憶装置。
【請求項１９】
前記複数のスイッチ部は、設計変更が可能なゲートアレイ（ＦＰＧＡ）の前記信号伝送経路を設定する、請求項１６記載の薄膜磁性体記憶装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、薄膜磁性体記憶装置に関し、より特定的には、磁気トンネル接合（ＭＴＪ：Ｍａｇｎｅｔｉｃ　Ｔｕｎｎｅｌ　Ｊｕｎｃｔｉｏｎ）を有するメモリセル（以下、単にＭＴＪメモリセルとも称する）を備えた薄膜磁性体記憶装置に関する。
【０００２】
【従来の技術】
近年、新世代の不揮発性記憶装置として、ＭＲＡＭ（Ｍａｇｎｅｔｉｃ　Ｒａｎｄｏｍ　ＡｃｃｅｓｓＭｅｍｏｒｙ）デバイスが注目されている。ＭＲＡＭデバイスは、半導体集積回路に形成された複数の薄膜磁性体を用いて不揮発的なデータ記憶を行ない、薄膜磁性体の各々に対してランダムアクセスが可能な不揮発性記憶装置である。
【０００３】
特に、近年では磁気トンネル接合を利用した薄膜磁性体をメモリセルとして用いることによって、ＭＲＡＭデバイスの性能が飛躍的に進歩することが発表されている。（例えば、非特許文献１参照）。
【０００４】
一方、メモリデバイスにおいては、内部に不揮発的に記憶されたプログラム情報に基づいて、データ読出、データ書込の通常動作やテスト動作等を実行する構成が一般的である。通常動作については、代表的には余分に配置されたスペアメモリセルを用いて欠陥メモリセルを置換救済するための冗長構成の制限に用いられる情報が、プログラム情報として記憶される。
【０００５】
テスト動作については、代表的には内部でデータ書込や読出のテストを実行するいわゆるビルトインセルフテスト（ＢＩＳＴ）に用いられるデータがプログラム情報として記憶される。米国特許６３４７０５６Ｂ１号公報にはＢＩＳＴに用いるプログラム情報をＭＴＪメモリセルを用いて記憶する構成が開示されている。
【０００６】
従来のメモリデバイスでは、プログラム情報は、レーザ入力等によるヒューズ素子の切断（ブロー）によってプログラムされる構成がとられていた。このような構成では、レーザブロー専用のトリミング装置等の特別な機器を必要とするので、プログラム処理に費やす時間やコストが大きくなっていた。また、このようなプログラム処理は、ウェハ状態で一般的に実行されるため、たとえばウェハ状態で検出された欠陥メモリセルに対応する不良アドレスをプログラム後、パッケージ封入されて製品化されたメモリデバイスにおいては、そこで出現した不良に対応することが困難であり、歩留りの低下を招いていた。
【０００７】
さらに大容量のプログラム情報をプログラムする場合においてはヒューズ素子等を多数設ける必要があり、当該プログラム情報を記憶する回路帯の面積が増大するという問題があった。
【０００８】
上述したＭＴＪメモリセルは、書換え可能な不揮発なデータ記憶が可能でありさらに集積度の高い素子であるため大容量のプログラム情報を小面積で記憶することが可能である。米国特許第６３２４０９３Ｂ１号公報には、ＭＴＪメモリセルの磁性体記憶素子を破壊することにより不揮発的なデータ記憶を実行する構成が開示されている。また、特開２００１−２１７３９８号公報には１つのメモリセル分の面積で多値情報を記憶することにより大容量の情報を小面積で記憶する構成が開示されている。
【０００９】
【特許文献１】米国特許第６３４７０５６号公報（第２−３頁、第１図）
【００１０】
【特許文献２】米国特許第６３２４０９３号公報（第３−４頁、第２ａ，２ｂ図）
【００１１】
【特許文献３】特開２００１−２１７３９８号公報（第７−８頁、第１図）
【００１２】
【非特許文献１】
ロイ・ショイアーライン（Ｒｏｙ　Ｓｃｈｅｕｅｒｌｉｎｅ）他６名、“各セルにＦＥＴスイッチおよび磁気トンネル接合を用いた、１０ｎｓ読出・書込の不揮発メモリアレイ（Ａ　１０ｎｓ　Ｒｅａｄ　ａｎｄ　Ｗｒｉｔｅ　Ｎｏｎ−Ｖｏｌａｔｉｌｅ　Ｍｅｍｏｒｙ　Ａｒｒａｙ　Ｕｓｉｎｇ　ａ　Ｍａｇｎｅｔｉｃ　ＴｕｎｎｅｌＪｕｎｃｔｉｏｎ　ａｎｄ　ＦＥＴ　Ｓｗｉｔｃｈ　ｉｎ　ｅａｃｈ　Ｃｅｌｌ）”，（米国），２０００年米国電気電子学会国際固体回路会議・技術論文集ＴＡ７．２（２０００　ＩＥＥＥ　ＩＳＳＣＣ　Ｄｉｇｅｓｔ　ｏｆ　Ｔｅｃｈｎｉｃａｌ　Ｐａｐｅｒｓ，　ＴＡ７．２），ｐ．１２８−１２９
【００１３】
【発明が解決しようとする課題】
しかしながら、上述したＭＴＪメモリセルは、磁化方向によって電気抵抗が変化する薄膜磁性体の特性を利用した記憶素子であるため磁気ノイズ等によって一旦プログラムしたデータが書替えられるすなわちプログラム情報が消失してしまうという問題がある。
【００１４】
この発明はこのような問題点を解決するためになされたものであってこの発明の目的は、通常のメモリセルに含まれるのと同様の磁性体記憶素子を用いて効率的かつ安定的にプログラム情報を記憶することができる薄膜磁性体記憶装置の構成を提供することである。
【００１５】
【課題を解決するための手段】
本発明のある局面に従う薄膜磁性体記憶装置は、複数のメモリセルと、プログラムセルとを含む。複数のメモリセルは、各々が磁気的にデータ記憶を実行する。プログラムセルは、複数のメモリセルに対して用いられるプログラム情報を記憶する。プログラムセルおよび各メモリセルの各々は、データ書込電流に応じた磁化方向によって異なる電気抵抗値を有する磁気記憶部を含む。また、プログラムセルは、外部からのアクセス指示に応答して第１の状態から第２の状態の電気抵抗値に固定的に変化する状態変化部をさらに含む。
【００１６】
本発明の別の局面に従う薄膜磁性体記憶装置は、複数のメモリセルと、プログラムセルとを含む。複数のメモリセルは、各々が磁気的にデータ記憶を実行する。プログラムセルは、複数のメモリセルに対して用いられるプログラム情報を記憶する。プログラムセルは、複数の状態変化部と、アクセス素子とを含む。複数の状態変化部は、外部からのアクセス指示および印加磁界のいずれか一方にそれぞれ応答して電気抵抗が変化する。アクセス素子は、各状態変化部に対応して設けられ固定電圧と所定電圧との間の電気的な接続を制御する。また、複数の状態変化部は、プログラム情報を構成する複数のプログラムデータにそれぞれ対応して設けられ、複数の状態変化部のそれぞれは互いに異なる電気抵抗値に設定される。
【００１７】
本発明のさらに別の局面に従う薄膜磁性体記憶装置は、各々が磁気的にデータ記憶を実行する複数のメモリセルと、プログラムユニットとを含む。プログラムユニットは、複数のメモリセルに対して用いられるプログラム情報を構成する第１および第２のプログラムデータを記憶する。また、プログラムユニットは、各々が、互いに異なる電気抵抗を有する第１および第２のプログラムセルを含む。第１および第２のプログラムセルの各々は、磁気記憶部と、状態変化部とを有する。磁気記憶部は、データ書込電流に応じた磁化方向によって異なる電気抵抗値を有する。状態変化部は、外部からのアクセス指示に応答して第１の状態から第２の状態の電気抵抗値に固定的に変化する。
【００１８】
本発明のさらに別の局面に従う薄膜磁性体記憶装置は、各々が磁気的にデータ記憶を実行する複数のメモリセルと、プログラムユニットとを含む。プログラムユニットは、複数のメモリセルに対して用いられるプログラム情報を記憶する。また、プログラムユニットは、少なくとも１個のプログラムセルと増幅回路とを含む。各プログラムセルは、磁気記憶部と、状態変化部とを有する。磁気記憶部は、データ書込電流に応じた磁化方向によって異なる電気抵抗値を有する。状態変化部は、外部からのアクセス指示に応答して第１の状態から第２の状態の電気抵抗値に固定的に変化する。増幅回路は、各プログラムセルに対応して共通に設けられ、データ読出時に選択的にプログラムセルの磁気記憶部および状態変化部の少なくとも一方に基づいて出力されるプログラム信号を増幅する。
【００１９】
本発明のさらに別の局面に従う薄膜磁性体記憶装置は、複数のスイッチ部と、複数乃スイッチ制御部とを含む。複数のスイッチ部は、複数の回路ブロック間の信号伝送経路を設定する。複数のスイッチ制御部は、複数のスイッチ部にそれぞれ対応して設けられ、対応するスイッチ部を制御する。スイッチ制御部は、各々が、不揮発的な電気抵抗を有する第１および第２のプログラムセルを含む。また、スイッチ制御部は、第１および第２のプログラムセルの電気抵抗に基づくデータ信号により対応するスイッチ部を制御する。
【００２０】
【発明の実施の形態】
本発明の実施の形態について図面を参照しながら詳細に説明する。なお、図中同一または相当部分には同一符号を付しその説明は繰返さない。
【００２１】
（実施の形態１）
図１は、本発明の実施の形態に従うＭＲＡＭデバイス１の全体構成を示す概略ブロック図である。
【００２２】
図１を参照して、ＭＲＡＭデバイス１は、外部からの制御信号ＣＭＤおよびアドレス信号ＡＤＤに応じてランダムアクセスを実行し、書込データＤＩＮの入力および読出データＤＯＵＴの出力を実行する。
【００２３】
ＭＲＡＭデバイス１は、制御信号ＣＭＤに応答してＭＲＡＭデバイス１の全体動作を制御するためのコントロール回路５と、行列状に配列された複数のＭＴＪメモリセルを有するメモリアレイ１０とを備える。メモリアレイ１０は、アドレス信号ＡＤＤによって各々指定可能な行列状に配列された複数の正規のＭＴＪメモリセルと、欠陥が生じた正規メモリセルを救済するためのスペアメモリセル（図示せず）とを含む。メモリアレイ１０は、メモリセル行にそれぞれ対応して設けられる複数のワード線、複数のデジット線および複数のソース線と、メモリセル列にそれぞれ代表して設けられる複数のビット線とが配置される。
【００２４】
図１においては、メモリアレイ１０において１つのメモリセルＭＣが示され、メモリセルＭＣの行に対応してワード線ＲＷＬとデジット線ＤＬとソース線ＳＬとがそれぞれ１本ずつ示されている。また、メモリセルＭＣの列に対応してビット線ＢＬが示されている。
【００２５】
図２は、磁気トンネル接合部を有するＭＴＪメモリセルＭＣ（以下、単にメモリセルＭＣとも称する）の構成を示す概略図である。
【００２６】
図２を参照して、メモリセルＭＣは、磁気的に書込まれた記憶データのデータレベルに応じて電気抵抗が変化するトンネル磁気抵抗素子ＴＭＲと、アクセストランジスタＡＴＲとを含む。アクセストランジスタＡＴＲは、ビット線ＢＬおよびソース線ＳＬの間に、トンネル磁気抵抗素子ＴＭＲと直列に接続される。代表的には、アクセストランジスタＡＴＲとして、半導体基板上に形成された電界効果型トランジスタが適用される。
【００２７】
メモリセルＭＣに対しては、データ書込時に異なった方向のデータ書込電流をそれぞれ流すためのビット線ＢＬおよびデジット線ＤＬと、データ読出を指示するためのワード線ＲＷＬと、データ読出時にトンネル磁気抵抗素子ＴＭＲを接地電圧ＧＮＤにプルダウンするためのソース線ＳＬとが設けられる。データ読出時においては、アクセストランジスタＡＴＲのターンオンに応答して、トンネル磁気抵抗素子ＴＭＲは、ソース線ＳＬおよびビット線ＢＬの間に電気的に結合される。
【００２８】
図３は、メモリセルＭＣに対するデータ書込動作を説明する概念図である。
図３を参照して、トンネル磁気抵抗素子ＴＭＲは、固定された一定の磁化方向を有する強磁性体層（以下、単に「固定磁化層」とも称する）ＦＬと、外部からの印加磁界に応じた方向に磁化される強磁性体層（以下、単に「自由磁化層」とも称する）ＶＬとを有する。固定磁化層ＦＬおよび自由磁化層ＶＬの間には、絶縁体膜で形成されるトンネルバリア（トンネル膜）ＴＢが設けられる。自由磁化層ＶＬは、書込まれる記憶データのレベルに応じて、固定磁化層ＦＬと同一方向または固定磁化層ＦＬと反対方向に磁化される。これらの固定磁化層ＦＬ、トンネルバリアＴＢおよび自由磁化層ＶＬによって、磁気トンネル接合が形成される。
【００２９】
トンネル磁気抵抗素子ＴＭＲの電気抵抗は、固定磁化層ＦＬおよび自由磁化層ＶＬのそれぞれの磁化方向の相対関係に応じて変化する。具体的には、トンネル磁気抵抗素子ＴＭＲの電気抵抗は、固定磁化層ＦＬの磁化方向と自由磁化層ＶＬの磁化方向とが同じ（平行）である場合に最小値Ｒｍｉｎとなり、両者の磁化方向が反対（反平行）方向である場合に最大値Ｒｍａｘとなる。
【００３０】
データ書込時においては、ワード線ＲＷＬが非活性化されて、アクセストランジスタＡＴＲはターンオフされる。この状態で、自由磁化層ＶＬを磁化するためのデータ書込電流は、ビット線ＢＬおよびデジット線ＤＬのそれぞれにおいて、書込データのレベルに応じた方向に流される。
【００３１】
図４は、データ書込時におけるデータ書込電流とトンネル磁気抵抗素子の磁化方向との関連を示す概念図である。
【００３２】
図４を参照して、横軸Ｈ（ＥＡ）は、トンネル磁気抵抗素子ＴＭＲ内の自由磁化層ＶＬにおいて磁化容易軸（ＥＡ：Ｅａｓｙ　Ａｘｉｓ）方向に印加される磁界を示す。一方、縦軸Ｈ（ＨＡ）は、自由磁化層ＶＬにおいて磁化困難軸（ＨＡ：Ｈａｒｄ　Ａｘｉｓ）方向に作用する磁界を示す。磁界Ｈ（ＥＡ）およびＨ（ＨＡ）は、ビット線ＢＬおよびデジット線ＤＬをそれぞれ流れる電流によって生じる２つの磁界の一方ずつにそれぞれ対応する。
【００３３】
メモリセルＭＣにおいては、固定磁化層ＦＬの固定された磁化方向は、自由磁化層ＶＬの磁化容易軸に沿っており、自由磁化層ＶＬは、記憶データのレベル（“１”および“０”）に応じて、磁化容易軸方向に沿って、固定磁化層ＦＬと平行あるいは反平行（反対）方向に磁化される。メモリセルＭＣは、自由磁化層ＶＬの２通りの磁化方向と対応させて、１ビットのデータ（“１”および“０”）を記憶することができる。
【００３４】
自由磁化層ＶＬの磁化方向は、印加される磁界Ｈ（ＥＡ）およびＨ（ＨＡ）の和が、図４に示されるアステロイド特性線の外側の領域に達する場合においてのみ新たに書換えることができる。すなわち、印加されたデータ書込磁界がアステロイド特性線の内側の領域に相当する強度である場合には、自由磁化層ＶＬの磁化方向は変化しない。
【００３５】
アステロイド特性線に示されるように、自由磁化層ＶＬに対して磁化困難軸方向の磁界を印加することによって、磁化容易軸に沿った磁化方向を変化させるのに必要な磁化しきい値を下げることができる。図４に示した例のようにデータ書込時の動作点を設計した場合には、データ書込対象であるメモリセルＭＣにおいて、磁化容易軸方向のデータ書込磁界は、その強度がＨＷＲとなるように設計される。すなわち、このデータ書込磁界ＨＷＲが得られるように、ビット線ＢＬまたはデジット線ＤＬを流されるデータ書込電流の値が設計される。一般的に、データ書込磁界ＨＷＲは、磁化方向の切換えに必要なスイッチング磁界ＨＳＷと、マージン分ΔＨとの和で示される。すなわち、ＨＷＲ＝ＨＳＷ＋ΔＨで示される。
【００３６】
メモリセルＭＣの記憶データ、すなわちトンネル磁気抵抗素子ＴＭＲの磁化方向を書換えるためには、デジット線ＤＬとビット線ＢＬとの両方に所定レベル以上のデータ書込電流を流す必要がある。これにより、トンネル磁気抵抗素子ＴＭＲ中の自由磁化層ＶＬは、磁化容易軸（ＥＡ）に沿ったデータ書込磁界の向きに応じて、固定磁化層ＦＬと平行もしくは、反対（反平行）方向に磁化される。トンネル磁気抵抗素子ＴＭＲに一旦書込まれた磁化方向、すなわちメモリセルＭＣの記憶データは、新たなデータ書込が実行されるまでの間不揮発的に保持される。
【００３７】
図５は、メモリセルＭＣからのデータ読出動作を説明する概念図である。
図５を参照して、データ読出動作時においては、アクセストランジスタＡＴＲは、ワード線ＲＷＬの活性化に応答してターンオンする。これにより、トンネル磁気抵抗素子ＴＭＲは、接地電圧ＧＮＤへプルダウンされた状態でビット線ＢＬと電気的に結合される。
【００３８】
この状態で、ビット線ＢＬを所定電圧へプルアップすれば、ビット線ＢＬおよびトンネル磁気抵抗素子ＴＭＲを含む電流経路を、トンネル磁気抵抗素子ＴＭＲの電気抵抗に応じた、すなわちメモリセルＭＣの記憶データのレベルに応じたメモリセル電流Ｉｃｅｌｌが通過する。たとえば、このメモリセル電流Ｉｃｅｌｌを所定の基準電流と比較することにより、メモリセルＭＣから記憶データを読出すことができる。
【００３９】
なお、メモリセル電流Ｉｃｅｌｌは、一般的に、上述したデータ書込電流と比較して１〜２桁程度小さくなるように設計される。したがって、メモリセル電流Ｉｃｅｌｌの影響によって、メモリセルＭＣの記憶データが誤って書換えられる可能性は小さい。すなわち非破壊的なデータ読出が可能である。
【００４０】
図６は、半導体基板上に形成されたメモリアレイ１０に含まれるメモリセルＭＣの断面図である。
【００４１】
図６を参照して、半導体基板上に形成されたアクセストランジスタＡＴＲは、ｎ型領域である不純物領域３１０および３２０と、ゲート領域３３０とを有する。不純物領域３１０は、コンタクトホールに形成される金属膜を介して第１の金属配線層Ｍ１のソース線ＳＬと電気的に結合される。
【００４２】
デジット線ＤＬは、ソース線ＳＬの上層に設けられた金属配線層Ｍ２に形成される。トンネル磁気抵抗素子ＴＭＲは、デジット線ＤＬの上層側に配置される。トンネル磁気抵抗素子ＴＭＲは、ストラップ３５０およびコンタクトホール３４０に形成された金属膜を介して、アクセストランジスタＡＴＲの不純物領域３２０と電気的に結合される。ストラップ３５０は、トンネル磁気抵抗素子ＴＭＲをアクセストランジスタＡＴＲと電気的に結合するために設けられ、導電性の物質で形成される。ビット線ＢＬは、トンネル磁気抵抗素子ＴＭＲと電気的に結合されて、トンネル磁気抵抗素子ＴＭＲの上層側に設けられる。
【００４３】
データ書込電流および読出電流が流されるビット線ＢＬおよびデータ書込電流が流されるデジット線ＤＬは、金属配線層Ｍ３，Ｍ２をそれぞれ用いて形成される。一方、ワード線ＲＷＬは、アクセストランジスタＡＴＲのゲート電圧を制御するために設けられるので、電流を積極的に流す必要はない。したがって、集積度を高める観点から、ワード線ＲＷＬは、独立した金属配線層を新たに設けることなく、ゲート領域３３０と同一の配線層に、ポリシリコン層やポリサイド層などを用いて形成されるのが一般的である。なお、ビット線ＢＬの上層側に設けられる金属配線層Ｍ４，Ｍ５等を用いて他の周辺回路で用いられる信号線等が設けられる。たとえば、読出データおよび書込データ等を伝達するためのデータ線等が挙げられる。
【００４４】
上記のような構成に基づき、メモリセルＭＣを集積配置することにより大容量のメモリアレイを形成し、不揮発的なデータ記憶を実行する。
【００４５】
再び図１を参照して、ＭＲＡＭデバイス１は、さらに行デコーダ２０と、列デコーダ２５と、読出／書込制御回路３０，３５とを備える。
【００４６】
行デコーダ２０は、アドレス信号ＡＤＤによって示されているロウアドレスＲＡに応じて、メモリアレイ１０における行選択を実行する。列デコーダ２５は、アドレス信号ＡＤＤによって示されるコラムアドレスＣＡに応じてメモリアレイ１０における列選択を実行する。行デコーダ２０は、図示しないがワード線ＲＷＬおよびデジット線ＤＬを駆動するドライバを含み、行デコーダ２０の行選択結果に基づいて選択されたワード線ＲＷＬもしくはデジット線ＤＬを選択的に活性化する。ロウアドレスＲＡおよびコラムアドレスＣＡによってデータ読出もしくはデータ書込対象に指定されたメモリセル（以下、「選択メモリセル」とも称する）が示される。
【００４７】
読出／書込制御回路３０，３５は、データ読出およびデータ書込時において、選択メモリセルに対応する選択メモリセル列（以下、「選択列」とも称する）のビット線ＢＬに対してデータ書込電流およびセンス電流（データ読出電流）を流すために、メモリアレイ１０に隣接する領域に配置される回路群を総称したものである。
【００４８】
ＭＲＡＭデバイス１は、さらに、プログラム回路４０と冗長制御回路４５とを備える。プログラム回路４０については後ほど詳細に説明するがプログラム情報を外部からのプログラムデータＰＤＩＮに応答して不揮発的に記憶する。
【００４９】
本実施の形態１においては、欠陥メモリセルを特定するための不良アドレスがプログラム情報としてプログラム回路４０に記憶される構成を代表的に説明する。
【００５０】
冗長制御回路４５は、通常動作時において、アドレス信号ＡＤＤとプログラム回路４０に保持される不良アドレスとを比較することによりデータ読出またはデータ書込対象として不良メモリセルが選択されたかどうかを判定する。
【００５１】
不良メモリセルが選択された場合には、冗長制御回路４５は、スペアメモリセルで構成された冗長回路に対するアクセスを指示するとともに行デコーダ２０および列デコーダ２５に対して外部からのアドレス信号ＡＤＤで示された選択メモリセルに対するアクセスの停止を指示する。これにより、アドレス信号ＡＤＤで示される選択メモリセルに代えて冗長メモリセルを対象としてデータ読出またはデータ書込が実行される。
【００５２】
一方、外部からのアドレス信号ＡＤＤが不良アドレスと対応しない場合には行デコーダ２０および列デコーダ２５によって通常の選択動作が実行されて、通常の選択メモリセルに対してデータ読出またはデータ書込が実行される。
【００５３】
本実施の形態１においては、プログラム回路４０に記憶される、プログラム情報を構成するプログラムデータのデータ書込およびデータ読出について詳細に説明する。
【００５４】
図７は、本発明の実施の形態１に従うプログラム回路４０の概念図である。
図７を参照して、本発明の実施の形態１に従うプログラム回路４０は、図１で示されるＭＲＡＭデバイス１と比較して、プログラム回路４０および冗長制御回路４５を削除した構成とほぼ同様の構成である。具体的には、プログラム回路４０は、コントロール回路５からの制御信号およびアドレス信号ＡＤＤに応じてランダムアクセスを実行し、プログラムデータＰＤＩＮの入力およびプログラム読出データＰＤＯＵＴの出力を実行する。
【００５５】
プログラム回路４０は、コントロール回路５からの動作指示に応答してプログラム回路４０の全体動作を制御するためのサブコントロール回路５♯と、行列状に配列されたプログラム情報を記憶する複数のＭＴＪメモリセルＰＭＣ（以下、単にメモリセルＰＭＣとも称する）を有するメモリアレイ１０♯と、アドレス信号ＡＤＤによって示されるロウアドレスＲＡに応じてメモリアレイ１０♯における行選択を実行する行デコーダ２０♯と、アドレス信号ＡＤＤによって示されるコラムアドレスＣＡに応じてメモリアレイ１０♯における列選択を実行する列デコーダ２５♯と、読出／書込制御回路３０♯，３５♯とを含む。
【００５６】
読出／書込制御回路３０♯，３５♯は、データ読出およびデータ書込時において選択メモリセルに対応する選択列のビット線ＢＬに対してデータ書込電流およびセンス電流を流すためにメモリアレイ１０♯に隣接する領域に配置される回路群を総称したものである。
【００５７】
メモリアレイ１０♯は、プログラム情報を記憶するメモリセルＰＭＣが行列状に集積配置された構成である。また、メモリアレイ１０♯は、メモリセル行にそれぞれ対応して設けられる複数のワード線ＲＷＬ，ＦＷＬ、デジット線ＤＬおよびソース線ＳＬとが設けられる。また、メモリセル列にそれぞれ対応して複数のビット線ＢＬおよびソース線ＦＳＬが設けられる。図４には１つのメモリセルＰＭＣが示され行に対応してワード線ＲＷＬ，ＦＷＬおよびソース線ＳＬが１本ずつ示されている。また、列に対応してビット線ＢＬおよびソース線ＦＳＬが１本ずつ示されている。なお、ここで示されるワード線ＲＷＬ，ＦＷＬ、ソース線ＳＬ，ＦＳＬ、デジット線ＤＬ、ビット線ＢＬは、複数設けられたワード線、ソース線、デジット線およびビット線をそれぞれ総称したものである。
【００５８】
図８は、本発明の実施の形態１に従うプログラム情報を記憶するメモリセルＰＭＣを詳細に示す回路構成図である。メモリセルＰＭＣは、２ビットの不揮発的なデータ記憶が実行可能なメモリセルである。
【００５９】
図８を参照して、メモリセルＰＭＣは、図２に示されるメモリセルＭＣと比較して、アクセストランジスタＦＴＲと、トンネル磁気抵抗素子ＴＭＲとアクセストランジスタＦＴＲとの接続に用いられる接続部ＣＨとをさらに含む点が異なる。
【００６０】
トンネル磁気抵抗素子ＴＭＲとアクセストランジスタＦＴＲとは、接続部ＣＨを介してビット線ＢＬとソース線ＦＳＬとの間に直列に接続され、アクセストランジスタＦＴＲのゲートは、ワード線ＦＷＬと電気的に結合される。
【００６１】
ここで接続部ＣＨは、通過電流に応じてその状態が変化する導電性の材料で形成される。この接続部ＣＨを通過する通過電流に基づいてトンネル磁気抵抗素子ＴＭＲとアクセストランジスタＦＴＲとの電気的な接続がほぼ切断された状態すなわち高抵抗状態に変化する。これに伴い、この状態が変化する接続部ＣＨの切断／非切断状態（プログラム状態／非プログラム状態とも称する）と記憶データ「０」および「１」とを対応付けることにより固定的（不揮発的）な１ビットのデータ記憶を実行する。
【００６２】
メモリセルＰＭＣは、磁化方向によって記憶データを格納するトンネル磁気抵抗素子ＴＭＲと上記の接続部ＣＨの切断／非切断状態とに基づいて２ビットの記憶データを格納するプログラム素子を構成する。
【００６３】
図９は、半導体基板上に形成されたメモリアレイ１０＃に含まれるメモリセルＰＭＣの断面図である。
【００６４】
図９を参照して、メモリセルＰＭＣの断面図は、図６のメモリセルＭＣの断面図と比較して、アクセストランジスタＦＴＲと、接続部ＣＨと、ソース線ＦＳＬと、ワード線ＦＷＬに関する点が異なる。他の部分については同様であるのでその詳細な説明は繰り返さない。半導体基板上に形成されたアクセストランジスタＦＴＲは、アクセストランジスタＡＴＲと隣接する領域に設けられ、ｎ型領域である不純物領域３１１および３２１と、ゲート領域３３１とを有する。不純物領域３１１は、コンタクトホール３４１に形成される金属膜を介してトンネル磁気抵抗素子ＴＭＲと電気的に結合されるストラップ３５１と電気的に結合される。ここで、接続部ＣＨは、ストラップ３５１の一部領域に相当し、図３で示されるストラップ３５０と比較して、アクセストランジスタＦＴＲとの電気的な結合をするために延長した領域部分に相当する。このストラップ３５１の一部領域に相当する接続部ＣＨは、通過電流に基づいて状態（形状）が変化しやすいようにするため一例として局所的に電流の集中を促すように細長形状に設計する必要がある。
【００６５】
ソース線ＦＳＬは、ビット線ＢＬとショートしないように並列に同じ金属配線層（Ｍ３）に設けられ、コンタクトホール３４２に形成された金属膜を介して、アクセストランジスタＦＴＲの不純物領域３２１と電気的に結合される。具体的にはコンタクトホール３４２は、第１の金属配線層の領域部分において行方向（ワード線等と同じ方向）に金属層が設けられ、ビット線ＢＬとショートしないように点線で示す経路で上層のソース線ＦＳＬと電気的に結合される。ワード線ＦＷＬは、上述したように、集積度を高める観点から、独立した金属配線層を新たに設けることなく、ゲート領域３３１と同一の配線層に、ポリシリコン層やポリサイド層などを用いて形成される。
【００６６】
このように、メモリセルＰＭＣは、メモリセルＭＣとほぼ同様の構成を有し、新たな金属配線層を設けることなく設計することができるため、集積度を向上させることができるとともに製造コストを低廉にすることが可能となり、効率的なプログラム素子を設計することが可能となる。
【００６７】
以下においては、集積配置された上記のメモリセルＰＭＣに対してプログラム情報のデータ書込およびデータ読出について詳細に説明する。
【００６８】
図１０は、本発明の実施の形態１に従うメモリアレイ１０♯およびその周辺領域の回路構成図である。
【００６９】
図１０を参照して、メモリアレイ１０♯は行列状に配列された複数のメモリセルＰＭＣを有する。上述したようにメモリアレイ１０♯にはメモリセル行にそれぞれ対応して複数のワード線ＦＷＬおよびＲＷＬと、複数のソース線ＳＬがそれぞれ設けられる。また、メモリセル列にそれぞれ対応して複数のビット線ＢＬおよびソース線ＦＳＬがそれぞれ設けられる。
【００７０】
図１０においては、メモリセル列にそれぞれ対応して設けられるビット線ＢＬ０〜ＢＬｎおよびソース線ＦＳＬ０〜ＦＳＬｎが一例として示されている。メモリセルＰＭＣとビット線ＢＬ、ソース線ＳＬ，ＦＳＬおよびワード線ＲＷＬ，ＦＷＬの接続関係については図８で説明したのと同様であるのでその説明は繰返さない。
【００７１】
行デコーダ２０♯は、メモリセル行毎に配置されたワード線ＦＷＬに対応して設けられたワード線ドライバ８０と、デジット線ＤＬに対応して設けられたデジット線ドライバ８５と、ワード線ＲＷＬに対応して設けられたワード線ドライバ９０とを含む。
【００７２】
読出／書込制御回路３０♯は、各ビット線毎にビット線ＢＬの一端側に対応して設けられ、書込制御信号ＷＤＴａ，ＷＤＴｂに応じて電源電圧Ｖｃｃおよび接地電圧ＧＮＤのいずれか一方をビット線ＢＬに駆動するビット線ドライバＷＤＲｂと、サブコントロール回路５♯の指示に応答してデータ書込時にプログラムデータＰＤＩＮに応じた書込制御信号ＷＤＴａ，ＷＤＴｂもしくは制御信号ＣＳＷもしくは制御信号ＢＩを生成する書込制御ユニット９５とを含む。ビット線ドライバＷＤＲｂは、電源電圧Ｖｃｃとビット線ＢＬの一端側との間に配置され、書込制御信号ＷＤＴｂの入力をゲートに受けるトランジスタ４０ｂと、接地電圧ＧＮＤとビット線ＢＬの一端側との間に配置され、書込制御信号ＷＤＴａの入力をゲートに受けるトランジスタ４１ｂとを含む。
【００７３】
また、読出／書込制御回路３０♯は、各ビット線毎に設けられ各ビット線に供給されるデータ読出電流に基づいて読出データＲＤＴを生成するアンプＲＡＰをさらに含む。なお、図示しない読出制御回路は、読出データＲＤＴの入力を受けてプログラム読出データＰＤＯＵＴを出力する。
【００７４】
読出／書込制御回路３５♯は、各ビット線毎にビット線ＢＬの他端側に対応して設けられ、書込制御信号ＷＤＴａ，ＷＤＴｂに応じて電源電圧Ｖｃｃおよび接地電圧ＧＮＤのいずれか一方をビット線ＢＬに駆動するビット線ドライバＷＤＲａと、制御信号ＣＳＷに応じて電源電圧Ｖｃｃおよび接地電圧ＧＮＤのいずれか一方をソース線ＦＳＬに駆動するソース線ドライバＳＤＲとを含む。ビット線ドライバＷＤＲａは、電源電圧Ｖｃｃとビット線ＢＬとの他端側との間に配置され、書込制御信号ＷＤＴａの入力をゲートに受けるトランジスタ４０ａと、接地電圧ＧＮＤとビット線ＢＬの他端側との間に配置され、書込制御信号ＷＤＴｂの入力をゲートに受けるトランジスタ４１ａとを含む。
【００７５】
ソース線ドライバＳＤＲは、スイッチ素子ＳＷを有し、たとえば、制御信号ＣＳＷ（「Ｈ」レベル）に応答してソース線ＦＳＬに電源電圧Ｖｃｃを駆動する。一方、制御信号ＣＳＷ（「Ｌ」レベル）に応答してソース線ＦＳＬに接地電圧ＧＮＤを駆動する。
【００７６】
また、読出／書込制御回路３５＃は、各ビット線毎に設けられ、制御信号ＢＩに応答して電源電圧Ｖｃｃよりも高電圧の昇圧電圧Ｖｐｐと対応するビット線とを電気的に接続するトランジスタＢＴをさらに含む。
【００７７】
まず、トンネル磁気抵抗素子ＴＭＲへのプログラムデータのデータ書込について説明する。以下においては通常のトンネル磁気抵抗素子ＴＭＲへのデータ書込をＭＴＪライトモードと称する。
【００７８】
図１１は、本発明の実施の形態１に従うメモリセルＰＭＣに対してＭＴＪライトモードを実行する場合の概念図である。ＭＴＪライトモードにおいては選択メモリセル行毎にプログラム情報が書込まれるものとする。本例においては、ビット線ＢＬ０に対応するメモリセルＰＭＣに対しプログラムデータ「０」を書込み、ビット線ＢＬｎに対応するメモリセルＰＭＣに対しプログラムデータ「１」を書込む場合について説明する。
【００７９】
図１１を参照して、書込制御ユニット９５は、プログラムデータＰＤＩＮに基づいて各列毎に設けられたビット線ドライバＷＤＲａおよびＷＤＲｂに入力する書込制御信号ＷＤＴａ，ＷＤＴｂを設定する。具体的には、プログラムデータＰＤＩＮ、列デコーダ２５＃の列選択結果およびサブコントロール回路５＃からのＭＴＪライトモードの動作指示に基づいて対応するビット線ドライバＷＤＲａおよびＷＤＲｂに入力する書込制御信号ＷＤＴａ，ＷＤＴｂの一方を「Ｈ」レベル、他方を「Ｌ」レベルに設定する。ここでは、一例としてビット線ＢＬ０に対応するビット線ドライバＷＤＲａおよびＷＤＲｂに対して「Ｈ」レベルの書込制御信号ＷＤＴａおよび「Ｌ」レベルの書込制御信号ＷＤＴｂを設定する。また、ビット線ＢＬｎに対応するビット線ドライバＷＤＲａおよびＷＤＲｂに対して「Ｌ」レベルの書込制御信号ＷＤＴａおよび「Ｈ」レベルの書込制御信号ＷＤＴｂを設定する。なお、各ビット線ドライバＷＤＲａおよびＷＤＲｂにおいて、設定された書込制御信号ＷＤＴａおよびＷＤＴｂは図示しないラッチ回路によってラッチされているものとする。
【００８０】
これに伴い、ビット線ＢＬ０に対応するビット線ドライバＷＤＲａにおいて、トランジスタ４０ａがオンし、電源電圧Ｖｃｃとビット線ＢＬ０の他端側とが電気的に結合される。また、ビット線ドライバＷＤＲｂにおいてトランジスタ４１ｂがオンし、ビット線ＢＬ０の一端側と接地電圧ＧＮＤとが電気的に結合される。
【００８１】
したがって、ビット線ＢＬ０の他端側から一端側への電流経路が形成され、ビット線ＢＬ０にプログラムデータ「０」に対応するデータ書込電流が供給される。
【００８２】
一方、ビット線ＢＬｎについては、ビット線ＢＬ０と同様の方式にしたがってビット線ＢＬｎの一端側から他端側への電流経路が形成され、ビット線ＢＬｎにプログラムデータ「１」に対応するデータ書込電流蛾供給される。
【００８３】
また、同様のタイミングにおいて行デコーダ２０♯は、ロウアドレスＲＡに応答して選択的にデジット線ドライバ８５を活性化させ、データ書込電流を供給する。
【００８４】
このビット線ＢＬ０およびＢＬｎに供給されるデータ書込電流とデジット線ＤＬに流れるデータ書込電流によって選択されたメモリセル行のメモリセルＰＭＣのトンネル磁気抵抗素子ＴＭＲの磁化方向がデータ書込電流に対応して設定され、磁化方向に応じてプログラムデータを選択メモリセルに記憶することができる。本例においては、ビット線ＢＬ０に対応するメモリセルＰＭＣのトンネル磁気抵抗素子ＴＭＲにプログラムデータ「０」を記憶させることができる。また、ビット線ＢＬｎに対応するメモリセルＰＭＣのトンネル磁気抵抗素子ＴＭＲにプログラムデータ「１」を記憶させることができる。
【００８５】
次に、トンネル磁気抵抗素子ＴＭＲに記憶されたプログラムデータのデータ読出について説明する。以下、トンネル磁気抵抗素子ＴＭＲに記憶されたプログラムデータのデータ読出をＭＴＪリードモードとも称する。
【００８６】
図１２は、本発明の実施の形態１に従うメモリセルＰＭＣに対してＭＴＪリードモードを実行する場合の概念図である。ＭＴＪリードモード時においてはメモリセル行毎にプログラム情報が読出されるものとする。本例においては、プログラムデータ「０」を記憶するビット線ＢＬ０に対応するメモリセルＰＭＣおよびプログラム「１」を記憶するビット線ＰＬｎに対応するメモリセルＰＭＣのデータ読出について説明する。
【００８７】
図１２を参照して、ＭＴＪリードモード時において、行デコーダ２０♯は、ロウアドレスＲＡに応答して選択的にワード線ＲＷＬを活性化させる。これに伴い活性化されたワード線ＲＷＬと電気的に結合されたゲートを有するアクセストランジスタＡＴＲはターンオンする。
【００８８】
次に、ＭＴＪリードモード時において、各列毎に設けられたアンプＲＡＰは、サブコントロール回路５＃からのＭＴＪリードモードの動作指示に応答して活性化され、各ビット線を所定電圧にプルアップする。
【００８９】
これに伴い、アンプＲＡＰ〜ビット線ＢＬ〜トンネル磁気抵抗素子ＴＭＲ〜アクセストランジスタＡＴＲ〜ソース線ＳＬ（ＧＮＤ）への電流経路が形成される。すなわち、上記電流経路を介してアンプＲＡＰから選択メモリセルに対してトンネル磁気抵抗素子ＴＭＲが有する電気抵抗（Ｒｍａｘ，Ｒｍｉｎ）に応じたデータ読出電流が供給される。アンプＲＡＰは、所定電圧に対して電気抵抗値Ｒｍａｘおよび電気抵抗値Ｒｍｉｎの中間レベルの抵抗値によって生成される基準電流Ｉｒｅｆとこのデータ読出電流との比較に基づいてトンネル磁気抵抗素子ＴＭＲに格納されたプログラムデータを読出データＲＤＴとして出力する。具体的には、ビット線ＢＬ０に対応するアンプＲＡＰは、プログラムデータ「０」に対応する読出データＲＤＴを出力し、ビット線ＢＬｎに対応するアンプＲＡＰは、プログラムデータ「１」に対応する読出データＲＤＴを出力する。
【００９０】
なお、一般的なＭＴＪメモリセルにおいては、電気抵抗値が数十ＫΩ程度であり、データ読出時におけるトンネル磁気抵抗素子ＴＭＲへの印加電圧は、トンネル膜（絶縁膜）の信頼性等を考慮した値に設定する必要がある。具体的には、トンネル膜の厚さが１５０μｍの場合には１Ｖの印加電圧で破壊されるため、当該トンネル膜には０．５Ｖ程度の印加電圧に抑えられる。したがって、トンネル膜が破壊しないようにデータ読出時にプルアップされる所定電圧を設計する必要がある。
【００９１】
また、本例においては選択メモリセル行を構成するメモリセルに対して並列にＭＴＪリードモードを実行する場合について説明したが、これに限られず１つの選択メモリセルに対してＭＴＪリードモードを実行することも可能である。これに関連して、１つの選択メモリセルに対してＭＴＪリードモードを実行する構成においては、上記例において説明したメモリセル列毎に配置されたアンプＲＡＰの代わりに１つのアンプと選択的に電流経路が形成されるような構成とし、回路の部品点数を削減することも可能である。
【００９２】
次に、メモリセルＰＭＣの接続部ＣＨへのプログラムデータのデータ書込について説明する。以下においては、メモリセルＰＭＣの接続部ＣＨへのデータ書込をヒューズブローモードとも称する。
【００９３】
図１３は、本発明の実施の形態１に従うメモリセルＰＭＣに対してヒューズブローモードを実行する場合の概念図である。ヒューズブローモード時においてはメモリセル行毎にプログラム情報が書込まれるものとする。本例においては、ビット線ＢＬ０に対応するメモリセルＰＭＣをプログラム状態（プログラムデータ「０」に対応）とし、ビット線ＢＬｎに対応するメモリセルＰＭＣは非プログラム状態（プログラムデータ「１」に対応）とする場合について説明する。
【００９４】
図１３を参照して、書込制御ユニット９５は、ヒューズブローモード時において、プログラムデータＰＤＩＮ、列デコーダ２５＃の列選択結果およびサブコントロール回路５＃からのヒューズブローモードの動作指示に応答してメモリセル列毎に設けられた各ソース線ドライバＳＤＲに対して制御信号ＣＳＷを出力する。なお、各ソース線ドライバＳＤＲにおいて、設定された制御信号ＣＳＷは図示しないラッチ回路によってラッチされているものとする。
【００９５】
一例として、書込制御ユニット９５は、プログラムデータＰＤＩＮ（「０」）に応答してビット線ＢＬ０に対応するソース線ドライバＳＤＲに対して「Ｈ」レベルである制御信号ＣＳＷを出力し、プログラムデータＰＤＩＮ（「１」）に応答してビット線ＢＬｎに対応するソース線ドライバＳＤＲに対して「Ｌ」レベルである制御信号ＣＳＷを出力するものとする。ソース線ＦＳＬ０は、「Ｈ」レベルの制御信号ＣＳＷに応答して、電源電圧Ｖｃｃと電気的に結合される。また、ソース線ＦＳＬｎは、「Ｌ」レベルの制御信号ＣＳＷに応答して接地電圧ＧＮＤと電気的に結合される。
【００９６】
また、同様のタイミングにおいて行デコーダ２０は、ロウアドレスＲＡの入力に応じて、メモリセル行に対応するワード線ＦＷＬおよびＲＷＬを選択的に活性化（「Ｈ」レベル）する。これに伴い、活性化されたワード線ＦＷＬ，ＲＷＬに対応するアクセストランジスタＦＴＲ，ＡＴＲがオンする。
【００９７】
したがって、ソース線ドライバＳＤＲ（電源電圧Ｖｃｃ）〜ソース線ＦＳＬ〜アクセストランジスタＦＴＲ〜接続部ＣＨ〜アクセストランジスタＡＴＲ〜接地電圧ＧＮＤへの電流経路が形成される。すなわち、アクセストランジスタ２個を介して接続部ＣＨに所定の電流が供給される。これに伴い、上述したように接続部ＣＨは、この所定の通過電流に応答してアクセストランジスタＡＴＲとトンネル磁気抵抗素子ＴＭＲとの電気的な接続状態を変化させる。具体的には、アクセストランジスタＡＴＲとトンネル磁気抵抗素子ＴＭＲとの電気的な接続状態は、ほぼ切断状態となり接続部の負荷抵抗（電気抵抗）は、数Ωの低抵抗状態から数百Ｍ（メガ）Ωの高抵抗状態へと遷移する。
【００９８】
このように当該接続部ＣＨの負荷抵抗を数Ωから数百ＭΩに遷移させることにより、固定的にプログラム情報をプログラムすることが可能となる。たとえば、接続部ＣＨの接続状態がほぼ切断状態すなわち高抵抗状態のときはプログラムデータ「０」が記憶されるものとする。一方、接続部ＣＨの接続状態が非切断状態すなわち低抵抗状態のときはプログラムデータ「１」が記憶されるものとする。
【００９９】
次に、メモリセルＰＭＣの接続部ＣＨへプログラムされたプログラムデータのデータ読出について説明する。以下においては、メモリセルＰＭＣの接続部ＣＨへのデータ読出をヒューズリードモードとも称する。
【０１００】
図１４は、本発明の実施の形態１に従うメモリセルＰＭＣに対してヒューズリードモードを実行する場合の概念図である。ヒューズリードモード時においてはメモリセル行毎にプログラム情報が読出されるものとする。本例においては、プログラム状態であるビット線ＢＬ０に対応するメモリセルＰＭＣおよび非プログラム状態であるビット線ＢＬｎに対応するメモリセルＰＭＣのデータ読出について説明する。
【０１０１】
図１４を参照して、ヒューズリードモード時において、行デコーダ２０♯は、コラムアドレスＣＡに応答して選択的にワード線ＦＷＬを活性化させる。これに伴い活性化されたワード線ＦＷＬと電気的に結合されたゲートを有するアクセストランジスタＦＴＲはターンオンする。また、各ソース線ドライバＳＤＲは、初期状態の制御信号ＣＳＷ（「Ｌ」レベル）に応答してソース線ＦＳＬと接地電圧ＧＮＤとを電気的に結合している。
【０１０２】
次に、ヒューズリードモード時において、各列毎に設けられたアンプＲＡＰは、サブコントロール回路５＃からのヒューズリードモードの動作指示に応答して活性化され、各ビット線を所定電圧にプルアップする。
【０１０３】
これに伴い、アンプＲＡＰ〜ビット線ＢＬ〜トンネル磁気抵抗素子ＴＭＲ〜接続部ＣＨ〜アクセストランジスタＦＴＲ〜ソース線ＦＳＬ（ＧＮＤ）への電流経路が形成される。すなわち、上記電流経路を介してアンプＲＡＰから選択メモリセルに対して接続部ＣＨが有する負荷抵抗（電気抵抗）に応じたデータ読出電流が供給される。具体的には、接続部ＣＨがプログラム状態の場合には接続部ＣＨの負荷抵抗は抵抗値Ｒｌ（数百ＭΩ）に設定されるためアンプＲＡＰから供給されるデータ読出電流は小さくなる。一方、接続部ＣＨが非プログラム状態の場合には接続部ＣＨの負荷抵抗は抵抗値Ｒｓ（数Ω）に設定されるためアンプＲＡＰから供給されるデータ読出電流は大きくなる。したがって、アンプＲＡＰは、所定電圧に対して抵抗値Ｒｌおよび抵抗値Ｒｓの中間レベルの抵抗値によって生成される基準電流Ｉｒｅｆとの比較に基づいて接続部ＣＨに格納されたプログラムデータを読出データＲＤＴとして出力することができる。
【０１０４】
具体的には、ビット線ＢＬ０に対応するアンプＲＡＰは、プログラムデータ「０」に対応する読出データＲＤＴを出力し、ビット線ＢＬｎに対応するアンプＲＡＰは、プログラムデータ「１」に対応する読出データＲＤＴを出力する。
【０１０５】
なお、このヒューズリードモードにおいては、データ読出電流を規定する電流経路の負荷抵抗としてトンネル磁気抵抗素子ＴＭＲの電気抵抗を考慮した電流が供給されるが、トンネル磁気抵抗素子ＴＭＲの電気抵抗（ＲｍｉｎおよびＲｍａｘ）は、数十ＫΩ程度に留まるため、接続部ＣＨのプログラム状態における数百ＭΩとの比較においては殆ど影響を与えない。
【０１０６】
また、当該ヒューズリードモードと同様の方式にしたがって、接続部ＣＨが非切断状態であり、かつトンネル磁気抵抗素子ＴＭＲの電気抵抗がＲｍｉｎである場合を一回のデータ読出動作によって検出するデータ読出（以下、当該データ読出をＡＮＤリードモードと称する）を実行することができる。
【０１０７】
具体的には、アンプＲＡＰに入力される基準電流Ｉｒｅｆを所定電圧に対してトンネル磁気抵抗素子ＲｍａｘおよびＲｍｉｎの中間レベルの抵抗値に対応するように設定する。
【０１０８】
そうすると、接続部ＣＨが切断状態（プログラム状態）においてはこの電流経路に介在する負荷抵抗は接続部ＣＨの電気抵抗（数百ＭΩ）に引きずられてトンネル磁気抵抗素子ＴＭＲの抵抗値（Ｒｍｉｎ，Ｒｍａｘ）を無視できる状態となる。一方、接続部ＣＨが非切断状態（非プログラム状態）すなわち抵抗値Ｒｓであり、トンネル磁気抵抗素子ＴＭＲが抵抗値Ｒｍｉｎを有する場合について考える。この場合には、抵抗値Ｒｓは抵抗値Ｒｍｉｎよりも極めて小さいため、この電流経路に介在する抵抗値は、抵抗値Ｒｍｉｎに依存し、抵抗値Ｒｓは無視することができる。したがって、基準電流Ｉｒｅｆとの比較に基づいて、トンネル磁気抵抗素子ＴＭＲが抵抗値Ｒｍｉｎを有し、接続部ＣＨが電気抵抗値Ｒｓを有する場合を検知することができる。すなわち、１回のデータ読出動作により、トンネル磁気抵抗素子ＴＭＲおよび接続部ＣＨの各々の記憶データのＡＮＤ論理演算により得られる読出データＲＤＴを検出することができる。したがって、ＡＮＤリードモードをメモリセルＰＭＣに対して実行することができる。
【０１０９】
次に、トンネル磁気抵抗素子ＴＭＲのトンネル膜を破壊（プログラム状態）することによりトンネル磁気抵抗素子ＴＭＲにプログラムデータを書込む場合について説明する。以下、トンネル磁気抵抗素子ＴＭＲのトンネル膜を破壊するデータ書込をＭＴＪブローモードと称する。
【０１１０】
図１５は、本発明の実施の形態１に従うメモリセルＰＭＣに対してＭＴＪブローモードを実行した場合の概念図である。ＭＴＪブローモード時においてはメモリセル行毎にプログラム情報が書込まれるものとする。本例においては、ビット線ＢＬ０に対応するメモリセルＰＭＣを非破壊（非プログラム状態）とし、ビット線ＢＬｎに対応するメモリセルＰＭＣを破壊（プログラム状態）とする場合について説明する。
【０１１１】
図１５を参照して、書込制御ユニット９５は、ＭＴＪブローモード時において、プログラムデータＰＤＩＮ、列デコーダ２５＃の列選択結果およびサブコントロール回路５＃からのＭＴＪブローモードの動作指示に応答してメモリセル列毎に設けられた各トランジスタＢＴに対して制御信号ＢＩを出力する。なお、各トランジスタＢＴにおいて、設定された制御信号ＢＩは図示しないラッチ回路によってラッチされているものとする。
【０１１２】
一例として、書込制御ユニット９５は、ビット線ＢＬ０に対応するトランジスタＢＴに対して「Ｌ」レベルである制御信号ＢＩを出力し、ビット線ＢＬｎに対応するトランジスタＢＴに対して「Ｈ」レベルである制御信号ＢＩを出力するものとする。これに応答して、ビット線ＢＬ０は、オープン状態（開放状態）となり、ビット線ＢＬｎは、制御信号ＢＩに応答して昇圧電圧Ｖｐｐに充電される。
【０１１３】
また、同様のタイミングにおいて行デコーダ２０は、ロウアドレスＲＡの入力に応じて、メモリセル行に対応するワード線ＲＷＬを選択的に活性化（「Ｈ」レベル）する。これに伴い、活性化されたワード線ＲＷＬに対応するアクセストランジスタＡＴＲがオンする。
【０１１４】
したがって、ビット線ＢＬｎにはトランジスタＢＴ（昇圧電圧Ｖｐｐ）〜ビット線ＢＬｎ〜アクセストランジスタＡＴＲ〜ソース線ＳＬ〜接地電圧ＧＮＤへの電流経路が形成される。
【０１１５】
これに伴い、トンネル磁気抵抗素子ＴＭＲに流れる通過電流に従い電気抵抗に応じた印加電圧がトンネル磁気抵抗素子ＴＭＲに発生する。上述した、ＭＴＪリードモード等においてはプルアップする所定電圧をトンネル磁気抵抗素子ＴＭＲのトンネル膜が破壊されないレベルに設定する必要について説明したが、この場合においては、所定電圧よりも十分に高い電圧レベルである昇圧電圧Ｖｐｐを用いてトンネル膜を破壊する程度の電圧（たとえば１Ｖ程度）を印可する。
【０１１６】
これにより、トンネル膜は破壊され、トンネル磁気抵抗素子の電気抵抗値は、電気抵抗値Ｒｍｉｎよりも極めて低い電気抵抗値Ｒｍｉｎ＃に固定的に設定される。このトンネル膜を破壊した電気抵抗値Ｒｍｉｎ＃と破壊前の電気抵抗値（Ｒｍａｘ，Ｒｍｉｎ）とをプログラムデータ「０」，「１」とそれぞれ対応付けることにより１ビットのデータ記憶を実行することができる。
【０１１７】
本例においては、ＭＴＪブローモードにより、ビット線ＢＬｎに対応する選択メモリセルＰＭＣに対してトンネル磁気抵抗素子のトンネル膜を破壊して電気抵抗値を電気抵抗値Ｒｍｉｎ＃に固定的に設定することによりプログラムデータ「０」を書込むことができる。
【０１１８】
本例においては、昇圧電圧Ｖｐｐを用いてＭＴＪブローモードを実行する構成について説明してきたがこれに限られず、他の電源電圧を用いて実行することも可能である。具体的には、一例としてビット線ドライバＷＤＲａあるいはＷＤＲｂの一方を用いて電源電圧Ｖｃｃを制御信号に応答してビット線ＢＬに対して駆動することも可能である。このような構成により、トランジスタＢＴを設ける必要が無く回路の部品点数を削減するこができる。なお、トンネル膜を破壊するために要する時間は、印加電圧に依存するため高速に破壊する場合には高電圧を印可する必要がある。
【０１１９】
上記のＭＴＪライトモード等の種々のデータ書込は、メモリセル行毎にデータ書込を並列に実行する構成であるためプログラム情報のデータ書込を高速に実行することができる。
【０１２０】
また、上記のＭＴＪリードモード等の種々のデータ読出は、メモリセル行毎にデータ読出を並列に実行する構成であるためプログラム情報のデータ読出を高速に実行することができる。
【０１２１】
なお、上記においては、メモリセル行毎にデータ書込およびデータ読出を実行する構成について説明してきたが、１つのメモリセルに対して種々のデータ書込およびデータ読出を実行する構成とすることも可能である。
【０１２２】
上記において説明したように本プログラム回路４０のメモリアレイ１０＃を構成するメモリセルＰＭＣは、種々のデータ書込により複数のプログラムデータを記憶することができる。具体的には、ＭＴＪライトモードやヒューズブローモードを用いて１つのメモリセルＰＭＣに対して２ビットのプログラムデータを記憶することができる。あるいは、ヒューズブローモードやＭＴＪブローモードを用いて１つのメモリセルＰＭＣに対して２ビットのプログラムデータを記憶することができる。
【０１２３】
したがって、出荷前においてメモリセルＰＭＣに対して不良アドレス等のプログラム情報を記憶させた場合であって、出荷後にさらに不良アドレス等のプログラム情報を記憶させる必要が生じた場合においても本実施の形態に従うプログラム素子を用いることにより容易に対応することが可能である。
【０１２４】
また、上述したようにトンネル磁気記憶部および接続部でプログラムデータを記憶するこのメモリセルＰＭＣをプログラム素子として用いることにより集積度の観点からまた、簡易な設計である点からも効率的なプログラム素子を構成することができる。
【０１２５】
また、トンネル磁気記憶部と同様のプログラムデータを、固定的に状態を変化させる接続部に書込むことにより、磁気ノイズ等によってトンネル磁気記憶部のプログラムデータが消失してしまった場合の救済を図ることが可能である。
【０１２６】
なお、上記においては、メモリセルＰＭＣに接続部ＣＨと電流経路を選択的に生成するためのアクセストランジスタＦＴＲを１つ設ける構成について説明したが、複数の接続部ＣＨと、それに対応して設けられる複数のアクセストランジスタＦＴＲを設けることにより、２ビット以上のプログラムデータを１つのメモリセルＭＣに対して記憶することも可能である。
【０１２７】
（実施の形態２）
上記の実施の形態１においてはプログラムデータを効率的に記憶することが可能なメモリセルＰＭＣを集積配置したプログラム回路４０の構成について説明してきた。
【０１２８】
本発明の実施の形態２においては、プログラムデータを電源投入時に自動的に復号するプログラム素子により構成されるプログラム回路について説明する。
【０１２９】
図１６は、本発明の実施の形態２に従うプログラム素子を構成するプログラムユニットＰＭＵの回路構成図である。本プログラムユニットＰＭＵにより本発明の実施の形態２に従うプログラム回路が構成される。
【０１３０】
図１６を参照して、本発明の実施の形態２に従うプログラムユニットＰＭＵは、データ書込電流を供給するためのビット線ＳＢＬと、ビット線ＳＢＬの一端側および他端側にそれぞれ対応して設けられるビット線ドライバＷＷＲｂ，ＷＷＲａと、ビット線ＳＢＬの一端側に設けられビット線ＳＢＬと電気的に結合されてプログラムデータを格納するためのプログラムセルユニットＰＭＣＵｂと、ビット線ＳＢＬの他端側に設けられプログラムデータを格納するためのプログラムセルユニットＰＭＣＵａと、外部からのプログラムデータＰＤＩＮおよびコントロール回路５からの動作指示に応答して書込制御信号ＷＤＴａ，ＷＤＴｂおよび制御信号ＤＡ，／ＤＡを生成する書込／読出制御ユニット１４０とを備える。ここで、ビット線ＳＢＬは、プログラムセルユニットＰＭＣＵａおよびプログラムセルユニットＰＭＣＵｂに対して互いに異なる向きのデータ書込電流を供給するように配置される。
【０１３１】
さらに、プログラムユニットＰＭＵは、ソース電圧供給ノードＮ８に電源電圧Ｖｃｃおよび接地電圧ＧＮＤのいずれか一方を供給するソース電圧ドライバ１５０と、プログラムセルユニットＰＭＣＵａおよびＰＭＣＵｂにそれぞれ対応して設けられ、データ書込時にデータ書込電流が供給されるデジット線ＤＬａおよびＤＬｂと、データ書込時にデジット線ＤＬａおよびＤＬｂに対してデータ書込電流を供給するデジット線ドライバ帯１６０と、ビット線ＳＢＬと接続されるプログラムセルユニットＰＭＣＵａの接続ノードＮ４と、プログラムセルユニットＰＭＣＵｂの接続ノードＮ３とを電気的に結合してイコライズするイコライズ回路１３０とをさらに備える。
【０１３２】
さらに、プログラムユニットＰＭＵは、ビット線ＳＢＬと電気的に結合され、プログラムセルユニットＰＭＣＵａおよびＰＭＣＵｂが有するプログラムデータをラッチして出力するラッチ回路１００と、ラッチ回路１００の出力ノードＮ０およびＮ１からそれぞれ出力されるデータ信号ＰＯ，／ＰＯのゲートとなるゲートトランジスタＴＲＧｂ，ＴＲＧａと、ゲートトランジスタＴＲＧａおよびＴＲＧｂのゲートと電気的に結合される選択線ＣＷＬと、制御信号ＰＯＲの入力に応答して制御信号ＰＯＲ＃を選択線ＣＷＬに伝達するドライバＩＶＧとをさらに備える。
【０１３３】
ここで、制御信号ＰＯＲは、デバイスの内部回路のリセット信号に用いられるものであり、コントロール回路５から生成される。具体的には、電源投入時に電源電圧が所定の閾値電圧を超えるまで「Ｌ」レベルに設定され、所定の閾値電圧を超えた場合には「Ｈ」レベルに設定される。コントロール回路５は、図示しないパワーオンリセット回路を有し、当該パワーオンリセット回路から制御信号ＰＯＲが出力される。また、ドライバＩＶＧは、偶数個のインバータ（本例では２個）で構成され、制御信号ＰＯＲの入力に応答して所定期間遅延させて制御信号ＰＯＲ＃として出力する。
【０１３４】
ビット線ドライバＷＷＲａは、トランジスタ１１１，１１２と、ＡＮＤ回路１１３，１１４とを含む。トランジスタ１１１は、電源電圧Ｖｃｃとビット線ＳＢＬの他端側との間に配置され、そのゲートはＡＮＤ回路１１３の出力ノードと電気的に結合される。トランジスタ１１２は、ビット線ＳＢＬの他端側と接地電圧ＧＮＤとの間に配置され、そのゲートはＡＮＤ回路１１４の出力ノードと電気的に結合される。ＡＮＤ回路１１３は、書込制御信号ＷＤＴａおよび制御信号ＷＥの入力に応じてＡＮＤ論理演算結果をトランジスタ１１１のゲートに出力する。ＡＮＤ回路１１４は、書込制御信号ＷＤＴｂおよび制御信号ＷＥの入力に応じてＡＮＤ論理演算結果をトランジスタ１１２のゲートに出力する。なお、コントロール回路５から制御信号ＷＥが出力される。
【０１３５】
ビット線ドライバＷＷＲｂは、トランジスタ１１５，１１６と、ＡＮＤ回路１１７，１１８とを含む。トランジスタ１１５は、電源電圧Ｖｃｃとビット線ＳＢＬの一端側との間に配置され、そのゲートはＡＮＤ回路１１７の出力ノードと電気的に結合される。トランジスタ１１６は、接地電圧ＧＮＤとビット線ＳＢＬの一端側との間に配置され、そのゲートはＡＮＤ回路１１８の出力ノードと電気的に結合される。ＡＮＤ回路１１７は、書込制御信号ＷＤＴｂおよび制御信号ＷＥの入力に応じてそのＡＮＤ論理演算結果をトランジスタ１１５のゲートに出力する。ＡＮＤ回路１１８は、書込制御信号ＷＤＴａおよび制御信号ＷＥの入力に応じてＡＮＤ論理演算結果をトランジスタ１１６のゲートに出力する。
【０１３６】
たとえば、書込制御信号ＷＤＴａが「Ｈ」レベルに設定され、制御信号ＷＥが「Ｈ」レベルの場合、ビット線ドライバＷＷＲａは、トランジスタ１１１をオンし、電源電圧Ｖｃｃとビット線ＳＢＬの他端側とを電気的に結合させる。一方、ビット線ドライバＷＷＲｂは、トランジスタ１１６をオンし、接地電圧ＧＮＤとビット線ＳＢＬの一端側とを電気的に結合させる。これに伴い、ビット線ＳＢＬの他端側から一端側への電流経路が形成され、データ書込電流が流れる。なお、書込制御信号ＷＤＴｂが「Ｈ」レベルに設定される場合には、ビット線ＳＢＬの一端側から他端側への電流経路が形成され、データ書込電流が流れる。
【０１３７】
プログラムセルユニットＰＭＣＵａは、トンネル磁気抵抗素子ＴＭＲａと、接続部ＣＨａと、アクセストランジスタＡＴＲａ，ＦＴＲａとを含む。プログラムセルユニットＰＭＣＵａの構成は、実施の形態１で説明したメモリセルＰＭＣと同様の構成である。トンネル磁気抵抗素子ＴＭＲａは、ノードＮ４とノードＮ６との間に配置される。アクセストランジスタＡＴＲａは、接地電圧ＧＮＤと電気的に結合されたノードＮ６とノードＮ７との間に配置され、そのゲートは制御信号ＲＥＷの入力を受ける。接続部ＣＨａおよびアクセストランジスタＦＴＲａは、ノードＮ６とソース電圧の供給を受けるノードＮ８との間に直列に接続され、トランジスタのゲートは制御信号／ＤＡの入力を受ける。
【０１３８】
プログラムセルユニットＰＭＣＵｂは、トンネル磁気抵抗素子ＴＭＲｂと、接続部ＣＨｂと、アクセストランジスタＡＴＲｂ，ＦＴＲｂとを含む。プログラムセルユニットＰＭＣＵｂの構成は、実施の形態１で説明したメモリセルＰＭＣと同様の構成である。トンネル磁気抵抗素子ＴＭＲｂは、ノードＮ３とノードＮ５との間に配置される。アクセストランジスタＡＴＲｂは、接地電圧ＧＮＤと電気的に結合されたノードＮ５とノードＮ７との間に配置され、そのゲートはコントロール回路５からの制御信号ＲＥＷの入力を受ける。接続部ＣＨｂおよびアクセストランジスタＦＴＲｂは、ソース電圧の供給を受けるノードＮ８とノードＮ５との間に直列に接続され、そのトランジスタのゲートは制御信号ＤＡの入力を受ける。
【０１３９】
ラッチ回路１００は、出力ノードＮ０およびＮ１をイコライズするイコライズ回路１２０と、トランジスタ１０１〜１０４と、１０７とを含む。
【０１４０】
トランジスタ１０７は、電源電圧ＶｃｃとノードＮ２との間に配置され、そのゲートは制御信号ＷＥの入力を受ける。トランジスタ１０１はノードＮ２とノードＮ０との間に配置され、そのゲートはノードＮ１と電気的に結合される。トランジスタ１０２はノードＮ０とノードＮ３との間に配置され、そのゲートはノードＮ１と電気的に結合される。トランジスタ１０３は、ノードＮ２とノードＮ１との間に配置され、そのゲートはノードＮ０と電気的に結合される。トランジスタ１０４は、ノードＮ１とノードＮ４との間に配置され、そのゲートはノードＮ０と電気的に結合される。ここでは一例としてトランジスタ１０１，１０３，１０７は、ＰチャネルＭＯＳトランジスタとし、トランジスタ１０２，１０４は、ＮチャネルＭＯＳトランジスタとする。
【０１４１】
イコライズ回路１２０は、インバータ１０６とトランスファゲート１０５とを含み、制御信号ＰＯＲの入力を受けてノードＮ０とノードＮ１とを電気的に結合する。
【０１４２】
また、プログラムユニットＰＭＵは、ノードＮ３とノードＮ４とをイコライズするイコライズ回路１３０をさらに備える。イコライズ回路１３０は、ＯＲ回路１１０と、トランスファゲート１０８と、インバータ１０９とを含む。トランスファゲート１０８は、ノードＮ３とノードＮ４との間に配置され、ＯＲ回路１１０およびインバータ１０９を介するＯＲ回路の出力信号の入力を受けてノードＮ３とノードＮ４とを電気的に結合する。ＯＲ回路１１０は、制御信号ＰＯＲおよび制御信号ＷＥの入力に応答して、そのＯＲ論理演算結果をトランスファゲート１０８およびインバータ１０９に出力する。
【０１４３】
以下においては、本発明の実施の形態２に従うプログラムユニットＰＭＵにおいてプログラムデータのデータ書込およびデータ読出について詳細に説明する。
【０１４４】
図１７は、トンネル磁気抵抗素子ＴＭＲａおよびＴＭＲｂを用いてプログラムデータのデータ書込を実行する場合の概念図である。すなわち、上記のＭＴＪライトモードについて説明する。本例においては、プログラムデータ「０」を書込む場合について説明する。
【０１４５】
図１７を参照して、書込／読出制御ユニット１４０は、プログラムデータＰＤＩＮおよびコントロール回路５からのＭＴＪライトモードの動作指示の入力に応じて書込制御信号ＷＤＴａおよびＷＤＴｂを生成する。ここでは、書込制御信号ＷＤＴａおよびＷＤＴｂは、それぞれ「Ｈ」レベルおよび「Ｌ」レベルに設定されるものとする。
【０１４６】
これに伴い、ビット線ドライバＷＷＲａにおいてトランジスタ１１１がオンし、電源電圧Ｖｃｃとビット線ＳＢＬの他端側とが電気的に結合される。また、ビット線ドライバＷＷＲｂにおいてトランジスタ１１６がオンし、接地電圧ＧＮＤとビット線ＳＢＬの一端側とが電気的に結合される。また、イコライズ回路１３０は、ＭＴＪライトモード時にコントロール回路５により「Ｈ」レベルに設定される制御信号ＷＥに応答してノードＮ３とノードＮ４とを電気的に結合している。これによりビット線ＳＢＬにおいて他端側から一端側に対してデータ書込電流が供給される。
【０１４７】
また、同様のタイミングにおいて、デジット線ドライバ帯１６０が活性化される。これに伴い、デジット線ＤＬａおよびＤＬｂに対してデータ書込電流が供給される。このビット線ＳＢＬおよびデジット線ＤＬａ，ＤＬｂにそれぞれ供給されたデータ書込電流に応じてトンネル磁気抵抗素子ＴＭＲａおよびＴＭＲｂに対して所定磁界が印可され、磁化方向に応じたデータ書込を実行することができる。本例においては、トンネル磁気抵抗素子ＴＭＲａおよびＴＭＲｂを通過するビット線ＳＢＬのデータ書込電流の方向は互いに逆向きであるため、トンネル磁気抵抗素子ＴＭＲａの電気抵抗はＲｍｉｎとなり、トンネル磁気抵抗素子ＴＭＲｂの電気抵抗はＲｍａｘに設定される。これにより、このプログラムユニットＰＭＵのトンネル磁気抵抗素子を用いてプログラムデータ「０」をプログラムすることができる。
【０１４８】
図１８は、トンネル磁気抵抗素子ＴＭＲａおよびＴＭＲｂを用いてプログラムデータ「１」のデータ書込すなわちＭＴＪライトモードを実行する場合の概念図である。
【０１４９】
図１８を参照して、書込／読出制御ユニット１４０は、上記と同様の方式にしたがって書込制御信号ＷＤＴａおよびＷＤＴｂの電圧レベルをそれぞれ「Ｌ」レベルおよび「Ｈ」レベルに設定する。これに伴い、ビット線ＳＢＬの一端側から他端側へデータ書込電流が供給される。このビット線ＳＢＬを流れるデータ書込電流に応じてプログラムユニットＰＭＵのトンネル磁気抵抗素子ＴＭＲａおよびＴＭＲｂに対してプログラムデータ「１」を書込むことができる。なお、本例においてはトンネル磁気抵抗素子ＴＭＲａは電気抵抗値Ｒｍａｘを有し、トンネル磁気抵抗素子ＴＭＲｂは、電気抵抗値Ｒｍｉｎを有する。
【０１５０】
次に、プログラムユニットＰＭＵのトンネル磁気抵抗素子に記憶したプログラムデータを電源投入時に自動的に読出す場合のＭＴＪリードモードについて説明する。
【０１５１】
図１９は、本発明の実施の形態２に従うＭＴＪリードモードを説明する概念図である。本例においてはプログラムユニットＰＭＵにプログラムデータ「０」が予めトンネル磁気抵抗素子を用いて記憶されている場合のデータ読出について説明する。
【０１５２】
図２０のタイミングチャートを用いてＭＴＪリードモード時の動作について説明する。
【０１５３】
図１９および２０を参照して、時刻Ｔ０において電源電圧Ｖｃｃが投入される。この時点においては、電源電圧Ｖｃｃは、所定の閾値電圧レベル以下であり、制御信号ＰＯＲは、「Ｌ」レベルに設定されている。したがって、イコライズ回路１２０は、制御信号ＰＯＲ（「Ｌ」レベル）に応答してノードＮ０とノードＮ１とを電気的に接続し、ラッチ回路１００の出力ノードをイコライズしている。また、イコライズ回路１３０は、制御信号ＰＯＲ（「Ｌ」レベル）に応答してノードＮ３とノードＮ４とをイコライズするために電気的に接続している。また、ラッチ回路１００は、制御信号ＷＥ（「Ｌ」レベル）に応答して活性化され、電源電圧ＶｃｃがノードＮ２に供給され、ノードＮ０およびノードＮ１に充電が開始される。
【０１５４】
次に、電源投入後時刻Ｔ１において、電源電圧Ｖｃｃは所定の閾値電圧レベルに達し、制御信号ＰＯＲは、「Ｌ」レベルから「Ｈ」レベルに遷移する。これに応答してイコライズ回路１２０および１３０のイコライズが終了する。また、同様のタイミングにおいて、コントロール回路５は、制御信号ＲＥＷを活性化（「Ｈ」レベル）させる。
【０１５５】
これに伴い、アクセストランジスタＡＴＲａおよびＡＴＲｂがオンし、トンネル磁気抵抗素子ＴＭＲａおよびＴＭＲｂがそれぞれ接地電圧ＧＮＤと電気的に結合される。すなわち、ラッチ回路１００からトンネル磁気抵抗素子ＴＭＲａおよびＴＭＲｂに対して電気抵抗に応じた電流が供給される。
【０１５６】
時刻Ｔ２において、ノードＮ０およびＮ１に対してトンネル磁気抵抗素子ＴＭＲａおよびＴＭＲｂを通過する電流差に応じた電位差が生じるようになる。この電位差がラッチ回路１００によりさらに増幅されて出力ノードＮ０の電圧レベルは「Ｈ」レベルに設定され、出力ノードＮ１の電圧レベルは「Ｌ」レベルに設定される。
【０１５７】
次に、出力ノードＮ０およびＮ１の電圧レベルが十分に安定した時刻Ｔ３において、制御信号ＰＯＲ＃に基づいてゲートトランジスタＴＲＧａおよびＴＲＧｂはオンし、データ信号ＰＯ，／ＰＯがプログラム読出データとして出力される。これにより、プログラムユニットＰＭＵのトンネル磁気抵抗素子に記憶されたプログラムデータ「０」を電源投入時に自動的に読出すことができる。
【０１５８】
このようにして、プログラムセルユニットの記憶データをラッチ回路１００で増幅して出力することにより、安定したデータ読出を実行することができる。
【０１５９】
図２１は、プログラムユニットＰＭＵにプログラム「１」が記憶されている場合のＭＴＪリードモードを説明する概念図である。
【０１６０】
図２１を参照して、本発明の実施の形態２に従うＭＴＪリードモードは、図２０で示したのと同様の方式に従ってトンネル磁気抵抗素子ＴＭＲａおよびＴＭＲｂの電気抵抗に応じた電位差がノードＮ０およびノードＮ１に生成される。すなわち本例においてはノードＮ０およびノードＮ１のそれぞれは「Ｌ」レベルおよび「Ｈ」レベルに設定される。すなわち、データ信号ＰＯ，／ＰＯがそれぞれ「Ｌ」レベルおよび「Ｈ」レベルとして出力される。その他は図２０で説明したのと同様の読出動作が実行されるのでその詳細な説明は繰り返さない。
【０１６１】
次に、プログラムユニットＰＭＵの接続部ＣＨａ，ＣＨｂにプログラムデータを記憶する上述したヒューズブローモードについて説明する。
【０１６２】
図２２は、本発明の実施の形態２に従うヒューズブローモードを説明する概念図である。本例においては、接続部ＣＨａおよびＣＨｂを用いてプログラムデータ「０」を記憶する場合について説明する。
【０１６３】
図２２を参照して、ソース電圧ドライバ１５０は、コントロール回路５によってヒューズブローモード時に活性化される制御信号ＣＳＷａ（「Ｈ」レベル）の入力に応答してノードＮ８と電源電圧Ｖｃｃとを電気的に結合する。
【０１６４】
次に、書込／読出制御ユニット１４０は、コントロール回路５からのヒューズブローモードの動作指示に応答してプログラムデータＰＤＩＮに応じて制御信号ＤＡ，／ＤＡを生成する。本例においては、書込／読出制御ユニット１４０は、プログラムデータ「０」に対応して制御信号ＤＡ，／ＤＡを「Ｈ」レベルおよび「Ｌ」レベルにそれぞれ設定する。また、同様のタイミングにおいて、ヒューズブローモード時において、コントロール回路５は、制御信号ＲＥＷを「Ｈ」レベルに設定する。
【０１６５】
これに伴い、アクセストランジスタＦＴＲｂは、ターンオンし、ソース電圧ドライバ１５０から接続部ＣＨｂを経由して接地電圧ＧＮＤへ流れる電流経路が形成される。一方、アクセストランジスタＦＴＲａは、ターンオフ状態であるため接続部ＣＨａを経由する電流経路は形成されない。
【０１６６】
したがって、接続部ＣＨｂを通過する通過電流に基づいて接続部ＣＨｂは、ほぼ切断された状態へと変化する。すなわち、上述したように接続部ＣＨｂの電気抵抗は高抵抗状態に設定される。
【０１６７】
これに伴い、プログラムデータに応じて接続部ＣＨａおよびＣＨｂのいずれか一方を電気的に切断することによりプログラムデータを書込むことができる。
【０１６８】
図２３は、プログラムデータ「１」を接続部ＣＨａ，ＣＨｂを用いて書込む場合のヒューズブローモードについて説明する概念図である。
【０１６９】
図２３を参照して、ここでは図２２で説明したのと同様の方式に従って、制御信号ＣＳＷａに応答してノードＮ８に電源電圧Ｖｃｃが供給され、制御信号ＲＥＷは「Ｈ」レベルに設定される。本例においては、書込／読出制御ユニット１４０は、制御信号ＤＡ，／ＤＡを「Ｌ」レベルおよび「Ｈ」レベルにそれぞれ設定する。これに伴い、アクセストランジスタＦＴＲａがオンし、アクセストランジスタＦＴＲａおよびＡＴＲａを介して接続部ＣＨａを経由する電流経路が形成される。この接続部ＣＨａを流れる通過電流により接続部ＣＨａが切断され接続部ＣＨａの負荷抵抗は高抵抗状態に設定される。これによりプログラムデータ「１」を書込むことができる。
【０１７０】
次に、プログラムユニットＰＭＵの接続部ＣＨａおよびＣＨｂに記憶したプログラムデータを電源投入時に自動的に読出す場合のヒューズリードモードについて説明する。
【０１７１】
図２４は、本発明の実施の形態２に従うヒューズリードモードを説明する概念図である。本例においてはプログラムユニットＰＭＵにプログラムデータ「０」が予め接続部ＣＨａおよびＣＨｂを用いて記憶されている場合のデータ読出について説明する。
【０１７２】
図２５のタイミングチャートを用いてヒューズリードモード時の動作について説明する。
【０１７３】
図２４および２５を参照して、時刻Ｔ０において電源電圧Ｖｃｃが投入される。この時点においては、電源電圧Ｖｃｃは、所定の閾値電圧レベル以下であり、制御信号ＰＯＲは、「Ｌ」レベルに設定されている。したがって、イコライズ回路１２０は、制御信号ＰＯＲ（「Ｌ」レベル）に応答してノードＮ０とノードＮ１とを電気的に接続し、ラッチ回路１００の出力ノードをイコライズしている。また、イコライズ回路１３０は、制御信号ＰＯＲ（「Ｌ」レベル）に応答してノードＮ３とノードＮ４とをイコライズするために電気的に接続している。また、ラッチ回路１００は、制御信号ＷＥ（「Ｌ」レベル）に応答して活性化され、電源電圧ＶｃｃがノードＮ２に供給され、ノードＮ０およびノードＮ１に充電が開始される。また、制御信号ＣＳＷａは、初期状態である「Ｌ」レベルであり、制御信号ＣＳＷａに応答して、ソース電圧供給ノードＮ８には接地電圧ＧＮＤが供給される。
【０１７４】
次に、電源投入後時刻Ｔ１において、電源電圧Ｖｃｃは所定の閾値電圧レベルに達し、制御信号ＰＯＲは、「Ｌ」レベルから「Ｈ」レベルに遷移する。これに応答してイコライズ回路１２０および１３０のイコライズが終了する。また、同様のタイミングにおいて、書込／読出制御ユニット１４０は、制御信号ＤＡ，／ＤＡを共に「Ｈ」レベルに設定する。
【０１７５】
これに伴い、アクセストランジスタＦＴＲａおよびＦＴＲｂがオンし、接続部ＣＨａおよびＣＨｂがそれぞれ接地電圧ＧＮＤと電気的に結合される。すなわち、ラッチ回路１００から接続部ＣＨａおよびＣＨｂが有する電気抵抗に応じた電流が供給される。
【０１７６】
時刻Ｔ２において、ノードＮ０およびＮ１に対して接続部ＣＨａおよびＣＨｂを通過する電流差に応じた電位差が生じるようになる。この電位差がラッチ回路１００によりさらに増幅されて出力ノードＮ０の電圧レベルは「Ｈ」レベルに設定され、出力ノードＮ１の電圧レベルは「Ｌ」レベルに設定される。
【０１７７】
次に、出力ノードＮ０およびＮ１の電圧レベルが十分に安定した時刻Ｔ３において、制御信号ＰＯＲ＃に基づいてゲートトランジスタＴＲＧａおよびＴＲＧｂをオンし、データ信号ＰＯ，／ＰＯがプログラムデータとして出力される。これにより、プログラムユニットＰＭＵに記憶されたプログラムデータ「０」を読出すことができる。本ヒューズリードモードにおいては、電流差すなわち電位差は、上述したように接続部ＣＨｂの電気抵抗に依存するためトンネル磁気抵抗素子の電気抵抗値を考慮する必要は無い。
【０１７８】
図２６は、接続部ＣＨａ，ＣＨｂに格納されたプログラムデータ「１」をヒューズリードモードについて説明する概念図である。
【０１７９】
図２６を参照して、本発明の実施の形態２に従うヒューズリードモードは、図２５で示したのと同様の方式に従って接続部ＣＨａおよびＣＨｂの電気抵抗に応じた電位差がノードＮ０およびノードＮ１に生成される。すなわち本例においてはノードＮ０およびノードＮ１のそれぞれは「Ｌ」レベルおよび「Ｈ」レベルに設定される。すなわち、データ信号ＰＯ，／ＰＯがそれぞれ「Ｌ」レベルおよび「Ｈ」レベルとして出力される。その他は図２５で説明したのと同様の読出動作が実行されるのでその詳細な説明は繰り返さない。
【０１８０】
上記の構成に従い、電源投入時に自動的に記憶したプログラムデータが復号されるプログラムユニットＰＭＵを構成することができる。したがって、プログラムデータのデータ読出動作に掛かる時間を短縮し、プログラム情報に基づく動作を高速に実行することができる。
【０１８１】
プログラムユニットＰＭＵをプログラムセルユニットＰＭＣＵａ，ＰＭＣＵｂで構成することにより種々のデータ書込により複数のプログラムデータを記憶することができる。具体的には、ＭＴＪライトモードやヒューズブローモードを用いて１つのメモリセルＰＭＣに対して２ビットのプログラムデータを記憶することができる。
【０１８２】
したがって、出荷前においてメモリセルＰＭＣに対して不良アドレス等のプログラム情報を記憶させた場合であって、出荷後にさらに不良アドレス等のプログラム情報を記憶させる必要が生じた場合においても本実施の形態に従うプログラム素子を用いることにより容易に対応することが可能である。また、トンネル磁気抵抗素子ＴＭＲａ等のプログラムデータが破壊された場合には、接続部ＣＨａ等を用いることにより再度プログラムデータを回復させることができる。
【０１８３】
また、プログラムユニットＰＭＵは、相補のプログラムデータをプログラムセルユニットＰＭＣＵａおよびＰＭＣＵｂにそれぞれ書込むため安定的なデータ読出を実行することができる。
【０１８４】
また、トンネル磁気記憶部と同様のプログラムデータを、固定的に状態を変化させる接続部に書込むことにより、磁気ノイズ等によってトンネル磁気記憶部のプログラムデータが消失してしまった場合の救済を図ることが可能である。
【０１８５】
なお、上記においては、プログラムセルユニットＰＭＣＵａ（ＰＭＣＵｂ）に接続部ＣＨａ（ＣＨｂ）と電流経路を選択的に生成するためのアクセストランジスタＦＴＲａ（ＦＴＲｂ）を１つ設ける構成について説明したが、複数の接続部ＣＨａ（ＣＨｂ）と、それに対応して設けられる複数のアクセストランジスタＦＴＲａ（ＦＴＲｂ）を設けることにより、２ビット以上のプログラムデータを１つのプログラムユニットＰＭＵに対して記憶することも可能である。
【０１８６】
また、本実施の形態２においては、１つのプログラムユニットＰＭＵで構成されるプログラム回路について説明したが、複数のプログラムユニットＰＭＵでプログラム回路を構成することも可能である。
【０１８７】
また、本実施の形態２においては、ラッチ回路１００において、トンネル磁気抵抗素子ＴＭＲｂ側のノードＮ３およびトンネル磁気抵抗素子ＴＭＲａ側のノードＮ４と、ラッチ回路１００とを電気的に直接結合させる構成について上記において説明したがこれに限られず他の構成にしたがって、プログラムセルユニットＰＭＣＵａおよびＰＭＣＵｂに記憶されたプログラムデータをラッチ回路１００においてラッチすることも可能である。具体的には、ラッチ回路１００のトランジスタ１０２とノードＮ３およびラッチ回路１００のトランジスタ１０４とノードＮ４との間にそれぞれ選択的に活性化されるトランジスタを設けた構成とし、当該トランジスタを制御することによりプログラムセルユニットＰＭＣＵａおよびＰＭＣＵｂのプログラムデータをラッチすることも可能である。
【０１８８】
さらに、本例は、１つのプログラムユニットＰＭＵに対して２ビット以上のプログラムセルユニットが複数個配置された構成である。これに伴い、各々のプログラムセルユニットは、個々独立のデータを記憶することが可能である。このプログラムセルユニットに対して、選択的に制御信号（ＤＡ，／ＤＡ、ＲＷＥ）を入力することにより、制御信号に応じた記憶したプログラムデータを独立に読出すことが可能である。したがって、効率的にプログラムデータを活用することが可能である。
【０１８９】
（実施の形態３）
本発明の実施の形態３においては、実施の形態２で説明したプログラムユニットＰＭＵをＦＰＧＡ（Ｆｉｅｌｄ　Ｐｒｏｇｒａｍｍａｂｌｅ　Ｇａｔｅ　Ａｒｒａｙ）に従うシステムへ適用する場合について説明する。ＦＰＧＡとは、予め作り込まれた内部回路に対して後から外部からのデータ等を与えることにより所定の動作を実現するように変更することができる半導体装置である。一般的に、この動作変更に用いられるプログラム情報が内部回路内の所定領域に記憶されている。
【０１９０】
図２７は、アレイ状に配列された複数の回路ブロックを含むＦＰＧＡの概念図である。
【０１９１】
図２７を参照して、本発明の実施の形態３に従うＦＰＧＡは、行列状に配置された複数の回路ブロックＢＫを含み、これらのブロック間には配線領域が設けられている。また、配線領域には行方向に複数の水平配線群ＸＧと、列方向に複数の垂直配線群ＹＧとが設けられている。
【０１９２】
回路ブロックＢＫの各々は、隣接する垂直配線群ＹＧからのデータ信号の入力を受ける入力インターフェイス部ＩＦと、隣接する水平配線群ＸＧに回路ブロックの動作によって得られた出力結果を出力する出力インターフェイス部ＯＦとを含む。また、回路ブロックＢＫと配線領域とを電気的に接続するためのスイッチ部ＣＯＮが設けられている。このスイッチ部ＣＯＮの接続によって各回路ブロック間ＢＫの接続関係が決定される。
【０１９３】
図２８は、スイッチ部の構成を示す概念図である。
図２８を参照して、スイッチ部ＣＯＮは、行列上に配置された複数のトランジスタＰＴＲと、複数のトランジスタにそれぞれ対応して設けられた複数のプログラムユニットＰＭＵとを含む。ブロック間に設けられた配線領域には垂直配線および水平配線がそれぞれ設けられ、トランジスタのターンオンに応答して水平配線からの信号が選択的に垂直配線に伝達される。この水平配線から垂直配線への信号経路の切換を実行するトランジスタＰＴＲの接続制御に実施の形態２で説明したプログラムユニットを用いる。
【０１９４】
これに伴い、上記の実施の形態２で説明したように、電源投入時には制御信号ＰＯＲに応答して予め格納されたプログラムデータに基づいて自動的に初期状態の接続設定状態にすることが可能である。すなわち、途中でプログラムがハングアップした場合等において、システムをリセットする制御信号ＰＯＲを用いることによって基本動作のプログラムデータを復号させる。これに伴い、初期状態に再設定することが可能となり、システムのフェールセーフと安定性の向上を図ることができる。
【０１９５】
また、プログラムユニットＰＭＵのトンネル磁気抵抗素子ＴＭＲａ等をＦＰＧＡのシステム変更用のプログラム素子として用いることにより無限回のシステムの機能切換の接続制御が可能である。
【０１９６】
また、本例は、１つのプログラムユニットＰＭＵに対して２ビット以上のプログラムセルユニットが複数個配置された構成である。これに伴い、各々のプログラムセルユニットは、個々独立のデータを記憶することが可能である。このプログラムセルユニットに対して、選択的に制御信号（ＤＡ，／ＤＡ、ＲＷＥ）を入力することにより、制御信号に応答した記憶したプログラムデータを独立に読出すことが可能である。したがって、効率的にプログラムデータを用いるすなわち、その読出されたプログラムデータに基づいて自由にシステムを設計変更することができる。なお、このプログラムデータの読出に関しては一度、ラッチ回路のノードＮ０，Ｎ１を短絡後、プログラムセルユニットに対して制御信号を入力することにより実施の形態２で説明した種々のデータ読出を実行することができる。これに伴い、高速なデータ読出を実現することが可能となり、システムの設計変更を高速に実行することができる。
【０１９７】
なお、本発明の実施の形態３に従うプログラムユニットの種々のデータ書込等については、図示しないシステム全体を管理制御するコントロール回路から実施の形態２で説明したのと同様の制御信号等およびプログラムデータＰＤＩＮが各プログラムユニットに与えられ、実施の形態２で説明した種々のデータ書込の方式にしたがって実行されるものとする。
【０１９８】
また、実施の形態２で説明したようなＭＴＪライトモード等を実行することにより別のプログラムデータに基づく再設定にしたがって、接続制御の切換が可能であり、自由なシステム設計を実行することができる。
【０１９９】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【０２００】
【発明の効果】
本発明の薄膜磁性体記憶装置は、プログラムセルおよびメモリセルの各々が磁気記憶部を含み、プログラムセルは、さらに状態変化部を含む。したがって、プログラムセルは、メモリセルと同様の構造にさらに状態変化部を付加した構成である。すなわち磁気記憶部等についてはメモリセルと同様の設計が可能であり、効率的なプログラムセルを設けることができる。
【０２０１】
また、本発明の薄膜磁性体記憶装置は、データ読出時に状態変化部を互いに直列に接続してデータ読出電流を通過させるアクセス素子を含む。これにより、各状態変化部の電気抵抗に対応する各プログラムデータを一度に読出すことが可能であり、データ読出の時間を短縮することができる。
【０２０２】
さらに、本発明の薄膜磁性体記憶装置は、プログラムユニットにおいて、各々がアクセス指示および印加磁界のいずれか一方に応答して電気抵抗が変化する複数の状態変化部を含む。これによりプログラムユニットは、複数ビットのプログラムデータを記憶することができ効率的なデータ記憶を実行することができる。
【０２０３】
さらに、本発明の薄膜磁性体記憶装置は、プログラムユニットにおいて、互いに電気抵抗が異なる第１および第２のプログラムセルを有する。これに伴い、第１および第２のプログラムセルの電気抵抗の比較に基づいてプログラムデータを読出すことが可能であり、安定的なデータ読出を実行することができる。
【０２０４】
さらに、本発明の薄膜磁性体記憶装置は、少なくとも１個のプログラムセルを含み、プログラムセルは、磁気記憶部と状態変化部とを有する。また、磁気記憶部および状態変化部の少なくとも一方に基づいて出力されるプログラム信号を増幅する増幅回路をさらに設ける。これに伴い、プログラムユニットから増幅されたプログラム信号を出力することができるため安定的なプログラムデータを読み出すことができる。
【０２０５】
さらに、本発明の薄膜磁性体記憶装置は、複数の回路ブロック間の信号伝送経路を複数のスイッチ部が設定し、スイッチ制御部は、対応するスイッチ部を制御する。また、スイッチ制御部は、不揮発的な電気抵抗を有する第１および第２のプログラムセルで構成される。これに従い、不揮発的な電気抵抗に基づくデータ信号によりスイッチ部を制御することができるため効率的なスイッチ制御を実行することができる。
【図面の簡単な説明】
【図１】本発明の実施の形態に従うＭＲＡＭデバイス１の全体構成を示す概略ブロック図である。
【図２】磁気トンネル接合部を有するＭＴＪメモリセルＭＣの構成を示す概略図である。
【図３】メモリセルＭＣに対するデータ書込動作を説明する概念図である。
【図４】データ書込時におけるデータ書込電流とトンネル磁気抵抗素子の磁化方向との関連を示す概念図である。
【図５】メモリセルＭＣからのデータ読出動作を説明する概念図である。
【図６】半導体基板上に形成されたメモリアレイ１０に含まれるメモリセルＭＣの断面図である。
【図７】本発明の実施の形態１に従うプログラム回路４０の概念図である。
【図８】本発明の実施の形態１に従うプログラム情報を記憶するメモリセルＰＭＣを詳細に示す回路構成図である。
【図９】半導体基板上に形成されたメモリアレイ１０＃に含まれるメモリセルＰＭＣの断面図である。
【図１０】本発明の実施の形態１に従うメモリアレイ１０♯およびその周辺領域の回路構成図である。
【図１１】本発明の実施の形態１に従うメモリセルＰＭＣに対してＭＴＪライトモードを実行する場合の概念図である。
【図１２】本発明の実施の形態１に従うメモリセルＰＭＣに対してＭＴＪリードモードを実行する場合の概念図である。
【図１３】本発明の実施の形態１に従うメモリセルＰＭＣに対してヒューズブローモードを実行する場合の概念図である。
【図１４】本発明の実施の形態１に従うメモリセルＰＭＣに対してヒューズリードモードを実行する場合の概念図である。
【図１５】本発明の実施の形態１に従うメモリセルＰＭＣに対してＭＴＪブローモードを実行した場合の概念図である。
【図１６】本発明の実施の形態２に従うプログラム素子を構成するプログラムユニットＰＭＵの回路構成図である。
【図１７】トンネル磁気抵抗素子ＴＭＲａおよびＴＭＲｂを用いてプログラムデータのデータ書込を実行する場合の概念図である。
【図１８】トンネル磁気抵抗素子ＴＭＲａおよびＴＭＲｂを用いてＭＴＪライトモードを実行する場合の概念図である。
【図１９】本発明の実施の形態２に従うＭＴＪリードモードを説明する概念図である。
【図２０】ＭＴＪリードモード時の動作について説明するタイミングチャート図である。
【図２１】プログラムユニットＰＭＵにプログラム「１」が記憶されている場合のＭＴＪリードモードを説明する概念図である。
【図２２】本発明の実施の形態２に従うヒューズブローモードを説明する概念図である。
【図２３】プログラムデータ「１」を接続部ＣＨａ，ＣＨｂを用いて書込む場合のヒューズブローモードについて説明する概念図である。
【図２４】本発明の実施の形態２に従うヒューズリードモードを説明する概念図である。
【図２５】ヒューズリードモード時の動作について説明するタイミングチャート図である。
【図２６】接続部ＣＨａ，ＣＨｂに格納されたプログラムデータ「１」をヒューズリードモードについて説明する概念図である。
【図２７】アレイ状に配列された複数の回路ブロックを含むＦＰＧＡの概念図である。
【図２８】スイッチ部の構成を示す概念図である。
【符号の説明】
１　ＭＲＡＭデバイス、５　コントロール回路、５＃　サブコントロール回路、１０，１０＃　メモリアレイ、２０，２０＃　行デコーダ、２５，２５＃　列デコーダ、３０，３０＃，３５，３５＃　読出／書込制御回路、４０　プログラム回路、４５　冗長制御回路。
【図１】
2004110992.tif 000003
【図２】
2004110992.tif 000004
【図３】
2004110992.tif 000005
【図４】
2004110992.tif 000006
【図５】
2004110992.tif 000007
【図６】
2004110992.tif 000008
【図７】
2004110992.tif 000009
【図８】
2004110992.tif 000010
【図９】
2004110992.tif 000011
【図１０】
2004110992.tif 000012
【図１１】
2004110992.tif 000013
【図１２】
2004110992.tif 000014
【図１３】
2004110992.tif 000015
【図１４】
2004110992.tif 000016
【図１５】
2004110992.tif 000017
【図１６】
2004110992.tif 000018
【図１７】
2004110992.tif 000019
【図１８】
2004110992.tif 000020
【図１９】
2004110992.tif 000021
【図２０】
2004110992.tif 000022
【図２１】
2004110992.tif 000023
【図２２】
2004110992.tif 000024
【図２３】
2004110992.tif 000025
【図２４】
2004110992.tif 000026
【図２５】
2004110992.tif 000027
【図２６】
2004110992.tif 000028
【図２７】
2004110992.tif 000029
【図２８】
2004110992.tif 000030