(57)【特許請求の範囲】
【請求項１】
各々が磁気的にデータ記憶を実行する複数のメモリセルが行列状に配置されたメモリアレイを備え、
各前記メモリセルは、２通りの方向のいずれかに磁化されることによってデータ記憶を実行する磁気記憶部を有し、
前記複数のメモリセルに対するデータ読出およびデータ書込の少なくとも一方に用いる情報を記憶するためのプログラム回路をさらに備え、
前記プログラム回路は、各々が、前記情報を構成するプログラムデータをプログラム状態時に記憶する複数のプログラムユニットを含み、
各前記プログラムユニットは、各々が２通りの方向のいずれかに磁化される２個のプログラムセルを有し、
各前記プログラムユニットにおいて、前記プログラム状態時には、前記２個のプログラムセルのうちの一方のプログラムセルは、非プログラム状態時と異なる方向に磁化され、
各前記磁気記憶部および各前記プログラムセルは、同様の構造を有し、
各前記プログラムユニットにおいて、非プログラム状態のときは、各前記プログラムセルは同一の方向に磁化され、
各前記磁気記憶部の初期状態における磁化方向と、各前記プログラムセルの前記非プログラム状態における磁化方向とは同一である、薄膜磁性体記憶装置。
【請求項２】
各々が磁気的にデータ記憶を実行する複数のメモリセルが行列状に配置されたメモリアレイを備え、
各前記メモリセルは、２通りの方向のいずれかに磁化されることによってデータ記憶を実行する磁気記憶部を有し、
前記複数のメモリセルに対するデータ読出およびデータ書込の少なくとも一方に用いる情報を記憶するためのプログラム回路をさらに備え、
前記プログラム回路は、各々が、前記情報を構成するプログラムデータをプログラム状態時に記憶する複数のプログラムユニットを含み、
各前記プログラムユニットは、各々が２通りの方向のいずれかに磁化される２個のプログラムセルを有し、
各前記プログラムユニットにおいて、前記プログラム状態時には、前記２個のプログラムセルのうちの一方のプログラムセルは、非プログラム状態時と異なる方向に磁化され、
各前記磁気記憶部および各前記プログラムセルにおける前記２通りの磁化方向は、それぞれにおける固有の磁化容易軸に沿って設定され、
各前記磁気記憶部および各前記プログラムセルは、両者の前記磁化容易軸が同一方向に沿うように配置される、薄膜磁性体記憶装置。
【請求項３】
各々が磁気的にデータ記憶を実行する複数のメモリセルが行列状に配置されたメモリアレイを備え、
各前記メモリセルは、２通りの方向のいずれかに磁化されることによってデータ記憶を実行する磁気記憶部を有し、
前記複数のメモリセルに対するデータ読出およびデータ書込の少なくとも一方に用いる情報を記憶するためのプログラム回路をさらに備え、
前記プログラム回路は、各々が、前記情報を構成するプログラムデータをプログラム状態時に記憶する複数のプログラムユニットを含み、
各前記プログラムユニットは、各々が２通りの方向のいずれかに磁化される２個のプログラムセルを有し、
各前記プログラムユニットにおいて、前記プログラム状態時には、前記２個のプログラムセルのうちの一方のプログラムセルは、非プログラム状態時と異なる方向に磁化され、
各前記磁気記憶部および各前記プログラムセルは、
固定方向に磁化された第１の磁化層と、
記憶するデータに応じて、前記第１の磁化層と同一方向および反対方向のいずれかに磁化される第２の磁化層と、
前記第１および第２の磁化層の間に形成される絶縁膜とを有し、
前記非プログラム状態の各前記プログラムセルおよび初期状態の各前記磁気記憶部において、前記第１および第２の磁化層は、同一方向に沿って磁化される、薄膜磁性体記憶装置。
【請求項４】
各前記磁気記憶部を前記初期状態に磁化するための工程と、各前記プログラムセルを前記非プログラム状態に磁化するための工程とは同時に実行される、請求項１から３のいずれかに記載の薄膜磁性体記憶装置。
【請求項５】
各々が磁気的にデータ記憶を実行する複数のメモリセルが行列状に配置されたメモリアレイを備え、
各前記メモリセルは、２通りの方向のいずれかに磁化されることによってデータ記憶を実行する磁気記憶部を有し、
前記複数のメモリセルに対するデータ読出およびデータ書込の少なくとも一方に用いる情報を記憶するためのプログラム回路をさらに備え、
前記プログラム回路は、各々が、前記情報を構成するプログラムデータをプログラム状態時に記憶する複数のプログラムユニットを含み、
各前記プログラムユニットは、各々が２通りの方向のいずれかに磁化される２個のプログラムセルを有し、
各前記プログラムユニットにおいて、前記プログラム状態時には、前記２個のプログラムセルのうちの一方のプログラムセルは、非プログラム状態時と異なる方向に磁化され、
各前記プログラムセルは、前記２通りの磁化方向にそれぞれ対応して、第１および第２の電気抵抗をそれぞれ有し、
各前記プログラムユニットは、さらに、各前記プログラムセルに対応して設けられるカレントセンス回路を有し、
前記カレントセンス回路は、前記プログラムセルからのプログラムデータ読出時において、対応するプログラムセルにバイアス電圧を印加するとともに、前記バイアス電圧よって前記対応するプログラムセルを流れる電流に応じた２値的な電圧信号を出力し、
前記プログラムユニットは、さらに、各前記カレントセンス回路から出力された前記２値的な電圧信号のレベルに応じて、前記プログラム状態および前記非プログラム状態のいずれに設定されているかを示す第１のプログラム信号を出力するための論理ゲートを有し、
前記プログラムユニットは、前記２値的な電圧信号の一部を、前記プログラムデータのレベルを示すための第２のプログラム信号として出力する、薄膜磁性体記憶装置。
【請求項６】
前記カレントセンス回路は、前記第１および第２の電気抵抗の中間値に相当する基準抵抗および前記対応するプログラムセルの各々に前記バイアス電圧を印加するとともに、前記基準抵抗および前記対応するプログラムセルをそれぞれ流れる電流の差を増幅して前記２値的な電圧信号を出力する、請求項５に記載の薄膜磁性体記憶装置。
【請求項７】
各々が磁気的にデータ記憶を実行する複数のメモリセルが行列状に配置されたメモリアレイを備え、
各前記メモリセルは、２通りの方向のいずれかに磁化されることによってデータ記憶を実行する磁気記憶部を有し、
前記複数のメモリセルに対するデータ読出およびデータ書込の少なくとも一方に用いる情報を記憶するためのプログラム回路をさらに備え、
前記プログラム回路は、各々が、前記情報を構成するプログラムデータをプログラム状態時に記憶する複数のプログラムユニットを含み、
各前記プログラムユニットは、各々が２通りの方向のいずれかに磁化される２個のプログラムセルを有し、
各前記プログラムユニットにおいて、前記プログラム状態時には、前記２個のプログラムセルのうちの一方のプログラムセルは、非プログラム状態時と異なる方向に磁化され、
前記プログラムセルからのプログラムデータ読出時において、前記プログラムセルに印加されるバイアス電圧は、通常のデータ読出時において各前記磁気記憶部に印加される電圧よりも低い、薄膜磁性体記憶装置。
【請求項８】
各々が磁気的にデータ記憶を実行する複数のメモリセルが行列状に配置されたメモリアレイを備え、
各前記メモリセルは、２通りの方向のいずれかに磁化されることによってデータ記憶を実行する磁気記憶部を有し、
前記複数のメモリセルに対するデータ読出およびデータ書込の少なくとも一方に用いる情報を記憶するためのプログラム回路をさらに備え、
前記プログラム回路は、各々が、前記情報を構成するプログラムデータをプログラム状態時に記憶する複数のプログラムユニットを含み、
各前記プログラムユニットは、各々が２通りの方向のいずれかに磁化される２個のプログラムセルを有し、
各前記プログラムユニットにおいて、前記プログラム状態時には、前記２個のプログラムセルのうちの一方のプログラムセルは、非プログラム状態時と異なる方向に磁化され、
前記プログラムセルからのプログラムデータ読出時において、各前記プログラムセルにバイアス電圧が印加される期間は、通常のデータ読出時において、各前記磁気記憶部に電圧が印加される期間よりも短い、薄膜磁性体記憶装置。
【請求項９】
各々が磁気的にデータ記憶を実行する複数のメモリセルが行列状に配置されたメモリアレイを備え、
各前記メモリセルは、２通りの方向のいずれかに磁化されることによってデータ記憶を実行する磁気記憶部を有し、
前記複数のメモリセルに対するデータ読出およびデータ書込の少なくとも一方に用いる情報を記憶するためのプログラム回路をさらに備え、
前記プログラム回路は、各々が、前記情報を構成するプログラムデータをプログラム状態時に記憶する複数のプログラムユニットを含み、
各前記プログラムユニットは、各々が２通りの方向のいずれかに磁化される２個のプログラムセルを有し、
各前記プログラムユニットにおいて、前記プログラム状態時には、前記２個のプログラムセルのうちの一方のプログラムセルは、非プログラム状態時と異なる方向に磁化され、
各前記プログラムユニットは、プログラムデータ読出時において、前記２個のプログラムセルの磁化方向に応じて、前記プログラム状態および前記非プログラム状態のいずれに設定されているかを示す第１のプログラム信号および前記プログラムデータのレベルを示すための第２のプログラム信号を出力し、
前記プログラム回路は、さらに、各前記プログラムユニットに対応して配置され、対応するプログラムユニットから出力された前記第１および第２のプログラム信号を保持するためのデータラッチ回路を含み、
前記プログラムデータ読出は、前記薄膜磁性体記憶装置の電源起動に応答して実行され、
各前記データラッチ回路は、前記電源が起動されてから遮断されるまでの期間、前記第１および第２のプログラム信号を保持する、薄膜磁性体記憶装置。
【請求項１０】
各々が磁気的にデータ記憶を実行する複数のメモリセルが行列状に配置されたメモリアレイを備え、
各前記メモリセルは、２通りの方向のいずれかに磁化されることによってデータ記憶を実行する磁気記憶部を有し、
前記複数のメモリセルに対するデータ読出およびデータ書込の少なくとも一方に用いる情報を記憶するためのプログラム回路をさらに備え、
前記プログラム回路は、各々が、前記情報を構成するプログラムデータをプログラム状態時に記憶する複数のプログラムユニットを含み、
各前記プログラムユニットは、各々が２通りの方向のいずれかに磁化される２個のプログラムセルを有し、
各前記プログラムユニットにおいて、前記プログラム状態時には、前記２個のプログラムセルのうちの一方のプログラムセルは、非プログラム状態時と異なる方向に磁化され、
各前記プログラムユニットにおいて、非プログラム状態のときは、各前記プログラムセルは同一の方向に磁化され、
各前記プログラムセルは、磁化困難軸に沿った第１のプログラム磁界および磁化容易軸に沿った第２のプログラム磁界によって磁化され、
前記プログラム回路は、さらに、
同一の各前記プログラムユニットを構成する前記２個のプログラムセルに共通に設けられ、プログラムデータ書込時に前記第１のプログラム磁界を生じさせる第１のプログラム電流を流すためのプログラム選択線と、
前記２個のプログラムセルにそれぞれ対応して設けられ、前記プログラムデータ書込時に前記第２のプログラム磁界を生じさせる第２のプログラム電流を流すための第１および第２のプログラムデータ線とを含み、
前記第１および第２のプログラムデータ線を流れる前記第２のプログラム電流の向きは、互いに反対方向に設定される、薄膜磁性体記憶装置。
【請求項１１】
前記プログラム回路は、さらに、
前記第１および第２のプログラムデータ線の一端のそれぞれを、前記プログラムデータのレベルに応じて第１および第２の電圧の一方ずつと接続する電圧設定部と、
少なくとも前記プログラムデータ書込時において、前記第１および第２のプログラムデータ線の他端同士を電気的に結合するためのプログラムデータ線接続部とを含む、請求項１０に記載の薄膜磁性体記憶装置。
【請求項１２】
各前記磁気記憶部は、磁化困難軸に沿った第１のデータ書込磁界および磁化容易軸に沿った第２のデータ書込磁界によって磁化され、
各前記磁気記憶部および各前記プログラムセルは、同様の構造および磁化特性を有し、
前記薄膜磁性体記憶装置は、さらに、
メモリセル行にそれぞれ対応して設けられ、各々が、選択行において前記第１のデータ書込磁界を生じさせる第１のデータ書込電流を流すための複数の書込選択線と、
メモリセル列にそれぞれ対応して設けられ、各々が、選択列において前記第２のデータ書込磁界を生じさせる第２のデータ書込電流を流すための複数の書込データ線と、
前記選択行の書込選択線に対して、所定電流を前記第１のデータ書込電流として供給するための電流供給回路とを備え、
前記電流供給回路は、前記プログラムデータ書込時において、前記所定電流を前記第１のプログラム電流として、前記プログラム選択線へ供給する、請求項１０に記載の薄膜磁性体記憶装置。
【請求項１３】
各前記磁気記憶部は、磁化困難軸に沿った第１のデータ書込磁界および磁化容易軸に沿った第２のデータ書込磁界によって磁化され、
各前記磁気記憶部および各前記プログラムセルは、同様の構造および磁化特性を有し、
前記薄膜磁性体記憶装置は、さらに、
メモリセル行にそれぞれ対応して設けられ、各々が、選択行において前記第１のデータ書込磁界を印加する第１のデータ書込電流を流すための複数の書込選択線と、
メモリセル列にそれぞれ対応して設けられ、各々が、選択列において前記第２のデータ書込磁界を印加する第２のデータ書込電流を流すための複数の書込データ選択線と、
前記選択列の書込データ線に対して、所定電流を前記第２のデータ書込電流として供給するための電流供給回路とを備え、
前記電流供給回路は、前記プログラムデータ書込時において、前記所定電流を前記第２のプログラム電流として、前記プログラムデータ線へ供給する、請求項１０に記載の薄膜磁性体記憶装置。
【請求項１４】
各々が磁気的にデータ記憶を実行する複数のメモリセルが行列状に配置されたメモリアレイを備え、
各前記メモリセルは、２通りの方向のいずれかに磁化されることによってデータ記憶を実行する磁気記憶部を有し、
前記複数のメモリセルに対するデータ読出およびデータ書込の少なくとも一方に用いる情報を記憶するためのプログラム回路をさらに備え、
前記プログラム回路は、各々が、前記情報を構成するプログラムデータをプログラム状態時に記憶する複数のプログラムユニットを含み、
各前記プログラムユニットは、各々が２通りの方向のいずれかに磁化される２個のプログラムセルを有し、
各前記プログラムユニットにおいて、前記プログラム状態時には、前記２個のプログラムセルのうちの一方のプログラムセルは、非プログラム状態時と異なる方向に磁化され、
各前記プログラムセルは、直列に接続された複数の磁気抵抗素子を有し、
各前記磁気抵抗素子は、各前記磁気記憶部と同様の構造および磁化特性を有する、薄膜磁性体記憶装置。
【請求項１５】
前記メモリアレイは、
前記複数のメモリセルの所定単位に対応して配置され、欠陥メモリセルを含む前記所定単位を置換するための冗長回路をさらに含み、
前記プログラム回路に記憶される前記情報は、前記欠陥メモリセルを含む前記所定単位を特定するための不良アドレスを含み、
前記薄膜磁性体記憶装置は、
入力されたアドレス信号のうちの前記所定単位を選択するための少なくとも一部と、前記プログラム回路に記憶された前記不良アドレスとの比較結果に基づいて、前記冗長回路へのアクセスを制御するための冗長制御回路をさらに備える、請求項１４に記載の薄膜磁性体記憶装置。
【請求項１６】
前記冗長制御回路は、前記不良アドレスが前記アドレス信号よって選択された場合には、前記冗長回路へのアクセスを指示するとともに、前記アドレス信号に対応する所定単位へのアクセスの中止を指示する、請求項１５に記載の薄膜磁性体記憶装置。
【請求項１７】
前記冗長制御回路における前記比較結果に応じた電気信号を出力するためのモニタ端子をさらに備える、請求項１５に記載の薄膜磁性体記憶装置。
【請求項１８】
薄膜磁性体記憶装置であって、
各々が磁気的にデータを記憶する複数のメモリセルが配置されたメモリアレイを備え、
各前記メモリセルは、前記データに応じた方向に磁化されることによって、第１の電気抵抗と前記第１の電気抵抗より大きい第２の電気抵抗とのいずれかを有する磁気抵抗素子を含み、
各々が、前記薄膜磁性体記憶装置の動作時に用いられる情報のプログラムに用いられる１ビットのプログラム信号を記憶するための複数のプログラムレジスタをさらに備え、
各前記プログラムレジスタは、磁化方向に応じて変化する電気抵抗を有する複数のプログラム素子を含み、
各前記プログラム素子は、記憶される前記１ビットのプログラム信号に応じて、前記第１の電気抵抗より小さい第３の電気抵抗と前記第３の電気抵抗より大きい第４の電気抵抗とのいずれかを有し、
前記第１および第２の電気抵抗の比と、前記第３および第４の電気抵抗との比は同等である、薄膜磁性体記憶装置。
【請求項１９】
各前記磁気抵抗素子および各前記プログラム素子は、
固定方向に磁化された第１の磁化層と、
記憶する前記データおよび前記プログラム信号にそれぞれ応じて、前記第１の磁化層と同一方向および反対方向のいずれかに磁化される第２の磁化層と、
前記第１および第２の磁化層の間に形成される絶縁膜とを有し、
各前記プログラム素子において、前記プログラム信号の読出時に前記第１および第２の磁化層と前記絶縁層とにおける電流通過面積は、各前記磁気抵抗素子において、前記データの読出時に前記第１および第２の磁化層と前記絶縁層とにおける電流通過面積よりも大きい、請求項１８に記載の薄膜磁性体記憶装置。
【請求項２０】
各前記磁気抵抗素子および各前記プログラム素子は、
固定方向に磁化された第１の磁化層と、
記憶する前記データおよび前記プログラム信号にそれぞれ応じて、前記第１の磁化層と同一方向および反対方向のいずれかに磁化される第２の磁化層と、
前記第１および第２の磁化層の間に形成される絶縁膜とを有し、
各前記プログラム素子において、前記プログラム信号の読出時に前記第１および第２の磁化層の間に印加される電圧差は、各前記磁気抵抗素子において、前記データの読出時に前記第１および第２の磁化層の間に印加される電圧差よりも小さい、請求項１８に記載の薄膜磁性体記憶装置。
【請求項２１】
対を成す２個ずつの前記プログラムレジスタは、１ビットのプログラムデータを記憶するためのプログラムユニットを構成し、
前記対を成す２個ずつのプログラムレジスタの一方に記憶された前記１ビットのプログラム信号は、前記プログラムユニットが非プログラム状態およびプログラム状態のいずれであるかを示す、請求項１８に記載の薄膜磁性体記憶装置。
【請求項２２】
薄膜磁性体記憶装置であって、
各々が磁気的にデータを記憶する複数のメモリセルが配置されたメモリアレイを備え、
各前記メモリセルは、２通りの方向のいずれかに磁化されることによってデータ記憶を実行する磁気記憶部を有し、
各々が、前記薄膜磁性体記憶装置の動作時に用いられる情報のプログラムに用いられる１ビットのプログラム信号を記憶するための複数のプログラムレジスタをさらに備え、
各前記プログラムレジスタは、各々が、磁化方向に応じた電気抵抗を有し、かつ、前記磁化方向を変更するための磁界を印加可能に構成される少なくとも１個のプログラム素子とを含み、
各前記プログラム素子の電気抵抗は、物理的な破壊動作を伴って固定可能である、薄膜磁性体記憶装置。
【請求項２３】
各前記プログラムレジスタ素子は、対応するプログラムレジスタに記憶される１ビットのプログラム信号に応じた方向に磁化された場合に、第１および第２の電気抵抗の一方を有し、
前記破壊動作後における各前記プログラムレジスタ素子の電気抵抗は、前記第１および第２の電気抵抗の間を除く範囲に属する第３の電気抵抗に固定される、請求項２２に記載の薄膜磁性体記憶装置。
【請求項２４】
前記第１および第２の電気抵抗の一方ずつは、プログラムデータ書込前に相当する初期状態およびプログラムデータ書込後に相当するプログラム状態の一方ずつに相当し、
前記第３の電気抵抗は、非可逆的に設定された、前記初期状態および前記プログラム状態のうちの所定の一方に相当する、請求項２３に記載の薄膜磁性体記憶装置。
【請求項２５】
前記第３の電気抵抗は、前記第１および第２の電気抵抗よりも小さい、請求項２３に記載の薄膜磁性体記憶装置。
【請求項２６】
各前記プログラム素子は、
固定方向に磁化された第１の磁化層と、
記憶する前記データおよび前記プログラム信号にそれぞれ応じて、前記第１の磁化層と同一方向および反対方向のいずれかに磁化される第２の磁化層と、
前記第１および第２の磁化層の間に形成される絶縁膜とを有し、
前記絶縁膜は、前記破壊動作によって絶縁破壊され、
各前記プログラムレジスタは、各前記プログラム素子の前記第１および第２の磁化層の間に所定電圧を印加して、前記少なくとも１つのプログラム素子の通過電流に応じて前記１ビットのプログラム信号を読出すためのセンス回路をさらに含み、
前記破壊動作時において、前記第１および第２の磁化層の間には、前記所定電圧と同じ極性で、かつ絶対値が前記所定電圧よりも大きい電圧が印加される、請求項２２に記載の薄膜磁性体記憶装置。
【請求項２７】
前記プログラム素子の磁化方向を変更するためのプログラム磁界を、プログラムデータの書込対象となる当該プログラム素子に印加するためのプログラムデータ書込部をさらに備える、請求項２２記載の薄膜磁性体記憶装置。
【請求項２８】
前記複数のプログラムレジスタを構成する前記プログラム素子の全体は行列状に配置され、
前記プログラム素子の行に対応して設けられ、前記プログラム磁界の第１の方向の成分を発生させる電流が通過するための第１のプログラムデータ線と、
前記プログラム素子の列に対応して設けられ、前記プログラム磁界の第２の方向の成分を発生させる電流が通過するための第２のプログラムデータ線とを含み、
前記第１および前記第２のデータ線から発生される磁界の組み合わせによって、前記プログラム素子への前記プログラムデータの書込は実行される、請求項２７記載の薄膜磁性体記憶装置。
【請求項２９】
薄膜磁性体記憶装置であって、
各々が磁気的にデータを記憶する複数のメモリセルが配置されたメモリアレイを備え、
各前記メモリセルは、２通りの方向のいずれかに磁化されることによってデータ記憶を実行する磁気記憶部を有し、
各々が、前記薄膜磁性体記憶装置の動作時に用いられる情報のプログラムに用いられる１ビットのプログラム信号を記憶するための複数のプログラムレジスタをさらに備え、
各前記プログラムレジスタは、各々が、磁化方向に応じた電気抵抗を有する少なくとも１個のプログラム素子とを含み、
各前記プログラム素子の電気抵抗は、物理的な破壊動作を伴って固定可能であり、
各前記プログラムレジスタは、前記少なくとも１つのプログラム素子の電気抵抗と基準抵抗との比較に基づいて、前記１ビットのプログラム信号を読出すためのセンス回路をさらに含み、
前記基準抵抗は、前記プログラム素子の電気抵抗の前記磁化方向の変化に応じた変化範囲内に設けられる、薄膜磁性体記憶装置。
【請求項３０】
薄膜磁性体記憶装置であって、
各々が磁気的にデータを記憶する複数のメモリセルが行列状に配置されたメモリアレイを備え、
各前記メモリセルは、２通りの方向のいずれかに磁化されることによってデータ記憶を実行する磁気記憶部を有し、
各々が、前記薄膜磁性体記憶装置の動作時に用いられる情報のプログラムに用いられる１ビットのプログラム信号を記憶する複数のプログラムレジスタをさらに備え、
各前記プログラムレジスタは、
各々が磁化方向に応じて第１および第２の電気抵抗の一方を有する電気抵抗を有するプログラム素子と、
前記第１および第２の電気抵抗の中間的な電気抵抗を有する比較抵抗部と、
前記プログラム素子および前記比較抵抗部の電気抵抗の比較に応じて、対応する１ビットのプログラム信号を読出すためのセンス回路とを含み、
前記プログラムレジスタに対する物理的な破壊動作を伴って、前記プログラム素子の電気抵抗を第１および第２の電気抵抗の間を除く範囲に属する第３の電気抵抗に非可逆的に固定するための第１のロック動作、および前記比較抵抗部に対する物理的な破壊動作を伴って、前記比較抵抗部の電気抵抗を第１および第２の電気抵抗の間を除く範囲に属する第４の電気抵抗に非可逆的に固定するための第２のロック動作のいずれかを選択的に実行可能な、薄膜磁性体記憶装置。
【請求項３１】
前記プログラム素子は、
固定方向に磁化された第１の磁化層と、
記憶する前記データおよび前記プログラム信号にそれぞれ応じて、前記第１の磁化層と同一方向および反対方向のいずれかに磁化される第２の磁化層と、
前記第１および第２の磁化層の間に形成される絶縁膜とを有し、
前記第３の電気抵抗は、第１および第２の電気抵抗の両方よりも小さく、
前記絶縁膜は、前記第１のロック動作において絶縁破壊される、請求項３０に記載の薄膜磁性体記憶装置。
【請求項３２】
前記第４の電気抵抗は、第１および第２の電気抵抗の両方よりも大きく、
前記比較抵抗部は、前記第２のロック動作時において溶断される抵抗素子を有する、請求項３０に記載の薄膜磁性体記憶装置。
【請求項３３】
前記情報は、前記複数のメモリセル中の欠陥メモリセルを救済するための冗長救済に用いられる、請求項１８から請求項３２のいずれか１項に記載の薄膜磁性体記憶装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、薄膜磁性体記憶装置に関し、より特定的には、磁気トンネル接合（ＭＴＪ：Magnetic Tunnel Junction）を有するメモリセルを備えたランダムアクセスメモリおよびその情報プログラム方法に関する。
【０００２】
【従来の技術】
低消費電力で不揮発的なデータの記憶が可能な記憶装置として、ＭＲＡＭ（Magnetic Random Access Memory）デバイスが注目されている。ＭＲＡＭデバイスは、半導体集積回路に形成された複数の薄膜磁性体を用いて不揮発的なデータ記憶を行ない、薄膜磁性体の各々に対してランダムアクセスが可能な記憶装置である。
【０００３】
特に、近年では磁気トンネル接合を利用した薄膜磁性体をメモリセルとして用いることによって、ＭＲＡＭデバイスの性能が飛躍的に進歩することが発表されている。磁気トンネル接合を有するメモリセルを備えたＭＲＡＭデバイスについては、“A 10ns Read and Write Non-Volatile Memory Array Using a Magnetic Tunnel Junction and FET Switch in each Cell", ISSCC Digest of Technical Papers, TA7.2, Feb. 2000.、“Nonvolatile RAM based on Magnetic Tunnel Junction Elements", ISSCC Digest of Technical Papers, TA7.3, Feb. 2000.、および“A 256kb 3.0V 1T1MTJ Nonvolatile Magnetoresistive RAM", ISSCC Digest of Technical Papers, TA7.6, Feb. 2001.等の技術文献に開示されている。
【０００４】
図３１は、磁気トンネル接合部を有するメモリセル（以下、単に「ＭＴＪメモリセル」とも称する）の構成を示す概略図である。
【０００５】
図３１を参照して、ＭＴＪメモリセルは、記憶データレベルに応じて電気抵抗が変化するトンネル磁気抵抗素子ＴＭＲと、データ読出時にトンネル磁気抵抗素子ＴＭＲを通過するセンス電流Ｉｓの経路を形成するためのアクセス素子ＡＴＲとを備える。アクセス素子ＡＴＲは、代表的には電界効果型トランジスタで形成されるので、以下においては、アクセス素子ＡＴＲをアクセストランジスタＡＴＲとも称する。アクセストランジスタＡＴＲは、トンネル磁気抵抗素子ＴＭＲと固定電圧（接地電圧Ｖｓｓ）との間に結合される。
【０００６】
ＭＴＪメモリセルに対して、データ書込を指示するためのライトワード線ＷＷＬと、データ読出を実行するためのリードワード線ＲＷＬと、データ読出およびデータ書込において、記憶データのデータレベルに対応した電気信号を伝達するためのデータ線であるビット線ＢＬとが配置される。
【０００７】
図３２は、ＭＴＪメモリセルからのデータ読出動作を説明する概念図である。
図３２を参照して、トンネル磁気抵抗素子ＴＭＲは、固定された一定の磁化方向を有する強磁性体層（以下、単に「固定磁化層」とも称する）ＦＬと、外部かの印加磁界に応じた方向に磁化される強磁性体層（以下、単に「自由磁化層」とも称する）ＶＬとを有する。固定磁化層ＦＬおよび自由磁化層ＶＬの間には、絶縁体膜で形成されるトンネルバリア（トンネル膜）ＴＢが設けられる。自由磁化層ＶＬは、書込まれる記憶データのレベルに応じて、固定磁化層ＦＬと同一方向または固定磁化層ＦＬと反対方向に磁化される。固定磁化層ＦＬ、トンネルバリアＴＢおよび自由磁化層ＶＬによって、磁気トンネル接合が形成される。
【０００８】
データ読出時においては、リードワード線ＲＷＬの活性化に応じてアクセストランジスタＡＴＲがターンオンする。これにより、ビット線ＢＬ〜トンネル磁気抵抗素子ＴＭＲ〜アクセストランジスタＡＴＲ〜接地電圧Ｖｓｓの電流経路に、センス電流Ｉｓを流すことができる。
【０００９】
トンネル磁気抵抗素子ＴＭＲの電気抵抗は、固定磁化層ＦＬおよび自由磁化層ＶＬのそれぞれの磁化方向の相対関係に応じて変化する。具体的には、固定磁化層ＦＬの磁化方向と、自由磁化層ＶＬの磁化方向とが同一（平行）である場合には、両者の磁化方向が反対（反平行）方向である場合に比べてトンネル磁気抵抗素子ＴＭＲは小さくなる。
【００１０】
したがって、自由磁化層ＶＬを記憶データに応じて、上記２種類のいずれかの方向に磁化すれば、センス電流Ｉｓによってトンネル磁気抵抗素子ＴＭＲで生じる電圧変化は、記憶データレベルに応じて異なる。したがって、たとえばビット線ＢＬを一定電圧にプリチャージした後に、トンネル磁気抵抗素子ＴＭＲにセンス電流Ｉｓを流せば、ビット線ＢＬの電圧を検知することによって、ＭＴＪメモリセルの記憶データを読出すことができる。
【００１１】
図３３は、ＭＴＪメモリセルに対するデータ書込動作を説明する概念図である。
【００１２】
図３３を参照して、データ書込時においては、リードワード線ＲＷＬが非活性化され、アクセストランジスタＡＴＲはターンオフされる。この状態で、自由磁化層ＶＬを書込データに応じた方向に磁化するためのデータ書込電流が、ライトワード線ＷＷＬおよびビット線ＢＬにそれぞれ流される。自由磁化層ＶＬの磁化方向は、ライトワード線ＷＷＬおよびビット線ＢＬをそれぞれ流れるデータ書込電流によって決定される。
【００１３】
図３４は、ＭＴＪメモリセルに対するデータ書込時におけるデータ書込電流とトンネル磁気抵抗素子の磁化方向との関係を説明する概念図である。
【００１４】
図３４を参照して、横軸Ｈ（ＥＡ）は、トンネル磁気抵抗素子ＴＭＲ内の自由磁化層ＶＬにおいて磁化容易軸（ＥＡ：Easy Axis）方向に印加される磁界を示す。一方、縦軸Ｈ（ＨＡ）は、自由磁化層ＶＬにおいて磁化困難軸（ＨＡ：Hard Axis）方向に作用する磁界を示す。磁界Ｈ（ＥＡ）およびＨ（ＨＡ）は、ビット線ＢＬおよびライトワード線ＷＷＬをそれぞれ流れる電流によって生じる２つの磁界の一方ずつにそれぞれ対応する。
【００１５】
ＭＴＪメモリセルにおいては、固定磁化層ＦＬの固定された磁化方向は、自由磁化層ＶＬの磁化容易軸に沿っており、自由磁化層ＶＬは、記憶データのレベル（“１”および“０”）に応じて、磁化容易軸方向に沿って、固定磁化層ＦＬと平行（同一）あるいは反平行（反対）方向に磁化される。以下、本明細書においては、自由磁化層ＶＬの２種類の磁化方向にそれぞれ対応するトンネル磁気抵抗素子ＴＭＲの電気抵抗をＲｍａｘおよびＲｍｉｎ（ただし、Ｒｍａｘ＞Ｒｍｉｎ）でそれぞれ示すこととする。ＭＴＪメモリセルは、このような自由磁化層ＶＬの２種類の磁化方向と対応させて、１ビットのデータ（“１”および“０”）を記憶することができる。
【００１６】
自由磁化層ＶＬの磁化方向は、印加される磁界Ｈ（ＥＡ）およびＨ（ＨＡ）の和が、図中に示されるアステロイド特性線の外側の領域に達する場合においてのみ新たに書換えることができる。すなわち、印加されたデータ書込磁界がアステロイド特性線の内側の領域に相当する強度である場合には、自由磁化層ＶＬの磁化方向は変化しない。
【００１７】
アステロイド特性線に示されるように、自由磁化層ＶＬに対して磁化困難軸方向の磁界を印加することによって、磁化容易軸に沿った磁化方向を変化させるのに必要な磁化しきい値が下げることができる。
【００１８】
図３４の例のようにデータ書込時の動作点を設計した場合には、データ書込対象であるＭＴＪメモリセルにおいて、磁化容易軸方向のデータ書込磁界は、その強度がＨWRとなるように設計される。すなわち、このデータ書込磁界ＨWRが得られるように、ビット線ＢＬまたはライトワード線ＷＷＬを流されるデータ書込電流の値が設計される。一般的に、データ書込磁界ＨWRは、磁化方向の切換えに必要なスイッチング磁界ＨSWと、マージン分ΔＨとの和で示される。すなわち、ＨWR＝ＨSW＋ΔＨで示される。
【００１９】
ＭＴＪメモリセルの記憶データ、すなわちトンネル磁気抵抗素子ＴＭＲの磁化方向を書換えるためには、ライトワード線ＷＷＬとビット線ＢＬとの両方に所定レベル以上のデータ書込電流を流す必要がある。これにより、トンネル磁気抵抗素子ＴＭＲ中の自由磁化層ＶＬは、磁化容易軸（ＥＡ）に沿ったデータ書込磁界の向きに応じて、固定磁化層ＦＬと平行もしくは、反対（反平行）方向に磁化される。トンネル磁気抵抗素子ＴＭＲに一旦書込まれた磁化方向、すなわちＭＴＪメモリセルの記憶データは、新たなデータ書込が実行されるまでの間不揮発的に保持される。
【００２０】
【発明が解決しようとする課題】
一般的に、メモリデバイスにおいては、内部に不揮発的に記憶されたプログラム情報に基づいて、データ読出、データ書込等の通常動作が実行される。代表的には、余分に配置されたスペアメモリセルを用いて欠陥メモリセルを置換救済するための冗長構成の制御に用いられる情報が、プログラム情報として記憶される。冗長構成においては、少なくとも、欠陥メモリセルを特定するための不良アドレスをプログラム情報として記憶することが必要である。
【００２１】
従来のメモリデバイスでは、プログラム情報は、レーザ入力等によるヒューズ素子の切断（ブロー）によってプログラムされる構成がとられていた。しかしながら、このような構成では、レーザブロー専用のトリミング装置等の特別な機器を必要とするので、プログラム処理に費やす時間やコストが大きくなっていた。
【００２２】
また、このようなプログラム処理は、ウェハ状態で実行されるため、たとえば、ウェハ状態で検出された欠陥メモリセルに対応する不良アドレスをプログラム後、パッケージ封入されて製品化されたメモリデバイスにおいては、その後で出現した不良に対応することが困難であり、歩留りの低下を招いていた。
【００２３】
上述したＭＴＪメモリセルは、不揮発的なデータ記憶が可能であるため、ＭＲＡＭデバイスにおいては、正規のメモリセルとして用いられるこれらのＭＴＪメモリセルと同一または同様の磁性体記憶素子を用いて、必要な情報をプログラムする構成も可能である。
【００２４】
しかしながら、このような構成では、プログラムに用いた磁性体記憶素子の初期状態とプログラム状態との定義を明確にしなければ、リセット動作を頻繁に行なう必要があり、動作の高速性が妨げられるおそれがある。また、プログラムされた情報を読出すためには、磁性体記憶素子に電流を通過させる必要があるので、プログラム情報の読出動作について、プログラム素子の動作信頼性が正規のメモリセルと比較して低下しないように考慮する必要も生じる。
【００２５】
この発明は、このような問題点を解決するためになされたものであって、この発明の目的は、正規メモリセルと同様の磁性体記憶素子を用いて、必要な情報を効率的にプログラムできる薄膜磁性体記憶装置の構成を提供することである。
【００２６】
【課題を解決するための手段】
この発明に従う薄膜磁性体記憶装置は、各々が磁気的にデータ記憶を実行する複数のメモリセルが行列状に配置されたメモリアレイを備える。各メモリセルは、２通りの方向のいずれかに磁化されることによってデータ記憶を実行する磁気記憶部を有する。薄膜磁性体記憶装置は、複数のメモリセルに対するデータ読出およびデータ書込の少なくとも一方に用いる情報を記憶するためのプログラム回路をさらに備える。プログラム回路は、各々が、情報を構成するプログラムデータをプログラム状態時に記憶する複数のプログラムユニットを含む。各プログラムユニットは、各々が２通りの方向のいずれかに磁化される２個のプログラムセルを有する。各プログラムユニットにおいて、プログラム状態時には、２個のプログラムセルのうちの一方のプログラムセルは、非プログラム状態時と異なる方向に磁化される。
【００２７】
好ましくは、各磁気記憶部および各プログラムセルは、同様の構造を有し、各プログラムユニットにおいて、非プログラム状態のときは、各プログラムセルは同一の方向に磁化される。各磁気記憶部の初期状態における磁化方向と、各プログラムセルの非プログラム状態における磁化方向とは同一である。
【００２８】
好ましくは、各磁気記憶部および各プログラムセルにおける２通りの磁化方向は、それぞれにおける固有の磁化容易軸に沿って設定され、各磁気記憶部および各プログラムセルは、両者の磁化容易軸が同一方向に沿うように配置される。
【００２９】
また好ましくは、各磁気記憶部および各プログラムセルは、固定方向に磁化された第１の磁化層と、記憶するデータに応じて、第１の磁化層と同一方向および反対方向のいずれかに磁化される第２の磁化層と、第１および第２の磁化層の間に形成される絶縁膜とを有する。非プログラム状態の各プログラムセルおよび初期状態の各磁気記憶気部において、第１および第２の磁化層は、同一方向に沿って磁化される。
【００３０】
さらに好ましくは、各磁気記憶部を初期状態に磁化するための工程と、各プログラムセルを非プログラム状態に磁化するための工程とは同時に実行される。
【００３１】
あるいは好ましくは、各プログラムセルは、直列に接続された複数の磁気抵抗素子を有し、各磁気抵抗素子は、各磁気記憶部と同様の構造および磁化特性を有する。そして、メモリアレイは、複数のメモリセルの所定単位に対応して配置され、欠陥メモリセルを含む所定単位を置換するための冗長回路をさらに含む。プログラム回路に記憶される情報は、欠陥メモリセルを含む所定単位を特定するための不良アドレスを含む。薄膜磁性体記憶装置は、入力されたアドレス信号のうちの所定単位を選択するための少なくとも一部と、プログラム回路に記憶された不良アドレスとの比較結果に基づいて、冗長回路へのアクセスを制御するための冗長制御回路をさらに備える。
【００３２】
さらに好ましくは、冗長制御回路は、不良アドレスがアドレス信号よって選択された場合には、冗長回路へのアクセスを指示するとともに、アドレス信号に対応する所定単位へのアクセスの中止を指示する。
【００３３】
あるいは、さらに好ましくは、冗長制御回路における比較結果に応じた電気信号を出力するためのモニタ端子をさらに備える。
【００３４】
好ましくは、各プログラムセルは、２通りの磁化方向にそれぞれ対応して、第１および第２の電気抵抗をそれぞれ有する。各プログラムユニットは、さらに、各プログラムセルに対応して設けられるカレントセンス回路を有する。カレントセンス回路は、プログラムセルからのプログラムデータ読出時において、対応するプログラムセルにバイアス電圧を印加するとともに、バイアス電圧よって対応するプログラムセルを流れる電流に応じた２値的な電圧信号を出力する。プログラムユニットは、さらに、各カレントセンス回路から出力された２値的な電圧信号のレベルに応じて、プログラム状態および非プログラム状態のいずれに設定されているかを示す第１のプログラム信号を出力するための論理ゲートを有する。プログラムユニットは、２値的な電圧信号の一部を、プログラムデータのレベルを示すための第２のプログラム信号として出力する。
【００３５】
あるいは好ましくは、カレントセンス回路は、第１および第２の電気抵抗の中間値に相当する基準抵抗および対応するプログラムセルの各々にバイアス電圧を印加するとともに、基準抵抗および対応するプログラムセルをそれぞれ流れる電流の差を増幅して２値的な電圧信号を出力する。
【００３６】
また好ましくは、プログラムセルからのプログラムデータ読出時において、プログラムセルからのプログラムセルに印加されるバイアス電圧は、通常のデータ読出時において各磁気記憶部に印加される電圧よりも低い。
【００３７】
あるいは好ましくは、プログラムセルからのプログラムデータ読出時において、各プログラムセルにバイアス電圧が印加される期間は、通常のデータ読出時において、各磁気記憶部に電圧が印加される期間よりも短い。
【００３８】
また好ましくは、各プログラムユニットは、プログラムデータ読出時において、２個のプログラムセルの磁化方向に応じて、プログラム状態および非プログラム状態のいずれに設定されているかを示す第１のプログラム信号およびプログラムデータのレベルを示すための第２のプログラム信号を出力する。プログラム回路は、さらに、各プログラムユニットに対応して配置され、対応するプログラムユニットから出力された第１および第２のプログラム信号を保持するためのデータラッチ回路を含む。プログラムデータ読出は、薄膜磁性体記憶装置の電源起動に応答して実行され、各データラッチ回路は、電源が起動されてから遮断されるまでの期間期間中、第１および第２のプログラム信号を保持する。
【００３９】
また好ましくは、各プログラムセルは、磁化困難軸に沿った第１のプログラム磁界および磁化容易軸に沿った第２のプログラム磁界によって磁化される。各プログラムユニットにおいて、非プログラム状態のときは、各プログラムセルは同一の方向に磁化される。プログラム回路は、さらに、同一の各プログラムユニットを構成する２個のプログラムセルに共通に設けられ、第１のプログラム磁界を生じさせる第１のプログラム電流を流すためのプログラム選択線と、２個のプログラムセルにそれぞれ対応して設けられ、第２のプログラム磁界を生じさせる第２のプログラム電流を流すための第１および第２のプログラムデータ線とを含む。第１および第２のプログラムデータ線を流れる第２のプログラム電流の向きは、互いに反対方向に設定される。
【００４０】
さらに好ましくは、プログラム回路は、さらに、第１および第２のプログラムデータ線の一端のそれぞれを、プログラムデータのレベルに応じて第１および第２の電圧の一方ずつと接続する電圧設定部と、少なくともプログラムデータ書込時において、第１および第２のプログラムデータ線の他端同士を電気的に結合するためのプログラムデータ線接続部とを含む。
【００４１】
あるいは、さらに好ましくは、各磁気記憶部は、磁化困難軸に沿った第１のデータ書込磁界および磁化容易軸に沿った第２のデータ書込磁界によって磁化される。各磁気記憶部および各プログラムセルは、同様の構造および磁化特性を有する。薄膜磁性体記憶装置は、さらに、メモリセル行にそれぞれ対応して設けられ、各々が、選択行において第１のデータ書込磁界を生じさせる第１のデータ書込電流を流すための複数の書込選択線と、メモリセル列にそれぞれ対応して設けられ、各々が、選択列において第２のデータ書込磁界を生じさせる第２のデータ書込電流を流すための複数の書込データ線と、選択行の書込選択線に対して、所定電流を第１のデータ書込電流として供給するための電流供給回路とを備える。電流供給回路は、プログラムデータ書込時において、所定電流を第１のプログラム電流として、プログラム選択線へ供給する。
【００４２】
また、さらに好ましくは、各磁気記憶部は、磁化困難軸に沿った第１のデータ書込磁界および磁化容易軸に沿った第２のデータ書込磁界によって磁化される。各磁気記憶部および各プログラムセルは、同様の構造および磁化特性を有する。薄膜磁性体記憶装置は、さらに、メモリセル行にそれぞれ対応して設けられ、各々が、選択行において第１のデータ書込磁界を印加する第１のデータ書込電流を流すための複数の書込選択線と、メモリセル列にそれぞれ対応して設けられ、各々が、選択列において第２のデータ書込磁界を印加する第２のデータ書込電流を流すための複数の書込データ選択線と、選択列の書込データ線に対して、所定電流を第２のデータ書込電流として供給するための電流供給回路とを備える。電流供給回路は、プログラムデータ書込時において、所定電流を第２のプログラム電流として、プログラムデータ線へ供給する。
【００４３】
あるいは好ましくは、各プログラムセルは、直列に接続された複数の磁気抵抗素子を有する。各磁気抵抗素子は、各磁気記憶部と同様の構造および磁化特性を有する。
【００４６】
この発明のさらに別の構成に従う薄膜磁性体記憶装置は、各々が磁気的にデータを記憶する複数のメモリセルが配置されたメモリアレイを備える。各メモリセルは、データに応じた方向に磁化されることによって、第１の電気抵抗と第１の電気抵抗より大きい第２の電気抵抗とのいずれかを有する磁気抵抗素子を含む。薄膜磁性体記憶装置は、各々が、薄膜磁性体記憶装置の動作時に用いられる情報のプログラムに用いられる１ビットのプログラム信号を記憶するための複数のプログラムレジスタをさらに備え、各プログラムレジスタは、磁化方向に応じて変化する電気抵抗を有する複数のプログラム素子を含み、各プログラム素子は、記憶される１ビットのプログラム信号に応じて、第１の電気抵抗より小さい第３の電気抵抗と第３の電気抵抗より大きい第４の電気抵抗とのいずれかを有し、第１および第２の電気抵抗の比と、第３および第４の電気抵抗との比は同等である。
【００４７】
好ましくは、各磁気抵抗素子および各プログラム素子は、固定方向に磁化された第１の磁化層と、憶するデータおよびプログラム信号にぞれぞれ応じて、第１の磁化層と同一方向および反対方向のいずれかに磁化される第２の磁化層と、第１および第２の磁化層の間に形成される絶縁膜とを有し、各プログラム素子において、プログラム信号の読出時に第１および第２の磁化層と絶縁層とにおける電流通過面積は、各磁気抵抗素子において、データの読出時に第１および第２の磁化層と絶縁層とにおける電流通過面積よりも大きい。
【００４８】
あるいは好ましくは、各磁気抵抗素子および各プログラム素子は、固定方向に磁化された第１の磁化層と、記憶するデータおよびプログラム信号にそれぞれ応じて、第１の磁化層と同一方向および反対方向のいずれかに磁化される第２の磁化層と、第１および第２の磁化層の間に形成される絶縁膜とを有し、各プログラム素子において、プログラム信号の読出時に第１および第２の磁化層の間に印加される電圧差は、各磁気抵抗素子において、データの読出時に第１および第２の磁化層の間に印加される電圧差よりも小さい。
【００４９】
また好ましくは、対を成す２個ずつのプログラムレジスタは、１ビットのプログラムデータを記憶するためのプログラムユニットを構成し、対を成す２個ずつのプログラムレジスタの一方に記憶された１ビットのプログラム信号は、プログラムユニットが非プログラム状態およびプログラム状態のいずれであるかを示す。
【００５０】
この発明のさらに別の１つの構成に従う薄膜磁性体記憶装置は、各々が磁気的にデータを記憶する複数のメモリセルが配置されたメモリアレイを備え、各メモリセルは、２通りの方向のいずれかに磁化されることによってデータ記憶を実行する磁気記憶部を有する。薄膜磁性体記憶装置は、各々が、薄膜磁性体記憶装置の動作時に用いられる情報のプログラムに用いられる１ビットのプログラム信号を記憶するための複数のプログラムレジスタをさらに備え、各プログラムレジスタは、各々が、磁化方向に応じた電気抵抗を有し、かつ、磁化方向を変更するための磁界を印加可能に構成される少なくとも１個のプログラム素子を含み、各プログラム素子の電気抵抗は、物理的な破壊動作を伴って固定可能である。
【００５１】
好ましくは、各プログラムレジスタ素子は、対応するプログラムレジスタに記憶される１ビットのプログラム信号に応じた方向に磁化された場合に、第１および第２の電気抵抗の一方を有し、破壊動作後における各プログラムレジスタ素子の電気抵抗は、第１および第２の電気抵抗の間を除く範囲に属する第３の電気抵抗に固定される。
【００５２】
さらに好ましくは、第１および第２の電気抵抗の一方ずつは、プログラムデータ書込前に相当する初期状態およびプログラムデータ書込後に相当するプログラム状態の一方ずつに相当し、第３の電気抵抗は、非可逆的に設定された、初期状態およびプログラム状態のうちの所定の一方に相当する。また、さらに好ましくは、第３の電気抵抗は、第１および第２の電気抵抗よりも小さい。
【００５３】
あるいは好ましくは、各プログラム素子は、固定方向に磁化された第１の磁化層と、記憶するデータおよびプログラム信号にそれぞれ応じて、第１の磁化層と同一方向および反対方向のいずれかに磁化される第２の磁化層と、第１および第２の磁化層の間に形成される絶縁膜とを有し、絶縁膜は、破壊動作によって絶縁破壊される。
【００５４】
さらに好ましくは、各プログラムレジスタは、各プログラム素子の第１および第２の磁化層の間に所定電圧を印加して、少なくとも１つのプログラム素子の通過電流に応じて１ビットのプログラム信号を読出すためのセンス回路をさらに含み、破壊動作時において、第１および第２の磁化層の間には、所定電圧と同じ極性で、かつ絶対値が所定電圧よりも大きい電圧が印加される。
【００５５】
この発明のさらに別の１つの構成に従う薄膜磁性体記憶装置は、各々が磁気的にデータを記憶する複数のメモリセルが行列状に配置されたメモリアレイを備え、各メモリセルは、２通りの方向のいずれかに磁化されることによってデータ記憶を実行する磁気記憶部を有する。薄膜磁性体記憶装置は、各々が、薄膜磁性体記憶装置の動作時に用いられる情報のプログラムに用いられる１ビットのプログラム信号を記憶する複数のプログラムレジスタをさらに備え、各プログラムレジスタは、各々が磁化方向に応じて第１および第２の電気抵抗の一方を有する電気抵抗を有するプログラム素子と、第１および第２の電気抵抗の中間的な電気抵抗を有する比較抵抗部と、プログラム素子および比較抵抗部の電気抵抗の比較に応じて、対応する１ビットのプログラム信号を読出すためのセンス回路とを含む。薄膜磁性体記憶装置に対しては、プログラムレジスタに対する物理的な破壊動作を伴って、プログラム素子の電気抵抗を第１および第２の電気抵抗の間を除く範囲に属する第３の電気抵抗に非可逆的に固定するための第１のロック動作、および比較抵抗部に対する物理的な破壊動作を伴って、比較抵抗部の電気抵抗を第１および第２の電気抵抗の間を除く範囲に属する第４の電気抵抗に非可逆的に固定するための第２のロック動作のいずれかを選択的に実行可能である。
【００５６】
好ましくは、プログラム素子は、固定方向に磁化された第１の磁化層と、記憶するデータおよびプログラム信号にそれぞれ応じて、第１の磁化層と同一方向および反対方向のいずれかに磁化される第２の磁化層と、第１および第２の磁化層の間に形成される絶縁膜とを有し、第３の電気抵抗は、第１および第２の電気抵抗の両方よりも小さく、絶縁膜は、第１のロック動作において絶縁破壊される。
【００５７】
また好ましくは、第４の電気抵抗は、第１および第２の電気抵抗の両方よりも大きく、比較抵抗部は、第２のロック動作時において溶断される抵抗素子を有する。
【００５８】
あるいは好ましくは、情報は、複数のメモリセル中の欠陥メモリセルを救済するための冗長救済に用いられる。
【００６１】
【発明の実施の形態】
以下において、本発明の実施の形態について図面を参照して詳しく説明する。
【００６２】
［実施の形態１］
図１は、本発明の実施の形態に従うＭＲＡＭデバイス１の全体構成を示す概略ブロック図である。
【００６３】
図１を参照して、ＭＲＡＭデバイス１は、外部からの制御信号ＣＭＤおよびアドレス信号ＡＤＤに応じてランダムアクセスを実行し、書込データＤＩＮの入力および読出データＤＯＵＴの出力を実行する。ＭＲＡＭデバイス１におけるデータ読出動作およびデータ書込動作は、たとえば、外部からのクロック信号ＣＬＫに同期したタイミングで実行される。あるいは、外部からクロック信号ＣＬＫを受けることなく、内部で動作タイミングを定めてもよい。
【００６４】
ＭＲＡＭデバイス１は、アドレス信号ＡＤＤの入力を受けるアドレス端子２と、制御信号ＣＭＤおよびクロック信号ＣＬＫの入力を受ける制御信号端子３と、プログラム動作時に活性化されるプログラム信号ＰＲＧの入力を受ける信号端子４ａと、制御信号ＣＭＤおよびクロック信号ＣＬＫに応答してＭＲＡＭデバイス１の全体動作を制御するためのコントロール回路５と、行列状に配置された複数のＭＴＪメモリセルを有するメモリアレイ１０とを備える。
【００６５】
メモリアレイ１０の構成については、後ほど詳細に説明するが、メモリアレイ１０は、アドレス信号ＡＤＤによって各々を指定可能な、行列状に配置された複数の正規のＭＴＪメモリセル（以下、「正規メモリセル」とも称する）と、欠陥が生じた正規メモリセル（以下、「欠陥メモリセル」とも称する）を救済するためのスペアメモリセル（図示せず）とを含む。
【００６６】
正規メモリセルの欠陥救済は、所定の冗長救済区分を単位とした置換によって行なわれる。スペアメモリセルによって、各々が、欠陥メモリセルを含む冗長救済区分を置換するための複数の冗長回路（図示せず）が構成される。一般的に、冗長救済区分は、メモリセル行、メモリセル列あるいはデータＩ／Ｏ線単位に設定される。これらの場合において、各冗長回路は、スペア行、スペア列あるいはスペアＩ／Ｏ線に対応するスペアブロックにそれぞれ相当する。詳細は後程説明するが、本実施の形態においては、正規メモリセルの欠陥救済は、メモリセル列単位で実行されるものとする。
【００６７】
ＭＴＪメモリセルの行（以下、単に「メモリセル行」とも称する）に対応して複数のライトワード線およびリードワード線ＲＷＬが配置される。また、ＭＴＪメモリセル列（以下、単に「メモリセル列」とも称する）に対応してビット線ＢＬおよび／ＢＬが配置される。
【００６８】
ＭＲＡＭデバイス１は、さらに、行デコーダ２０と、列デコーダ２５と、ワード線ドライバ３０と、読出／書込制御回路５０，６０とを備える。
【００６９】
行デコーダ２０は、アドレス信号ＡＤＤによって示されるロウアドレスＲＡに応じて、メモリアレイ１０における行選択を実行する。列デコーダ２５は、アドレス信号ＡＤＤによって示されるコラムアドレスＣＡに応じて、メモリアレイ１０における列選択を実行する。ワード線ドライバ３０は、行デコーダ２０の行選択結果に基づいて、リードワード線ＲＷＬもしくはライトワード線ＷＷＬを選択的に活性化する。ロウアドレスＲＡおよびコラムアドレスＣＡによって、データ読出もしくはデータ書込対象に指定されたメモリセル（以下、「選択メモリセル」とも称する）が示される。
【００７０】
ライトワード線ＷＷＬは、ワード線ドライバ３０が配置されるのとメモリアレイ１０を挟んで反対側の領域４０において、接地電圧Ｖｓｓと結合される。読出／書込制御回路５０，６０は、データ読出およびデータ書込時において、選択メモリセルに対応する選択メモリセル列（以下、「選択列」とも称する）のビット線ＢＬおよび／ＢＬに対してデータ書込電流およびセンス電流（データ読出電流）を流すために、メモリアレイ１０に隣接する領域に配置される回路群を総称したものである。
【００７１】
ＭＲＡＭデバイス１は、さらに、プログラム回路１００と、冗長制御回路１０５とを備える。
【００７２】
プログラム回路１００は、データ読出およびデータ書込の少なくとも一方で用いられるプログラム情報を不揮発的に記憶する。プログラム情報を構成するプログラムデータは、プログラム信号ＰＲＧが活性化されるプログラムデータ書込時において、たとえばアドレス端子２を介して、外部から入力される。プログラムデータ読出は、コントロール回路からの制御電圧Ｖｃｎに応じて実行される。
【００７３】
以下、本実施の形態においては、欠陥メモリセルを特定するための不良アドレスがプログラム情報としてプログラム回路１００に記憶される構成を代表的に説明する。不良アドレスは、欠陥メモリセルが存在するメモリセル列（以下、「不良コラム」とも称する）を示すコラムアドレスに相当する。
【００７４】
冗長制御回路１０５は、通常動作時において、コラムアドレスＣＡと、プログラム回路１００に保持される不良アドレスとを比較することによって、データ読出またはデータ書込対象として、不良コラムが選択されたかどうかを判定する。
【００７５】
コラムアドレスＣＡによって不良コラムが選択された場合には、冗長制御回路１０５は、スペアメモリセルで構成された冗長回路に対するアクセスを指示するとともに、列デコーダ２５に対して、コラムアドレスＣＡで示されたメモリセル列に対するアクセスの停止を指示する。これにより、コラムアドレスＣＡで示されたメモリセル列に代えて冗長回路を対象として、データ読出またはデータ書込が実行される。
【００７６】
一方、コラムアドレスＣＡが不良アドレスと対応しない場合には、列デコーダ２５によって通常の列選択動作が実行されて、コラムアドレスＣＡで示されたメモリセル列を選択して、データ読出またはデータ書込が実行される。
【００７７】
次に、ＭＲＡＭデバイス１における冗長構成について説明する。
図２は、図１に示したメモリアレイの構成を示す回路図である。
【００７８】
図２を参照して、メモリアレイ１０は、ｎ行×ｍ列（ｎ，ｍ：自然数）に配列される正規メモリセルＭＣと、ｋ個（ｋ：自然数）の冗長回路ＲＤ１〜ＲＤｋとを含む。本実施の形態においては、メモリセル列単位で置換救済が実行されるので、冗長回路ＲＤ１〜ＲＤｋの各々はスペア列に相当する。なお、以下においては、冗長回路ＲＤ１〜ＲＤｋを総称して、冗長回路ＲＤとも称する。
【００７９】
メモリアレイ１０全体で見れば、同様の構成を有するＭＴＪメモリセルが、ｎ個のメモリセル行および（ｍ＋ｋ）個のメモリセル列にわたって配置されている。なお、以下においては、正規メモリセルによるメモリセル列を、「正規メモリセル列」とも称し、冗長回路ＲＤ１〜ＲＤｈにそれぞれ対応するスペアメモリセルのメモリセル列を、「スペア列」とも称する。
【００８０】
メモリセル行にそれぞれ対応して、リードワード線ＲＷＬ１〜ＲＷＬｎおよびライトワード線ＷＷＬ１〜ＷＷＬｎが配置される。正規メモリセル列にそれぞれ対応して、ビット線対ＢＬＰ１〜ＢＬＰｍが配置される。各ビット線対は、２本の相補なビット線から構成される。たとえば、ビット線対ＢＬＰ１は、ビット線ＢＬ１および／ＢＬ１から構成される。
【００８１】
スペアメモリセル列にそれぞれ対応して、スペアビット線対ＳＢＬＰ１〜ＳＢＬＰｋが配置される。各スペアビット線対は、ビット線対と同様に、２本の相補なビット線から構成される。たとえば、スペアビット線対ＳＢＬＰ１は、スペアビット線ＳＢＬ１および／ＳＢＬ１から構成される。
【００８２】
以下においては、ライトワード線、リードワード線、ビット線対、ビット線、スペアビット線対およびスペアビット線のそれぞれを総括的に表現する場合には、符号ＷＷＬ、ＲＷＬ、ＢＬＰ、ＢＬ（／ＢＬ）、ＳＢＬＰおよびＳＢＬ（／ＳＢＬ）をそれぞれ用いて表記することとし、特定のライトワード線、リードワード線，ビット線対、ビット線、スペアビット線対およびスペアビット線を示す場合には、これら符号に添え字を付して、ＷＷＬ１、ＲＷＬ１、ＢＬＰ１、ＢＬ１（／ＢＬ１）、ＳＢＬＰ１およびＳＢＬ１（／ＳＢＬ１）のように表記するものとする。また、信号および信号線の高電圧状態（電源電圧Ｖｃｃ１，Ｖｃｃ２）および低電圧状態（接地電圧Ｖｓｓ）のそれぞれを、「Ｈレベル」および「Ｌレベル」とも称する。
【００８３】
正規メモリセルＭＣおよびスペアメモリセルＳＭＣの各々は、直列に接続された、記憶データのレベルに応じて電気抵抗が変化する磁気記憶部として作用するトンネル磁気抵抗素子ＴＭＲおよびアクセスゲートとして作用するアクセストランジスタＡＴＲを有する。既に説明したように、アクセストランジスタＡＴＲには、半導体基板上に形成された電界効果型トランジスタであるＭＯＳトランジスタが代表的に適用される。トンネル磁気抵抗素子ＴＭＲは、２通りの磁化方向のいずれかに磁化されて、その電気抵抗は、ＲｍｉｎおよびＲｍａｘのいずれか一方に設定される。また、以下においては、両者の電気抵抗差Ｒｍａｘ−ＲｍｉｎをΔＲと表記する。
【００８４】
正規メモリセルＭＣは、１行ごとにビット線ＢＬおよび／ＢＬのいずれか一方と接続される。たとえば、第１番目のメモリセル列に属する正規メモリセルについて説明すれば、第１行目の正規メモリセルは、ビット線／ＢＬと結合され、第２行目の正規メモリセルはビット線／ＢＬ１と結合され、以下同様に、正規メモリセルおよびスペアメモリセルの各々は、奇数行において一方のビット線／ＢＬ１〜／ＢＬｍと接続され、偶数行において、他方のビット線ＢＬ１〜ＢＬｍと接続される。同様に、スペアメモリセルＳＭＣは、奇数行においてスペアビット線／ＳＢＬ１〜／ＳＢＬｍと接続され、偶数行において、スペアビット線ＳＢＬ１〜ＳＢＬｍと接続される。
【００８５】
メモリアレイ１０は、さらに、ビット線ＢＬ１，／ＢＬ１〜ＢＬｍ，／ＢＬｍおよびスペアビット線ＳＢＬ１，／ＳＢＬ１〜ＳＢＬｋ，／ＳＢＬｋとそれぞれ結合される複数のダミーメモリセルＤＭＣを有する。
【００８６】
各ダミーメモリセルＤＭＣは、ダミー抵抗素子ＴＭＲｄおよびダミーアクセス素子ＡＴＲｄを有する。ダミー抵抗素子ＴＭＲｄの電気抵抗Ｒｄは、ＭＴＪメモリセルＭＣの記憶データレベル“１”および“０”にそれぞれ対応する電気抵抗ＲｍａｘおよびＲｍｉｎの中間値に、すなわちＲｍａｘ＞Ｒｄ＞Ｒｍｉｎに設定される。ダミーアクセス素子ＡＴＲｄは、ＭＴＪメモリセルのアクセス素子と同様に、代表的には電界効果型トランジスタで構成される。したがって、以下においては、ダミーアクセス素子をダミーアクセストランジスタＡＴＲｄとも称する。
【００８７】
ダミーメモリセルＤＭＣは、ダミーリードワード線ＤＲＷＬ１およびＤＲＷＬ２のいずれか一方と対応するように、２行×ｍ列に配置される。ダミーリードワード線ＤＲＷＬ１に対応するダミーメモリセルは、ビット線ＢＬ１〜ＢＬｍおよびスペアビット線ＳＢＬ１〜ＳＢＬｋとそれぞれ結合される。一方、ダミーリードワード線ＤＲＷＬ２に対応する残りのダミーメモリセルは、ビット線／ＢＬ１〜／ＢＬｍおよびスペアビット線／ＳＢＬ１〜／ＳＢＬｋとそれぞれ結合される。以下においては、ダミーリードワード線ＤＲＷＬ１およびＤＲＷＬ２を総称して、単にダミーリードワード線ＤＲＷＬとも表記する。
【００８８】
さらに、ダミーメモリセルの行にそれぞれ対応して、ダミーライトワード線ＤＷＷＬ１，ＤＷＷＬ２が配置される。なお、ダミー抵抗素子ＴＭＲｄの構造によっては、ダミーライトワード線の配置は不要となるが、メモリアレイ上での形状の連続性を確保して製造プロセスの複雑化を避けるために、ライトワード線ＷＷＬと同様に設計されたダミーライトワード線ＤＷＷＬ１，ＤＷＷＬ２が設けられる。
【００８９】
データ読出時において、ワード線ドライバ３０は、行選択結果に応じて、各リードワード線ＲＷＬおよびダミーリードワード線ＤＲＷＬ１，ＤＲＷＬ２を選択的にＨレベル（電源電圧Ｖｃｃ１）に活性化する。具体的には、奇数行が選択されて、選択行の正規メモリセルおよびスペアメモリセルがビット線／ＢＬ１〜／ＢＬｍおよびスペアビット線／ＳＢＬ１〜／ＳＢＬｋと接続される場合には、ダミーリードワード線ＤＲＷＬ１がさらに活性化されて、ダミーメモリセル群が、ビット線ＢＬ１〜ＢＬｍおよびスペアビット線ＳＢＬ１〜ＳＢＬｋと接続される。偶数行が選択される場合には、選択行のリードワード線に加えて、ダミーリードワード線ＤＲＷＬ２が活性化される。
【００９０】
ワード線ドライバ３０は、データ書込時において、選択行のライトワード線ＷＷＬの一端を、電源電圧Ｖｃｃ２と結合する。これにより、実施の形態１と同様に、選択行のライトワード線ＷＷＬ上に、ワード線ドライバ３０から領域４０へ向かう方向に、行方向のデータ書込電流Ｉｐを流すことができる。一方、非選択行のライトワード線は、ワード線ドライバ３０によって、接地電圧Ｖｓｓと結合される。
【００９１】
メモリセル列にそれぞれ対応して、列選択を実行するためのコラム選択線ＣＳＬ１〜ＣＳＬｍが設けられる。列デコーダ２５は、コラムアドレスＣＡのデコード結果、すなわち列選択結果に応じて、データ書込およびデータ読出時の各々において、コラム選択線ＣＳＬ１〜ＣＳＬｍのうちの１本を選択状態（Ｈレベル）に活性化する。
【００９２】
さらに、スペアメモリセル列にそれぞれ対応して、スペアコラム選択線ＳＣＳＬ１〜ＳＣＳＬｋが設けられる。スペアコラムドライバＳＣＶ１〜ＳＣＶｋは、冗長制御回路１０５からのスペアイネーブル信号ＳＥ１〜ＳＥｋにそれぞれ応答して、対応するスペアコラム選択線を選択状態（Ｈレベル）に活性化する。スペアイネーブル信号ＳＥ１〜ＳＥｋの生成については、後程詳細に説明する。
【００９３】
さらに、読出データおよび書込データを伝達するためのデータバス対ＤＢＰとが配置される。データバス対ＤＢＰは、互いに相補のデータバスＤＢおよび／ＤＢを含む。
【００９４】
読出／書込制御回路５０は、データ書込回路５１Ｗと、データ読出回路５１Ｒと、メモリセル列にそれぞれ対応して設けられるコラム選択ゲートＣＳＧ１〜ＣＳＧｍと、スペアメモリセル列にそれぞれ対応して設けられるスペアコラム選択ゲートＳＣＳＧ１〜ＳＣＳＧｋとを含む。
【００９５】
以下においては、コラム選択線ＣＳＬ１〜ＣＳＬｍ、スペアコラム選択線ＳＣＳＬ１〜ＳＣＳＬｋ、コラム選択ゲートＣＳＧ１〜ＣＳＧｍおよびスペアコラム選択ゲートＳＣＳＧ１〜ＳＣＳＧｋをそれぞれ総称して、単に、コラム選択線ＣＳＬ、スペアコラム選択線ＳＣＳＬ、コラム選択ゲートＣＳＧおよびスペアコラム選択ゲートＳＣＳＧともそれぞれ称する。
【００９６】
各コラム選択ゲートＣＳＧは、データバスＤＢと対応するビット線ＢＬとの間に電気的に結合されるトランジスタスイッチと、データバス／ＤＢと対応するビット線／ＢＬとの間に電気的に結合されるトランジスタスイッチとを有する。これらのトランジスタスイッチは、対応するコラム選択線ＣＳＬの電圧に応じてオン・オフする。すなわち、対応するコラム選択線ＣＳＬが選択状態（Ｈレベル）に活性化された場合には、各コラム選択ゲートＣＳＧは、データバスＤＢおよび／ＤＢを、対応するビット線ＢＬおよび／ＢＬのそれぞれと電気的に結合する。
【００９７】
各スペアコラム選択ゲートＳＣＳＧも、コラム選択ゲートＣＳＧと同様の構成を有し、対応するスペアコラム選択線ＳＣＳＬが選択状態（Ｈレベル）に活性化された場合に、対応するスペアビット線ＳＢＬおよび／ＳＢＬを、データバスＤＢおよび／ＤＢのそれぞれと電気的に結合する。
【００９８】
次に、ＭＲＡＭデバイス１における列選択動作を説明する。すでに説明したように、列選択動作には、不良コラムを置換救済するための冗長制御が含まれる。
【００９９】
プログラム回路１００は、ｋ個の不良アドレスＦＡＤ１〜ＦＡＤｋを内部に記憶することができる。プログラム回路１００にプログラムされた不良アドレスＦＡＤ１〜ＦＡＤｋは、冗長制御回路１０５に伝達される。冗長制御回路１０５は、選択列を示すためのコラムアドレスＣＡが、不良アドレスＦＡＤ１〜ＦＡＤｋと一致するかどうかを判定する。
【０１００】
図３は、冗長制御回路の構成を示すブロック図である。
図３を参照して、冗長制御回路１０５は、不良アドレスＦＡＤ１〜ＦＡＤｋにそれぞれ対応して設けられる冗長判定ユニットＲＪＵ１〜ＲＪＵｋと、ノーマルアクセス制御ゲート１０６とを有する。冗長判定ユニットＲＪＵ１〜ＲＪＵｋの各々に対して、コラムアドレスビットＣＡＢ＜０：ｈ＞（ＣＡＢ（０）〜ＣＡＢ（ｈ），ｈ：自然数）で構成される（ｈ＋１）ビットのコラムアドレスＣＡが入力される。冗長判定ユニットＲＪＵ１〜ＲＪＵｋに対して、プログラム回路１００からの不良アドレスＦＡＤ１〜ＦＡＤｋのそれぞれが与えられる。不良アドレスＦＡＤ１〜ＦＡＤｋの各々は、コラムアドレスＣＡと同様に、（ｈ＋１）ビットを有する。
【０１０１】
冗長判定ユニットＲＪＵ１〜ＲＪＵｋは、コラムアドレスＣＡと不良アドレスＦＡＤ１〜ＦＡＤｋとの比較結果に基づいて、スペアイネーブル信号ＳＥ１〜ＳＥｋを生成する。以下においては、冗長判定ユニットＲＪＵ１〜ＲＪＵｋ、不良アドレスＦＡＤ１〜ＦＡＤｋおよびスペアイネーブル信号ＳＥ１〜ＳＥｋのそれぞれを総称して、冗長判定ユニットＲＪＵ、不良アドレスＦＡＤおよびスペアイネーブル信号ＳＥとも称する。
【０１０２】
各冗長判定ユニットＲＪＵは、コラムアドレスＣＡと対応する不良アドレスＦＡＤとが一致する場合に、対応するスペアイネーブル信号ＳＥをＨレベルに活性化する。たとえば、冗長判定ユニットＲＪＵ１は、コラムアドレスＣＡと不良アドレスＦＡＤとが一致する場合に、スペアイネーブル信号ＳＥ１を活性化する。
【０１０３】
図４は、図３に示される冗長判定ユニットの構成を説明するブロック図である。図３に示される冗長判定ユニットＲＪＵ１〜ＲＪＵｋの各々の構成は同様であるので、図４においては、冗長判定ユニットＲＪＵ１の構成について説明する。
【０１０４】
図４を参照して、プログラム回路１００は、各々が、プログラム情報を構成するプログラムデータを記憶する複数のプログラムユニットＰＵを有する。各プログラムユニットＰＵは、磁気プログラム入力に応答して、初期状態である非プログラム状態からプログラム状態に変化して、１ビットのプログラムデータを不揮発的に記憶する。図４においては、複数のプログラムユニットのうちの、冗長判定ユニットＲＪＵ１に対応するプログラムユニットＰＵ０〜ＰＵｈが代表的に示される。プログラムユニットＰＵ０〜ＰＵｈは、（ｈ＋１）ビットの不良アドレスＦＡＤ１のそれぞれのビットを記憶する。
【０１０５】
プログラムユニットＰＵ０〜ＰＵｈは、プログラムデータ読出時に、各々の内部の磁化状態に応じて、プログラム信号φａ０，φｂ０〜φａｈ，φｂｈをそれぞれ出力する。以下においては、プログラム信号φａ０〜φａｈおよびφｂ０〜φｂｈのそれぞれを、プログラム信号φａおよびφｂとも総称する。これらのプログラム信号φａおよびφｂの各々は、プログラム情報を不揮発的な記憶に、すなわちプログラムに用いられる１ビットの信号である。
【０１０６】
プログラム信号φａは、対応するプログラムユニットＰＵが非プログラム状態およびプログラム状態のいずれであるかを示す信号であり、プログラム信号φｂは、対応するプログラムユニットＰＵが記憶するプログラムデータのレベルを示す信号である。
【０１０７】
冗長判定ユニットＲＪＵ１は、プログラム信号φａ０〜φａｈのＡＮＤ論理演算結果を出力する論理ゲート１０７と、プログラムユニットＰＵ０〜ＰＵｈにそれぞれ対応して設けられる一致判定ゲートＪＧ０〜ＪＧｈと、論理ゲート１０７および一致判定ゲートＪＧ０〜ＪＧｈの出力に応じてスペアイネーブル信号を生成するための論理回路１０８とを含む。
【０１０８】
一致判定ゲートＪＧ０〜ＪＧｈの各々は、コラムアドレスビットＣＡＢ（０）〜ＣＡＢ（ｈ）の対応する１つと、プログラムユニットＰＵ０〜ＰＵｈの対応する１つに記憶される不良アドレスビットとが、一致するときにＨレベル信号を出力し、不一致のときにＬレベル信号を出力する。したがって、コラムアドレスビットＣＡＢ（０）〜ＣＡＢ（ｈ）で示されるコラムアドレスと、不良アドレスＦＡＤ１とが一致すると一致判定ゲートＪＧ０〜ＪＧｈの出力は、全てＨレベルに設定される。
【０１０９】
また、プログラム信号φａは、対応するプログラムユニットＰＵが非プログラム状態であるときにＬレベルに設定され、プログラム状態であるときにＨレベルに設定される。したがって、論理ゲート１０７の出力は、プログラムユニットＰＵ０〜ＰＵｈの各々がプログラム状態であるときにＨレベルに設定される。
【０１１０】
このような構成とすることにより、プログラムユニットＰＵ０〜ＰＵｈを用いて不良アドレスＦＡＤ１がプログラムされており、かつ、入力されたコラムアドレスＣＡが不良アドレスＦＡＤ１と一致するときに、冗長判定ユニットＲＪＵ１は、対応する冗長回路（スペア列）ＲＤ１をアクセス対象に指定するために、スペアイネーブル信号ＳＥ１をＨレベルに活性化する。
【０１１１】
再び図３を参照して、スペアイネーブル信号ＳＥ１〜ＳＥｋは、スペアコラムドライバＳＣＶ１〜ＳＣＶｋへそれぞれ伝達される。スペアコラムドライバＳＣＶ１〜ＳＣＶｋの各々は、対応するスペアイネーブル信号ＳＥがＨレベルに活性化された場合に、対応するスペアコラム選択線ＳＣＳＬを選択状態（Ｈレベル）に活性化する。
【０１１２】
ノーマルアクセス制御ゲート１０６は、スペアイネーブル信号ＳＥ１〜ＳＥｋのＮＯＲ演算結果を、ノーマルイネーブル信号ＮＥとして出力する。したがって、コラムアドレスＣＡと不良アドレスＦＡＤ１〜ＦＡＤｋのいずれか１つとが一致する場合には、列デコーダ２５による正規メモリセルに対するアクセスを中止させるために、ノーマルイネーブル信号はＬレベルに非活性化される。一方、コラムアドレスＣＡが不良アドレスＦＡＤ１〜ＦＡＤｋのいずれとも一致しない場合には、ノーマルイネーブル信号ＮＥがＨレベルに活性化される。
【０１１３】
図５は、列デコーダ２５の概略構成を示すブロック図である。
図５を参照して、列デコーダ２５は、アドレスプリデコード回路２６と、制御ゲート２７と、デコード回路およびドライバ２８とを有する。
【０１１４】
アドレスプリデコード回路２６は、（ｈ＋１）ビットのコラムアドレスＣＡを受けてプリデコードを行ない、ｇビット（ｇ：ｇ＞（ｈ＋１）の整数）のプリデコード信号ＣＰＤＲを生成する。制御ゲート２７は、ｇビットのプリデコード信号ＣＰＤＲと、冗長制御回路１０５からのノーマルイネーブル信号ＮＥとを受けて、ｇビットのコラムプリデコード信号ＣＰＤを生成する。
【０１１５】
制御ゲート２７は、プリデコード信号ＣＰＤＲのそれぞれのビットにおいてノーマルイネーブル信号ＮＥとのＮＡＮＤ演算結果を行なうためのｇビット分のＮＡＮＤゲートを総括的に表記している。したがって、ノーマルイネーブル信号ＮＥがＨレベルに活性化された場合には、コラムプリデコード信号ＣＰＤは、プリデコード信号ＣＰＤＲのそれぞれのビットを反転した信号に相当する。一方、ノーマルイネーブル信号ＮＥがＬレベルに非活性化されると、コラムプリデコード信号ＣＰＤの各ビットは、Ｈレベルに固定される。
【０１１６】
デコード回路およびドライバ２８は、制御ゲート２７からのコラムプリデコード信号ＣＰＤに応答して、コラム選択線ＣＳＬ１〜ＣＳＬｍを選択的に活性化する。したがって、ノーマルイネーブル信号ＮＥがＨレベルに活性化された場合、すなわちコラムアドレスＣＡがいずれかの不良アドレスＦＡＤとも一致しない場合には、コラムアドレスＣＡに応じた１本のコラム選択線ＣＳＬが活性化されて、正規メモリセルに対するアクセスが実行される。
【０１１７】
一方、ノーマルイネーブル信号ＮＥがＬレベルに非活性化された場合、すなわちコラムアドレスＣＡがいずれかの不良アドレスＦＡＤと一致する場合には、正規メモリセルに対応するコラム選択線ＣＳＬ１〜ＣＳＬｍの各々は非活性化されて、正規メモリセルに対するアクセスは実行されない。
【０１１８】
再び図２を参照して、読出／書込制御回路６０は、メモリセル列にそれぞれ対応して設けられる短絡スイッチトランジスタ６２−１〜６２−ｍ，６２−ｓ１〜６２−ｓｋおよび、制御ゲート６６−１〜６６−ｍ，６６−ｓ１〜６６−ｓｋを有する。読出／書込制御回路６０は、さらに、ビット線ＢＬ１，／ＢＬ１〜ＢＬｍ，／ＢＬｍおよびスペアビット線ＳＢＬ１，／ＳＢＬ１〜ＳＢＬｋ，／ＳＢＬｋと接地電圧Ｖｓｓとの間にそれぞれ設けられるプリチャージトランジスタ６４−１ａ，６４−１ｂ〜６４−ｍａ，６４−ｍｂおよび６４−ｓ１ａ，６４−ｓ１ｂ〜６４−ｓｋａ，６４−ｓｋｂを有する。
【０１１９】
以下においては、短絡スイッチトランジスタ６２−１〜６２−ｍ，６２−ｓ１〜６２−ｓｋ、プリチャージトランジスタ６４−１ａ，６４−１ｂ〜６４−ｍａ，６４−ｍｂおよび６４−ｓ１ａ，６４−ｓ１ｂ〜６４−ｓｋａ，６４−ｓｋｂならびに制御ゲート６６−１〜６６−ｍ，６６−ｓ１〜６６−ｓｋをそれぞれ総称して、短絡スイッチトランジスタ６２、プリチャージトランジスタ６４および制御ゲート６６とも称する。
【０１２０】
各制御ゲート６６は、対応するコラム選択線ＣＳＬまたはスペアコラム選択線ＳＣＳＬと制御信号ＷＥとのＡＮＤ論理演算結果を出力する。したがって、データ書込動作時には、コラムアドレスＣＡに対応する選択列もしくはスペア列において、制御ゲート６６の出力が、Ｈレベルへ選択的に活性化される。
【０１２１】
短絡スイッチトランジスタ６２は、対応する制御ゲート６６の出力にそれぞれ応答してオン／オフする。したがって、データ書込動作時には、コラムアドレスＣＡに対応する、選択列もしくはスペア列において、ビット線ＢＬおよび／ＢＬまたは、スペアビット線ＳＢＬおよび／ＳＢＬの一端同士は、短絡スイッチトランジスタ６２によって電気的に結合される。
【０１２２】
各プリチャージトランジスタ６４は、ビット線プリチャージ信号ＢＬＰＲの活性化に応答してオンすることにより、ビット線ＢＬ１，／ＢＬ１〜ＢＬｍ，／ＢＬｍおよびスペアビット線ＳＢＬ１，／ＳＢＬ１〜ＳＢＬｋ，／ＳＢＬｋの各々を接地電圧Ｖｓｓにプリチャージする。コントロール回路５によって生成されるビット線プリチャージ信号ＢＬＰＲは、ＭＲＡＭデバイス１のアクティブ期間において、少なくともデータ読出実行前の所定期間においてＨレベルに活性化される。一方、ＭＲＡＭデバイス１のアクティブ期間のうちのデータ読出動作時およびデータ書込動作時においては、ビット線プリチャージ信号ＢＬＰＲは、Ｌレベルに非活性化されて、プリチャージトランジスタ６４はオフされる。
【０１２３】
図６は、ＭＲＡＭデバイスにおける置換救済を説明するためのデータ読出動作およびデータ書込動作時の動作波形図である。
【０１２４】
まず、データ書込時の動作について説明する。ワード線ドライバ３０は、行デコーダ２０の行選択結果に応じて、選択行に対応するライトワード線ＷＷＬを活性化して、電源電圧Ｖｃｃと接続する。各ライトワード線ＷＷＬの一端は、領域４０において接地電圧Ｖｓｓと結合されているので、選択行のライトワード線ＷＷＬには、ワード線ドライバ３０から領域４０に向かう方向にデータ書込電流Ｉｐが流される。一方、非選択行においては、ライトワード線ＷＷＬは非活性状態（Ｌレベル：接地電圧Ｖｓｓ）に維持されるので、データ書込電流は流れない。
【０１２５】
コラムアドレスＣＡが不良アドレスＦＡＤのいずれとも一致しない場合には、選択列のコラム選択線ＣＳＬが選択状態（Ｈレベル）に活性化されて、選択列のビット線ＢＬおよび／ＢＬの一端ずつは、データバスＤＢおよび／ＤＢとそれぞれ結合される。さらに、対応する短絡スイッチトランジスタ６２がターンオンして、選択列のビット線ＢＬおよび／ＢＬの他端（コラム選択ゲートＣＳＧの反対側）同士を短絡する。
【０１２６】
一方、コラムアドレスＣＡが不良アドレスＦＡＤのいずれかと一致した場合には、対応するスペアコラム選択線ＳＣＳＬが選択状態（Ｈレベル）に活性化されて、選択列のビット線ＢＬおよび／ＢＬに代えて、対応するスペアビット線ＳＢＬおよび／ＳＢＬの一端ずつが、データバスＤＢおよび／ＤＢとそれぞれ結合される。さらに、対応する短絡スイッチトランジスタ６２がターンオンして、対応するスペアビット線ＳＢＬおよび／ＳＢＬの他端（スペアコラム選択ゲートＳＣＳＧの反対側）同士を短絡する。
【０１２７】
データ書込回路５１Ｗは、データバスＤＢおよび／ＤＢを、電源電圧Ｖｃｃ２および接地電圧Ｖｓｓのいずれか一方ずつに設定する。たとえば、書込データＤＩＮのデータレベルがＬレベルである場合には、データバスＤＢにＬレベルデータを書込むためのデータ書込電流−Ｉｗが流される。データ書込電流−Ｉｗは、コラム選択ゲートＣＳＧまたはスペアコラム選択ゲートＳＣＳＧを介して、選択列のビット線ＢＬまたは対応するスペアビット線ＳＢＬに供給される。
【０１２８】
選択列のビット線ＢＬまたは対応するスペアビット線ＳＢＬに流されるデータ書込電流−Ｉｗは、短絡スイッチトランジスタ６２によって折返される。これにより、他方のビット線／ＢＬまたはスペアビット線／ＳＢＬにおいては、反対方向のデータ書込電流＋Ｉｗが流される。ビット線／ＢＬまたはスペアビット線／ＳＢＬを流れるデータ書込電流＋Ｉｗは、コラム選択ゲートＣＳＧまたはスペアコラム選択ゲートＳＣＳＧを介してデータバス／ＤＢに伝達される。
【０１２９】
書込データＤＩＮのデータレベルがＨレベルである場合には、データバスＤＢおよび／ＤＢの電圧設定を入換えることによって、反対方向のデータ書込電流を、選択列のビット線ＢＬ，／ＢＬまたは対応するスペアビット線ＳＢＬ，／ＳＢＬに流すことができる。
【０１３０】
これにより、コラムアドレスＣＡが不良アドレスＦＡＤのいずれとも一致しない場合には、対応するライトワード線ＷＷＬおよびビット線ＢＬ（／ＢＬ）の両方にデータ書込電流が流された正規メモリセル（選択メモリセル）に対して、データ書込が実行される。一方、コラムアドレスＣＡが不良アドレスＦＡＤのいずれかと一致した場合には、対応するライトワード線ＷＷＬおよびスペアビット線ＳＢＬ（／ＳＢＬ）の両方にデータ書込電流が流されたスペアメモリセルに対して、データ書込が実行される。
【０１３１】
データ書込時においては、リードワード線ＲＷＬは非選択状態（Ｌレベル）に維持される。また、データ書込時においてもビット線プリチャージ信号ＢＬＰＲをＨレベルへ活性化することによって、データ書込時におけるビット線ＢＬおよび／ＢＬの電圧は、データ読出時のプリチャージ電圧レベルに相当する接地電圧Ｖｓｓに設定される。このように、非選択列に対応するビット線ＢＬ，／ＢＬおよびスペアビット線ＳＢＬ，／ＳＢＬのデータ書込後における電圧を、データ読出に備えたプリチャージ電圧と一致させることによって、データ読出前に新たなプリチャージ動作の実行が不要となり、データ読出動作を高速化することができる。
【０１３２】
次に、データ読出動作について説明する。
データ読出時において、ワード線ドライバ３０は、行デコーダ２０の行選択結果に応じて、選択行に対応するリードワード線ＲＷＬをＨレベルに活性化する。非選択行においては、リードワード線ＲＷＬの電圧レベルは非活性状態（Ｌレベル）に維持される。
【０１３３】
データ読出が開始されて、選択行のリードワード線ＲＷＬがＨレベルに活性化されて、対応するアクセストランジスタＡＴＲがターンオンすると、選択行に対応する正規メモリセルおよびスペアメモリセルは、アクセストランジスタＡＴＲを介して、ビット線ＢＬ，／ＢＬおよびスペアビット線ＳＢＬ，／ＳＢＬと、接地電圧Ｖｓｓとの間に電気的に結合される。
【０１３４】
データ読出回路５１Ｒは、データバスＤＢおよび／ＤＢの各々を、電源電圧Ｖｃｃ１でプルアップして、一定のセンス電流Ｉｓを供給する。
【０１３５】
さらに、データ書込時と同様に、コラムアドレスＣＡに応じて、選択列のコラム選択線ＣＳＬまたは、対応するスペアコラム選択線ＳＣＳＬが選択状態（Ｈレベル）に活性化される。
【０１３６】
コラムアドレスＣＡが不良アドレスＦＡＤのいずれとも一致しない場合には、データバスＤＢ（／ＤＢ）および選択列のビット線ＢＬ（／ＢＬ）を介して、選択メモリセル（正規メモリセル）のトンネル磁気抵抗素子ＴＭＲをセンス電流Ｉｓが通過する。これにより、選択列のビット線ＢＬおよび／ＢＬの一方およびデータバスＤＢ，／ＤＢの一方ずつには、トンネル磁気抵抗素子ＴＭＲの電気抵抗（Ｒｍａｘ，Ｒｍｉｎ）、すなわち選択メモリセル記憶データのレベルに応じた電圧変化が生じる。同様に、選択列のビット線ＢＬ，／ＢＬの他方およびデータバスＤＢ，／ＤＢの他方ずつには、ダミーメモリセルＤＭＣのダミー抵抗素子ＴＭＲｄの電気抵抗Ｒｄに応じた電圧変化が生じる。
【０１３７】
たとえば、選択メモリセルの記憶データレベルが“１”（電気抵抗Ｒｍａｘ）である場合には、選択メモリセルと結合されたビット線ＢＬおよび／ＢＬの一方には、ダミーメモリセルＤＭＣと結合されたビット線ＢＬおよび／ＢＬの他方に生じる電圧変化ΔＶｍよりも大きい電圧変化ΔＶ１（ΔＶ１＞ΔＶｍ）が生じる。同様に、データバスＤＢ，／ＤＢにおいても、電圧変化ΔＶｂ１およびΔＶｂｍが生じる（ΔＶｂｍ＞ΔＶｂ１）。このようにして生じたデータバスＤＢおよび／ＤＢの間の電圧差をデータ読出回路５１Ｒによって検知増幅して、選択メモリセルの記憶データを読出データＤＯＵＴとして出力することができる。
【０１３８】
一方、コラムアドレスＣＡが不良アドレスＦＡＤのいずれかと一致した場合には、データバスＤＢ（／ＤＢ）および選択列のビット線ＢＬ（／ＢＬ）を介して、スペアメモリセルのトンネル磁気抵抗素子ＴＭＲをセンス電流Ｉｓが通過する。これにより、スペアビット線ＳＢＬおよび／ＳＢＬの一方およびデータバスＤＢ，／ＤＢの一方ずつには、トンネル磁気抵抗素子ＴＭＲの電気抵抗（Ｒｍａｘ，Ｒｍｉｎ）、すなわちスペアメモリセルの記憶データのレベルに応じた電圧変化が生じる。選択列のビット線ＢＬ，／ＢＬの他方およびデータバスＤＢ，／ＤＢの他方ずつには、正規メモリセルがアクセスされたときと同様に、ダミー抵抗素子ＴＭＲｄの電気抵抗Ｒｄに応じた電圧変化が生じる。
【０１３９】
このように、コラムアドレスＣＡによって不良コラムが選択された場合でも、対応する冗長回路（スペア列）のスペアメモリセルにアクセスして、データ書込およびデータ読出を正常に実行できる。したがって、冗長回路に相当するスペア列によって、欠陥メモリセルをメモリセル列単位で置換救済することができる。
【０１４０】
また、ビット線ＢＬ，／ＢＬおよびスペアビット線ＳＢＬ，／ＳＢＬのプリチャージ電圧を接地電圧Ｖｓｓとしているので、非選択列において、選択行のリードワード線ＲＷＬが活性化に応答してターンオンしたアクセストランジスタを介して、ビット線ＢＬ，／ＢＬおよびスペアビット線ＳＢＬ，／ＳＢＬから放電電流が生じることがない。この結果、プリチャージ動作時のビット線およびスペアビット線の充放電による消費電力を削減できる。
【０１４１】
なお、データ書込回路５１Ｗの動作電源電圧であるＶｃｃ２は、データ読出回路５１Ｒの動作電源電圧であるＶｃｃ１よりも高く設定される。データ書込時において、選択メモリセルのトンネル磁気抵抗素子ＴＭＲを磁化するために必要なデータ書込電流Ｉｐ、±Ｉｗは、データ読出に必要なセンス電流Ｉｓよりも大きいからである。たとえば、電源電圧Ｖｃｃ２には、ＭＲＡＭデバイス１外部から供給される外部電源電圧をそのまま適用し、さらに、この外部電源電圧を図示しない電圧降下回路によって降下させて、電源電圧Ｖｃｃ１を発生する構成とすれば、上記のこれらの電源電圧Ｖｃｃ１およびＶｃｃ２を効率的に供給することができる。
【０１４２】
次に、不良アドレスすなわちプログラム情報を効率的に記憶するためのプログラム回路の構成について説明する。
【０１４３】
図７は、図４に示されたプログラムユニットＰＵの実施の形態１に従う構成を示す回路図である。
【０１４４】
図７を参照して、プログラムユニットＰＵは、不良アドレスビットに相当するプログラムデータを磁気的かつ不揮発的に記憶するためのプログラムセルＰＲＣ１およびＰＲＣ２を有する。後ほど詳細に説明するように、プログラムセルＰＲＣ１およびＰＲＣ２は、正規メモリセルのトンネル磁気抵抗素子ＴＭＲと同様の構造を有する磁気抵抗素子を用いて構成される。プログラムセルＰＲＣ１およびプログラムセルＰＲＣ２の各々は、トンネル磁気抵抗素子ＴＭＲと同様に、２通りの磁化方向のいずれかに磁化されるので、それぞれの電気抵抗Ｒ１およびＲ２は、正規メモリセル中のトンネル磁気抵抗素子ＴＭＲと同様に、ＲｍｉｎおよびＲｍａｘのいずれか一方に設定される
プログラムユニットＰＵは、さらに、プログラムセルＰＲＣ１およびＰＲＣ２にそれぞれ対応して設けられる、カレントセンスアンプ１１０および１２０と、レファレンス抵抗１１５および１２５と、論理ゲート１３０とを含む。
【０１４５】
レファレンス抵抗１１５および１２５の電気抵抗Ｒｒｅｆは、ＲｍｉｎとＲｍａｘの中間値に、好ましくはＲｒｅｆ＝Ｒｍｉｎ＋ΔＲ／２に設定される。たとえば、レファレンス抵抗の一部を、電気抵抗Ｒｍｉｎに対応する記憶データを保持する、トンネル磁気抵抗素子ＴＭＲと同様の磁気抵抗素子で構成することができる。
【０１４６】
カレントセンスアンプ１１０は、電源電圧Ｖｃｃ１とプログラムセルＰＲＣ１との間に直列に接続されるＰチャネルＭＯＳトランジスタ１１１およびＮチャネルＭＯＳトランジスタ１１３と、電源電圧Ｖｃｃ１とレファレンス抵抗１１５との間に直列に接続されるＰチャネルＭＯＳトランジスタ１１２およびＮチャネルＭＯＳトランジスタ１１４を有する。プログラムセルＰＲＣ１は、ＮチャネルＭＯＳトランジスタ１１３と接地電圧Ｖｓｓとの間に結合される。レファレンス抵抗１１５は、トランジスタ１１４と接地電圧Ｖｓｓとの間に接続される。
【０１４７】
ＰチャネルＭＯＳトランジスタ１１１および１１２のゲートには、コントロール回路５からの制御電圧Ｖｃｎが入力される。ＮチャネルＭＯＳトランジスタ１１３のゲートは、ＰチャネルＭＯＳトランジスタ１１２およびＮチャネルＭＯＳトランジスタ１１４の接続ノードに相当するノードＮ１と接続され、ＮチャネルＭＯＳトランジスタ１１４のゲートは、ＰチャネルＭＯＳトランジスタ１１１およびＮチャネルＭＯＳトランジスタ１１３の接続ノードに相当するノード／Ｎ１と接続される。
【０１４８】
カレントセンスアンプ１２０は、カレントセンスアンプ１１０と同様の構成を有し、ＰチャネルＭＯＳトランジスタ１２１および１２２と、ＮチャネルＭＯＳトランジスタ１２３および１２４とを有する。プログラムセルＰＲＣ２は、ＮチャネルＭＯＳトランジスタ１２３と接地電圧Ｖｓｓとの間に接続される。レファレンス抵抗１２５は、ＮチャネルＭＯＳトランジスタ１２４および接地電圧Ｖｓｓとの間に接続される。
【０１４９】
ＮチャネルＭＯＳトランジスタ１２３のゲートは、ＰチャネルＭＯＳトランジスタ１２２およびＮチャネルＭＯＳトランジスタ１２４の接続ノードに相当するノードＮ２と結合される。ＮチャネルＭＯＳトランジスタ１２４のゲートは、ＰチャネルＭＯＳトランジスタ１２１およびＮチャネルＭＯＳトランジスタ１２３の接続ノードに相当するノード／Ｎ２と接続される。
【０１５０】
論理ゲート１３０は、ノードＮ１およびＮ２の信号レベルの排他的論理和（ＥＸ−ＯＲ）論理演算結果を、プログラム信号φａとして出力する。したがって、プログラム信号φａは、プログラムセルＰＲＣ１およびＰＲＣ２の電気抵抗が揃っている場合にＬレベルに設定され、両者の電気抵抗が異なる場合にＨレベルに設定される。一方、ノードＮ２の信号レベルは、プログラム信号φｂとして出力される。
【０１５１】
図８は、プログラムセルの電気抵抗とプログラムユニットの状態との対応関係を示す図である。
【０１５２】
図８を参照して、初期状態においては、プログラムセルＰＲＣ１およびＰＲＣ２は同一方向に磁化されて、両者の電気抵抗は同様である。本実施の形態においては、初期状態において、プログラムセルＰＲＣ１およびＰＲＣ２の各々の電気抵抗は、Ｒｍｉｎに設定されるものとする。
【０１５３】
プログラム状態時には、プログラムセルＰＲＣ１およびＰＲＣ２は、異なる方向に磁化されて、それぞれに相補データが書込まれる。すなわち、プログラムセルＰＲＣ１およびＰＲＣ２の一方のみが、初期状態とは異なる方向に磁化される。この際に、磁化方向が書換えられる一方のプログラムセルは、書込まれるプログラムデータに応じて選択される。
【０１５４】
すなわち、プログラムデータ書込時には、プログラムセルＰＲＣ２の磁化方向が書換えられて、プログラムセルＰＲＣ１の磁化方向が初期状態と同様に維持されるデータ書込（Ｒ１＝Ｒｍｉｎ，Ｒ２＝Ｒｍａｘ、以下、このような状態を「プログラム状態１」とも称する）と、プログラムセルＰＲＣ１の磁化方向が書換えられて、プログラムセルＰＲＣ２の磁化方向が初期状態と同様に維持される状態（Ｒ１＝Ｒｍａｘ，Ｒ２＝Ｒｍｉｎ、以下、このような状態を「プログラム状態２」とも称する）データ書込とのいずれか一方が選択的に実行される。
【０１５５】
これに対して、プログラムデータ書込が実行されていない、すなわち非プログラム状態のプログラムセルにおいては、プログラムセルＰＲＣ１およびＰＲＣ２の電気抵抗Ｒ１およびＲ２は、初期状態のまま（Ｒ１＝Ｒ２＝Ｒｍｉｎ）である。
【０１５６】
図９は、プログラムデータ読出時および書込時におけるプログラム信号のレベルを説明する動作波形図である。
【０１５７】
図９（ａ）を参照して、初期状態においては、プログラムセルＰＲＣ１およびＰＲＣ２の電気抵抗Ｒ１およびＲ２は、いずれもレファレンス抵抗１１５の抵抗値Ｒｒｅｆよりも小さいので、制御電圧Ｖｃｎを、中間電圧Ｖｍ（Ｖｓｓ＜Ｖｍ＜Ｖｃｃ）に変化させて、プログラムデータ読出を実行しても、ノードＮ１およびＮ２の電圧の各々は、同様にＨレベルに変化する。したがって、論理ゲート１３０が出力するプログラム信号φａは、非プログラム状態を示すＬレベル（接地電圧Ｖｓｓ）に設定される。
【０１５８】
詳細については後程説明するが、本実施の形態においては、初期状態（非プログラム状態）における各プログラムセルの電気抵抗をＲｍｉｎと定義することによって、ＭＲＡＭデバイスの製造工程の簡略化を図っている。これにより、さらに、図７に示した論理ゲート１３０を一致比較ゲートではなく、より簡易に構成可能なＮＡＮＤゲートに置換することができる。
【０１５９】
図９（ｂ）を参照して、プログラムデータ書込時においては、制御電圧Ｖｃｎは電源電圧Ｖｃｃに設定されて、カレントセンスアンプ１１０および１２０からプログラムセルＰＲＣ１およびＰＲＣ２に対する電流の供給は停止される。さらに、プログラムセルＰＲＣ１およびＰＲＣ２のそれぞれに、上述したプログラム状態１およびプログラム状態２のいずれかに従って、互いに相補のデータが書込まれる。プログラムセルＰＲＣ１およびＰＲＣ２に対して、プログラムデータを書込むための構成については、後程詳細に説明する。
【０１６０】
図９（ｃ）には、プログラム状態のプログラムユニットからのプログラムデータ読出動作が示される。制御電圧Ｖｃｎが中間電圧Ｖｍに設定されると、カレントセンスアンプ１１０および１２０によって、ノードＮ１およびＮ２は、それぞれが異なる電圧レベルに設定される。プログラム状態１（Ｒ２＝Ｒｍａｘ，Ｒ１＝Ｒｍｉｎ）においては、ノードＮ１がＨレベルに変化する一方で、ノードＮ２は、Ｌレベルを維持する。これに対して、プログラム状態２（Ｒ１＝Ｒｍａｘ，Ｒ２＝Ｒｍｉｎ）においては、ノードＮ１の電圧がＬレベルに維持される一方で、ノードＮ２の電圧はＨレベルに変化する。
【０１６１】
したがって、プログラム状態のプログラムユニットにおいては、プログラム状態１およびプログラム状態２のいずれであっても、プログラム信号φａは、Ｈレベルに設定される。これに対して、プログラム信号φｂは、プログラム状態１およびプログラム状態２のいずれであるかに応じて、ＨレベルまたはＬレベルに設定される。
【０１６２】
このような構成とすることにより、各プログラムユニットは、正規メモリセルと同様の磁気抵抗素子で構成される２個のプログラムセルＰＲＣ１およびＰＲＣ２を用いて、１ビットのプログラムデータと、当該プログラムユニットがプログラムデータを記憶しているか否かの情報とを記憶することができる。
【０１６３】
次に、プログラムセルの配置について説明する。
図１０は、プログラムセルの配置を説明する概念図である。以下においては、プログラムセルＰＲＣ１およびＰＲＣ２を総称して、プログラムセルＰＲＣとも称する。
【０１６４】
図１０（ａ）を参照して、各正規メモリセルＭＣを構成するトンネル磁気抵抗素子ＴＭＲは、メモリセル行にそれぞれ対応して設けられるライトワード線ＷＷＬおよび、メモリセル列にそれぞれ対応して設けられるビット線ＢＬの交点に対応して配置される。トンネル磁気抵抗素子においては、ライトワード線ＷＷＬを流れるデータ書込電流によって、磁化困難軸（ＨＡ）方向の磁界が印加され、ビット線ＢＬを流れるデータ書込電流によって磁化容易軸（ＥＡ）方向に沿った磁界が印加される。
【０１６５】
図１０（ｂ）を参照して、各プログラムセルＰＲＣは、プログラムワード線ＰＷＬおよびプログラムビット線ＰＢＬの交点に対応して設けられる。プログラムセルＰＲＣは、トンネル磁気抵抗素子ＴＭＲと同様に設計および作製される。
【０１６６】
プログラムワード線ＰＷＬおよびプログラムビット線ＰＢＬは、異なった方向にそれぞれ沿って配置される。プログラムワード線ＰＷＬには、磁化困難軸（ＨＡ）方向に沿った磁界を発生するためのプログラム電流が流される。一方、プログラムビット線ＰＢＬに対しては、磁化容易軸（ＥＡ）方向に沿った磁界を発生するためのプログラム電流が流される。
【０１６７】
図１１は、正規メモリセルおよびプログラムセルの配置を説明する構造図である。図１１（ａ）には、正規メモリセルの構造図が示される。
【０１６８】
図１１（ａ）を参照して、半導体主基板ＳＵＢ上のｐ型領域ＰＡＲにアクセストランジスタＡＴＲが形成される。アクセストランジスタＡＴＲは、ｎ型領域であるソース／ドレイン領域２１０，２２０と、ゲート２３０とを有する。図示しないが、ソース／ドレイン領域２１０は接地電圧Ｖｓｓと結合されている。また、ライトワード線ＷＷＬは、第１の金属配線層Ｍ１に形成される。
【０１６９】
リードワード線ＲＷＬは、アクセストランジスタＡＴＲのゲート電圧を制御するために設けられるものであり、電流を積極的に流す必要はない。したがって、集積度を高める観点から、リードワード線ＲＷＬは、独立した金属配線層を新たに設けることなく、ゲート２３０と同一の配線層において、ポリシリコン層やポリサイド構造などを用いて形成される。一方、ビット線ＢＬは、第２の金属配線層Ｍ２に形成されて、トンネル磁気抵抗素子ＴＭＲと電気的に結合される。
【０１７０】
アクセストランジスタＡＴＲのソース／ドレイン領域２２０は、コンタクトホールに形成された金属膜２５０、第１金属配線層Ｍ１およびバリアメタル２４０を介して、トンネル磁気抵抗素子ＴＭＲと電気的に結合される。バリアメタル２４０は、トンネル磁気抵抗素子ＴＭＲと金属配線との間を電気的に結合するために設けられる緩衝材である。
【０１７１】
図１１（ｂ）には、一例として、図７に示したプログラムセルＰＲＣ１の構造図が示される。
【０１７２】
図１１（ｂ）を参照して、プログラムセルＰＲＣ１と接続されるＮチャネルＭＯＳトランジスタ１１３は、半導体主基板ＳＵＢ上のｐ型領域に形成される。ＮチャネルＭＯＳトランジスタ１１３は、ｎ型領域であるソース／ドレイン領域２１２，２２２とゲート２３２とを有する。プログラムワード線ＰＷＬは、正規メモリセルＭＣに対応するライトワード線ＷＷＬと同一の金属配線層Ｍ１を用いて配置される。
【０１７３】
ソース／ドレイン領域２１２は、バリアメタル２４２、コンタクトホールに形成された金属膜２５２および金属配線層Ｍ１に形成された金属配線を介して、プログラムセルＰＲＣ１と結合される。ソース／ドレイン領域２２２は、図７に示されるカレントセンスアンプ１１０中のノード／Ｎ１と接続された金属配線と結合される。
【０１７４】
プログラムビット線ＰＢＬは、正規メモリセルＭＣに対応するビット線ＢＬと同一の金属配線層Ｍ２を用いて形成され、プログラムセルＰＲＣ１と電気的に結合される。プログラムビット線ＰＢＬは、プログラムデータ書込時以外には接地電圧Ｖｓｓへ固定される。ゲート２３２は、図７に示されるカレントセンスアンプ１１０中のノードＮ１と接続される。
【０１７５】
このような構成とすることにより、特別な製造工程を設けることなく、各プログラムセルＰＲＣは、正規メモリセルＭＣと同一の製造工程において作製することが可能である。
【０１７６】
図１２は、プログラムデータ書込時においてプログラム電流を供給するための構成を示す回路図である。
【０１７７】
図１２を参照して、プログラムセルＰＲＣ１およびＰＲＣ２に共通にプログラムワード線ＰＷＬが配置され、プログラムセルＰＲＣ１およびＰＲＣ２のそれぞれに対応して、プログラムビット線ＰＢＬ１およびＰＢＬ２が配置される。
【０１７８】
メモリアレイ１０に配置されるライトワード線ＷＷＬと、プログラム回路１００に配置されるプログラムワード線ＰＷＬとは同一方向に沿って配置される。同様に、メモリアレイ１０に配置されるビット線ＢＬと、プログラム回路１００に配置されるプログラムビット線ＰＢＬ１およびＰＢＬ２とは、同一方向に沿って配置される。
【０１７９】
正規メモリセルのトンネル磁気抵抗素子ＴＭＲと、プログラムセルＰＲＣ１およびＰＲＣ２に相当する磁気抵抗素子とは、同一方向に沿って配置される。したがって、ＭＲＡＭデバイスの製造工程の一環として設けられる、トンネル磁気抵抗素子ＴＭＲ内の固定磁化層を所定方向に磁化するための磁界を印加する工程において、プログラムセルＰＲＣの固定磁化層も同時に磁化することができる。また、当該磁化工程において、各正規メモリセルのトンネル磁気抵抗素子ＴＭＲおよび各プログラムセルＰＲＣにおいて、自由磁化層も固定磁化方向と同一方向に磁化される。すなわち、各トンネル磁気抵抗素子ＴＭＲおよび各プログラムセルＰＲＣの電気抵抗は、いずれもＲｍｉｎに設定される。
【０１８０】
したがって、正規メモリセルのトンネル磁気抵抗素子ＴＭＲと、プログラムセルＰＲＣ１およびＰＲＣ２に相当する磁気抵抗素子とを同一方向に沿って配置し、さらに、電気抵抗がＲｍｉｎである状態を各プログラムセルの初期状態（非プログラム状態）と定義すれば、プログラムセルを対象とする専用の磁化工程を設ける必要がない。これによって、ＭＲＡＭデバイスの製造工程を簡略化することができる。
【０１８１】
プログラム回路１００は、プログラムビット線ＰＢＬ１およびＰＢＬ２に供給されるプログラム電流±Ｉｗ（Ｐ）の方向を制御するための制御ゲート１５０，１５２，１６０，１６２と、プログラムビット線ＰＢＬに対応して設けられる電圧設定トランジスタ１５４，１５５および１６４，１６５を含む。
【０１８２】
制御ゲート１５０は、第ｊ番目（ｊ：０〜ｋの整数）のプログラムユニットにプログラムされるプログラムデータＰＤｊと、プログラム動作時にＨレベルに活性化されるプログラム信号ＰＲＧとのＮＡＮＤ演算結果を出力する。制御ゲート１５２は、制御ゲート１５０の出力信号とプログラム信号ＰＲＧとのＮＡＮＤ論理演算結果を出力する。制御ゲート１６０は、制御ゲート１５０と同様の動作をする。制御ゲート１６２は、制御ゲート１５２と同様に、制御ゲート１６０の出力およびプログラム信号ＰＲＧのＮＡＮＤ演算結果を出力する。
【０１８３】
電圧設定トランジスタ１５４は、ＰチャネルＭＯＳトランジスタで構成されて、プログラムビット線ＰＢＬ１の一端と、電源電圧Ｖｃｃ２の間に電気的に結合される。電圧設定トランジスタ１５５は、プログラムビット線ＰＢＬ１の一端側と、接地電圧Ｖｓｓとの間に電気的に結合される。電圧設定トランジスタ１６４は、ＰチャネルＭＯＳトランジスタで構成され、プログラムビット線ＰＢＬ１の他端と電源電圧Ｖｃｃ２との間に電気的に結合される。電圧設定トランジスタ１６５は、ＮチャネルＭＯＳトランジスタで構成され、プログラムビット線ＰＢＬ１の他端と接地電圧Ｖｓｓとの間に電気的に結合される。
【０１８４】
電圧設定トランジスタ１５４および１５５の各ゲートは、制御ゲート１５２の出力と接続される。電圧設定トランジスタ１６４および１６５の各ゲートは、制御ゲート１６０の出力と接続される。
【０１８５】
電圧設定トランジスタ１５７は、ＰチャネルＭＯＳトランジスタで構成されて、プログラムビット線ＰＢＬ２の一端と、電源電圧Ｖｃｃ２の間に電気的に結合される。電圧設定トランジスタ１５８は、プログラムビット線ＰＢＬ２の一端側と、接地電圧Ｖｓｓとの間に電気的に結合される。電圧設定トランジスタ１６７は、ＰチャネルＭＯＳトランジスタで構成され、プログラムビット線ＰＢＬ２の他端と電源電圧Ｖｃｃ２との間に電気的に結合される。電圧設定トランジスタ１６８は、ＮチャネルＭＯＳトランジスタで構成され、プログラムビット線ＰＢＬ２の他端と接地電圧Ｖｓｓとの間に電気的に結合される。
【０１８６】
電圧設定トランジスタ１５７および１５８の各ゲートは、制御ゲート１５０の出力と接続される。電圧設定トランジスタ１６７および１６８の各ゲートは、制御ゲート１６２の出力と接続される。
【０１８７】
プログラムデータ書込時以外（プログラム信号ＰＲＧ＝Ｌレベル）においては、制御ゲート１５０，１５２，１６０，１６２の各々の出力はＨレベルに設定される。したがって、プログラムビット線ＰＢＬ１およびＰＢＬ２の両端の各々は、接地電圧Ｖｓｓと結合される。図１１（ｂ）に示されるように、各プログラムセルは、ＭＯＳトランジスタとプログラムビット線との間に接続されるので、各プログラムビット線を接地電圧と接続することによって、プログラムデータ書込時以外において、図７に示したカレントセンスアンプ１１０，１２０の回路構成が実現される。
【０１８８】
これに対して、プログラムデータ書込時（プログラム信号ＰＲＧ＝Ｈレベル）においては、プログラムデータＰＤｊのレベルに応じて、制御ゲート１５０および１５２の出力は、ＨレベルおよびＬレベルの一方ずつに相補的に設定される。制御ゲート１６０および１６２の出力も、同様に相補的に設定される。ここで、制御ゲート１５０および１６０の出力は同レベルとなり、制御ゲート１５２および１６２の出力は同レベルとなる。
【０１８９】
たとえば、プログラムデータＰＤｊがＨレベルであるときには、プログラムビット線ＰＢＬ１に対しては、電圧設定トランジスタ１５５および１６４がオンし、電圧設定トランジスタ１５４および１６５がオフする。一方、プログラムビット線ＰＢＬ２に対しては、電圧設定トランジスタ１５７および１６８がオンし、電圧設定トランジスタ１５８および１６７がオフする。これにより、図中に点線の矢印で示した方向に、プログラムセルＰＲＣ１およびＰＲＣ２に対してそれぞれ逆方向に作用するプログラム電流±Ｉｗ（Ｐ）が流される。
【０１９０】
一方、プログラムデータＰＤｊがＬレベルであるときには、各電圧設定トランジスタのオン・オフが入れ替わり、プログラムビット線ＰＢＬ１およびＰＢＬ２において、図中に実線の矢印で示した方向に、ＰＤｊ＝Ｈレベルのときとそれぞれ反対のプログラム電流±Ｉｗ（Ｐ）が流される。
【０１９１】
プログラム電流±Ｉｗ（Ｐ）によって、プログラムセルＰＲＣ１およびＰＲＣ２をプログラムデータＰＤｊに応じた方向に磁化するための、磁化容易軸方向に沿ったプログラム磁界が発生される。なお、プログラムデータＰＤｊのレベルに関らず、プログラムビット線ＰＢＬ１およびＰＢＬ２をそれぞれ流れるプログラム電流の向きは互いに反対方向であるので、プログラムデータ書込時には、プログラムセルＰＲＣ１およびＰＲＣ２は、磁化容易軸に沿って互いに反対方向に磁化される。
【０１９２】
プログラム回路１００は、さらに、プログラムワード線ＰＷＬに対応して設けられる選択トランジスタ１７０をさらに有する。選択トランジスタ１７０は、プログラム信号ＰＲＧの反転信号／ＰＲＧをゲートに受けて、電源電圧Ｖｃｃ２とプログラムワード線ＰＷＬの一端との間に電気的に結合される。プログラムワード線ＰＷＬの他端は、接地電圧Ｖｓｓと結合される。したがって、プログラムデータ書込時において、プログラムワード線ＰＷＬに対しては、一定方向のプログラム電流Ｉｐ（Ｐ）が流される。プログラム電流Ｉｐ（Ｐ）によって、プログラムセルＰＲＣの各々に対して、磁化困難軸方向のプログラム磁界が印加される。
【０１９３】
磁化容易軸および磁化困難軸にそれぞれ沿ったプログラム磁界の両方が印加されたプログラムセルＰＲＣにおいて、プログラムデータＰＤｊを書込むための磁化が行なわれる。
【０１９４】
図１３は、プログラムセルに対する入出力信号を説明するための図である。
図１３を参照して、正規メモリセル中の固定磁化層を磁化する工程によって、各プログラムセルは、初期状態に設定されて、プログラムセルＰＲＣ１およびＰＲＣ２の電気抵抗Ｒ１およびＲ２はそれぞれＲｍｉｎに設定される。この状態で、プログラムデータ読出を実行すると、既に説明したように、プログラムユニットから出力されるプログラム信号φａおよびφｂは、ＬレベルおよびＨレベルへそれぞれ設定される。
【０１９５】
プログラムユニットにプログラムデータ（不良アドレスビット）を記憶させるためのプログラムデータ書込時においては、プログラム信号ＰＲＧがＨレベルに設定されるとともに、プログラムデータＰＤｊに応じて、プログラム状態１およびプログラム状態２のいずれかが適用されて、プログラムセルＰＲＣ１およびＰＲＣ２のいずれか一方の磁化方向が、初期状態から変化して、電気抵抗がＲｍａｘに変化する。
【０１９６】
具体的には、プログラムデータＰＤｊがＬレベルであるプログラム状態１においては、プログラムセルＰＲＣ２の電気抵抗Ｒ２がＲｍａｘに変化するようにプログラム電流が供給される。これに対して、プログラムデータＰＤｊがＨレベルであるプログラム状態２においては、プログラムセルＰＲＣ１の電気抵抗Ｒ１がＲｍａｘに変化するようにプログラム電流が供給される。
【０１９７】
プログラムデータ書込によって、初期状態からプログラム状態に変化したプログラムユニットに対してプログラムデータ読出を実行すると、プログラム信号φａはＨレベルに設定され、さらに、プログラム信号φｂは、プログラムデータのレベルに対応して、ＨレベルまたはＬレベルに設定される。
【０１９８】
一方、非プログラム状態、すなわち初期状態のままに維持されたプログラムユニットにおいては、プログラムセルＰＲＣ１およびＰＲＣ２の電気抵抗はＲｍｉｎであり、初期状態から変化しない。したがって、非プログラム状態のプログラムユニットに対してプログラムデータ読出を実行すると、プログラム信号φａおよびφｂの各々は、Ｌレベルに設定される。
【０１９９】
このように、実施の形態１に従うプログラムユニットによれば、特別な製造工程および磁化工程を経ることなく作製および磁化可能なプログラムセルを用いて、１ビットのプログラムデータとともに、当該プログラムユニットがプログラムデータを記憶しているか否かの情報とを記憶し、かつ電流検知によって高速に読出すことができる。
【０２００】
さらに、このようなプログラムユニットによって、欠陥メモリセルを置換救済するための不良アドレスビット等の情報を記憶させて、冗長救済構成を効率的に実現することができる。
【０２０１】
［実施の形態１の変形例１］
以下、実施の形態１の変形例として、各プログラムセルの動作信頼性確保を考慮した、プログラムデータ読出動作について説明する。
【０２０２】
図１４は、実施の形態１の変形例１に従うプログラムデータ読出動作を説明する動作波形図である。
【０２０３】
図１４を参照して、クロック信号ＣＬＫの活性化タイミングに相当する時刻ｔ１０および時刻ｔ２０において、データ読出動作またはデータ書込動作が入力されて、データ読出サイクルまたはデータ書込サイクルが開始されるものとする。データ書込サイクルが開始されると、入力されたアドレス信号に応じた行選択動作および列選択動作が開始される。
【０２０４】
冗長構成を有するＭＲＡＭデバイスにおいては、行選択動作または列選択動作において、入力されたアドレス信号と不良アドレスとが一致するかどうかを、まず判定する必要がある。したがって、データ読出サイクルまたはデータ書込サイクルが開始されてから、初期の所定期間（図１４における時刻ｔ１１〜ｔ１２の期間）において、各プログラムユニットからプログラムデータ、すなわち不良アドレスビットを読出すために、各プログラムユニットに与えられる制御電圧Ｖｃｎが、中間電圧Ｖｍに設定される。これにより、プログラム回路１００から読出された不良アドレスを用いて、冗長制御回路１０５は、所定の置換救済を実行することができる。
【０２０５】
このように各サイクルごとに不良アドレスを読出すため、プログラムセルに対するプログラムデータ読出頻度は、メモリアレイ１０に配置される正規メモリセルおよびスペアセルの各々に対する記憶データ読出頻度と比較して高くなる。
【０２０６】
メモリアレイ１０に配置される正規メモリセルおよびスペアセルの各々において、通常のデータ読出時にトンネル磁気抵抗素子ＴＭＲの両端に印加される電圧は、電源電圧Ｖｃｃ１（リードワード線ＲＷＬの選択状態）である。一方、プログラムデータ読出時における制御電圧Ｖｃｎを中間電圧Ｖｍに設定することによって、プログラムデータ読出時にプログラムセルの両端に印加されるバイアス電圧は、中間電圧Ｖｍ（Ｖｃｃ１＞Ｖｍ＞Ｖｓｓ）となる。したがって、プログラムデータ読出時におけるプログラムセルの通過電流を抑制することができ、プログラムセルの動作信頼性を向上できる。
【０２０７】
さらに、各サイクル内において、不良アドレスが必要な冗長判定の終了後の期間（図１４の時刻ｔ１２〜ｔ２０）において、制御電圧Ｖｃｎは、電源電圧Ｖｃｃ１に設定される。この期間中には、各プログラムセルＰＲＣを通過する電流は生じない。メモリセル列に対応して置換救済を実行する構成においては、行選択結果に応じたリードワード線ＲＷＬおよびライトワード線ＷＷＬの活性化は、冗長判定結果に無関係に実行できる。したがって、通常のデータ読出時におけるリードワード線（選択行）ＲＷＬの活性化期間Ｔｎは、プログラムデータ読出時に制御電圧Ｖｃｎが中間電圧Ｖｍに設定される期間Ｔｐより長く設定される。
【０２０８】
したがって、プログラムデータ読出時におけるプログラムセルのバイアス電圧印加時間、すなわち電流通過時間は、メモリアレイ１０に配置される正規メモリセルおよびスペアセルの各々に対する通常のデータ読出時における電流通過時間よりも短く設定される。この結果、プログラムセルの動作信頼性を向上させることができる。
【０２０９】
［実施の形態１の変形例２］
図１５は、実施の形態１の変形例２に従うプログラム回路の構成を示すブロック図である。
【０２１０】
図１５を参照して、実施の形態１の変形例２に従うプログラム回路１００は、図４に示した構成と比較して、各プログラムユニットＰＵに対応して、プログラム信号φａ，φｂを記憶するためのトランスファーゲートＴＧａ，ＴＧｂおよびラッチ回路ＬＴａ，ＬＴｂを含む点で異なる。図示を省略しているが、各プログラムユニットに対して同様に、トランスファーゲートＴＧａ，ＴＧｂおよびラッチ回路ＬＴａ，ＬＴｂは配置される。
【０２１１】
トランスファーゲートＴＧａおよびラッチ回路ＬＴａは、プログラム信号φａに対応して設けられ、トランスファーゲートＴＧｂおよびラッチ回路ＬＴｂは、プログラム信号φｂに対応して設けられる。トランスファーゲートＴＧａおよびＴＧｂは、ラッチ信号ＬＳの活性化（Ｈレベル）期間において、プログラム信号φａおよびφｂを、ラッチ回路ＬＴａおよびＬＴｂに対してそれぞれ伝達する。
【０２１２】
ラッチ回路ＬＴａおよびＬＴｂは、トランスファーゲートＴＧａおよびＴＧｂをそれぞれ介して伝達されたプログラム信号φａおよびφｂをそれぞれラッチする。ラッチ回路ＬＴａおよびＬＴｂの保持データは、電源投入期間中保持される。
【０２１３】
その他の点について、プログラム回路１００の構成は、実施の形態１と同様であるので、詳細な説明は繰り返さない。
【０２１４】
図１６は、実施の形態１の変形例２に従うプログラムデータ読出動作を説明する動作波形図である。
【０２１５】
図１６を参照して、時刻ｔ０において、ＭＲＡＭデバイスの動作電源が起動されて、電源電圧Ｖｃｃ１およびＶｃｃ２が立上がる。電源起動から所定時間経過後の時刻ｔ１において、リセット信号／ＲＳＴがＬレベルからＨレベルに変化して、スタートアップシーケンスが実行される。
【０２１６】
各プログラムセルに対するプログラムデータ読出、すなわち不良アドレスの読出は、スタートアップシーケンスの一環として、電源起動をトリガとして実行される。リセット信号／ＲＳＴの変化に応答して、時刻ｔ２において、制御電圧Ｖｃｎが、中間電圧Ｖｍ（もしくは接地電圧Ｖｓｓ）に設定される。これにより、各プログラムユニットに対してプログラムデータ読出が実行されて、プログラムデータ（不良アドレスビット）に応じたプログラム信号φａおよびφｂが出力される。さらに、プログラム信号φａおよびφｂの設定が完了するタイミングに対応して設定される時刻ｔ３からｔ４の所定期間内において、ラッチ信号ＬＳがＨレベルに活性化される。これにより、各プログラムユニットから読出されたプログラム信号φａおよびφｂは、ラッチ回路ＬＴａおよびＬＴｂに、電源が遮断されるまでの間保持される。
【０２１７】
プログラム信号が読出され、かつラッチ回路ＬＴａおよびＬＴｂにラッチされた状態で、時刻ｔ５以降において、制御電圧Ｖｃｎは、電源電圧Ｖｃｃ１に設定される。以降の通常動作時においては、データ読出サイクルまたはデータ書込サイクルごとに、ラッチ回路ＬＴａ，ＬＴｂの保持データに基づいて、不良アドレスに応じた冗長判定が実行される。
【０２１８】
このような構成とすることにより、各プログラムセルを電流が通過するのは、電源起動をトリガとするスタートアップシーケンス中の短期間にのみに限られることになる。したがって、不良アドレスに代表される、通常時において各サイクルごとに参照する必要がある情報をプログラムする場合においても、プログラムセルの動作信頼性を向上することができる。
【０２１９】
［実施の形態２］
図１７は、実施の形態２おけるプログラム入出力関連の回路構成を示すブロック図である。
【０２２０】
図１７を参照して、実施の形態２に従う構成においては、プログラム回路１００にプログラムされた不良アドレスに基づく、冗長制御回路１０５における冗長判定結果を外部からモニタするためのモニタ端子４ｂがさらに配置される。
【０２２１】
セレクタ回路１０９は、冗長制御回路１０５からスペアイネーブル信号ＳＥ１〜ＳＥｋを受けて、信号端子４ｃに入力されるテスト選択信号ＴＳＬに応じた１つを選択的にモニタ端子４ｂに出力する。これにより、２個の端子をさらに使用することによって、冗長制御回路１０５による冗長判定結果を外部からモニタすることができる。
【０２２２】
たとえば、動作テスト時に、プログラム回路１００にプログラムした不良アドレスに対応するアドレス信号ＡＤＤを入力して、スペアイネーブル信号ＳＥ１〜ＳＥｋをモニタすれば、不良アドレスがプログラム回路１００に正しく記憶されているかどうかを効率的に確認できる。
【０２２３】
あるいは、セレクタ回路１０９を設けずに、ｋ個のモニタ端子を用いて、スペアイネーブル信号ＳＥ１〜ＳＥｋのそれぞれを並列に外部からモニタする構成としてもよい。
【０２２４】
［実施の形態３］
実施の形態３においては、プログラム電流を効率的に供給する構成について説明する。
【０２２５】
図１８は、実施の形態３に従うプログラム電流供給を行なうための第１の構成例を示す回路図である。
【０２２６】
図１８を参照して、正規メモリセルのデータ書込電流±Ｉｗを供給するためのデータ書込回路５１Ｗは、所定電流Ｉｗ（Ｒｅｆ）を流すための電流供給回路８０と、カレントミラーを構成するＰチャネルＭＯＳトランジスタ８１および８２とを有する。これにより、内部ノードＮｗ０への供給電流は、所定電流Ｉｗ（Ｒｅｆ）に応じて設定される。
【０２２７】
データ書込回路５１Ｗは、さらに、内部ノードＮｗ０を介して動作電流の供給を受けて動作するインバータ８４、８５および８６を有する。インバータ８４、８５および８６の各々は、電源電圧Ｖｃｃ２および接地電圧Ｖｓｓの供給を受けて動作する。
【０２２８】
インバータ８４は、書込データＤＩＮの電圧レベルを反転してデータバスＤＢに伝達する。インバータ８５は、書込データＤＩＮの電圧レベルを反転してインバータ８６の入力ノードに伝達する。インバータ８６は、インバータ８５の出力を反転してデータバス／ＤＢに伝達する。したがって、データ書込回路５１Ｗは、書込データＤＩＮの電圧レベルに応じて、データバスＤＢおよび／ＤＢを電源電圧Ｖｃｃ２および接地電圧Ｖｓｓの一方ずつに設定する。
【０２２９】
実施の形態３の第１の構成例においては、プログラムビット線ＰＢＬ１およびＰＢＬ２に対してプログラム電流±Ｉｗ（Ｐ）を供給するための構成は、図１２に示した構成と比較して、電圧設定トランジスタ１５４および１５７が、データ書込回路５１Ｗと共通の内部ノードＮｗ０と、プログラムビット線ＰＢＬ１およびＰＢＬ２の一端との間にそれぞれ電気的に結合される点で異なる。
【０２３０】
プログラムセルＰＲＣと、正規メモリセルおよびスペアメモリセルを構成するトンネル磁気抵抗素子ＴＭＲとを同一形状・同一磁化特性で設計すれば、プログラム電流±Ｉｗ（Ｐ）の電流量は、正規メモリセルに対するデータ書込電流±Ｉｗと同様に設定することができる。したがって、データ書込回路５１Ｗで用いられる電流供給回路８０を共用して、回路面積の増加を招くことなく最適なプログラム電流を供給することができる。
【０２３１】
さらに、図１８に示す構成においては、図１２に示した制御ゲート１６０，１６２および電圧設定トランジスタ１６４，１６５，１６７，１６８に代えて、トランジスタスイッチ１７５が配置される。トランジスタスイッチ１７５のゲートにはプログラム信号ＰＲＧが設定される。その他の部分の構成は、図１２と同様であるので、詳細な説明は繰り返さない。
【０２３２】
既に説明したように、プログラムデータ書込時において、プログラムビット線ＰＢＬ１およびＰＢＬ２に対しては、プログラムデータＰＤｊのレベルにかかわらず、それぞれ反対方向の電流が流される。
【０２３３】
したがって、プログラムビット線ＰＢＬ１およびＰＢＬ２の一端ずつを、プログラムデータＰＤｊのレベルに応じて、電源電圧Ｖｃｃまたは接地電圧Ｖｓｓと結合すれば、プログラムビット線ＰＢＬ１およびＰＢＬ２の他端同士については、トランジスタスイッチ１７５によって電気的に結合するのみで、図１２に説明したのと同様のプログラム電流を、プログラムデータ書込時に流すことができる。これにより、プログラム回路の面積を削減することができる。
【０２３４】
なお、図１２の構成においても、制御ゲート１６０，１６２および電圧設定トランジスタ１６４，１６５，１６７，１６８に代えて、トランジスタスイッチ１７５が配置することができる。
【０２３５】
図１９は、実施の形態３に従うプログラム電流供給を行なうための第２の構成例を示す回路図である。
【０２３６】
図１９を参照して、ワード線ドライバ３０のうちのライトワード線ＷＷＬの活性化を制御するライトワード線ドライブ部３０Ｗは、正規メモリセルのデータ書込電流Ｉｐを規定する所定電流Ｉｐ（Ｒｅｆ）を流すための電流供給回路９０と、カレントミラーを構成するＰチャネルＭＯＳトランジスタ９１および９２とを有する。これにより、内部ノードＮｗ１への供給電流は、所定電流Ｉｐ（Ｒｅｆ）に応じて設定される。
【０２３７】
ライトワード線ドライブ部３０Ｗは、さらに、ライトワード線ＷＷＬ１〜ＷＷＬｎにそれぞれ対応して設けられるドライブユニットＷＤ１〜ＷＤｎを有する。ドライブユニットＷＤ１〜ＷＤｎの各々は、内部ノードＮｗ１を介して動作電流の供給を受けて動作するインバータで構成される。ドライブユニットＷＤ１〜ＷＤｎの各々は、電源電圧Ｖｃｃ２および接地電圧Ｖｓｓの供給を受けて動作する。
【０２３８】
行デコーダ２０は、ロウアドレスＲＡに応じて、ロウデコード信号ＲＤＣ１〜ＲＤＣｎのうちの選択行に対応する１つをＬレベルに活性化する。これに応答して、ドライブユニットＷＤ１〜ＷＤｎのうちの選択行に対応する１つは、対応するライトワード線ＷＷＬを選択状態（Ｈレベル：電源電圧Ｖｃｃ２）に活性化する。
【０２３９】
実施の形態３の第２の構成例においては、プログラムビット線ＰＢＬ１およびＰＢＬ２に対してプログラム電流Ｉｐ（Ｐ）を供給するための構成は、図１２に示した構成と比較して、選択トランジスタ１７０が、ライトワード線ドライブ部３０Ｗと共通の内部ノードＮｗ１と、プログラムワード線ＰＷＬとの間に電気的に結合される点で異なる。その他の部分の構成は、図１２と同様であるので、詳細な説明は繰り返さない。
【０２４０】
また、プログラムビット線ＰＢＬ１およびＰＢＬ２に対しては、図１８に示した構成と同様に、図１２に示した制御ゲート１６０，１６２および電圧設定トランジスタ１６４，１６５，１６７，１６８に代えて、トランジスタスイッチ１７５が配置される。
【０２４１】
プログラムセルＰＲＣと、正規メモリセルおよびスペアメモリセルを構成するトンネル磁気抵抗素子ＴＭＲとを同一形状・同一磁化特性で設計すれば、プログラム電流±Ｉｐ（Ｐ）の電流量についても、正規メモリセルに対するデータ書込電流Ｉｐと同様に設定することができる。したがって、ライトワード線ドライブ部３０Ｗ内の電流供給回路９０を共用して、回路面積の増加を招くことなく最適なプログラム電流を供給することができる。
【０２４２】
［実施の形態４］
実施の形態４においては、複数のプログラムセルを効率的に配置する構成について説明する。
【０２４３】
図２０は、実施の形態４に従うプログラムセルの配置を示す回路図である。
図２０においては、プログラム回路１００に含まれる複数のプログラムセルのうちの、同一の不良アドレスのそれぞれのビットを記憶するためのプログラムユニットＰＵ０〜ＰＵｈに対応するプログラムセルの配置が代表的に示される。
【０２４４】
プログラムユニットＰＵ０〜ＰＵｈの各々において、プログラムセルＰＲＣ１およびＰＲＣ２は、対をなして配置されるプログラムビット線ＰＢＬ１およびＰＢＬ２とそれぞれ電気的に結合される。
【０２４５】
プログラムユニットＰＵ０〜ＰＵｈにそれぞれ対応する、プログラムワード線ＰＷＬ０〜ＰＷＬｈが配置される。すなわち、同一のプログラムユニットを構成するプログラムセルは、共通のプログラムワード線ＰＷＬと対応付けられる。
【０２４６】
さらに、プログラムワード線ＰＷＬ０〜ＰＷＬｈと電源電圧Ｖｃｃ２との間には、選択トランジスタ１７０−０〜１７０−ｈがそれぞれ配置される。選択トランジスタ１７０−０〜１７０−ｈのゲートには、プログラムユニットＰＵ１〜ＰＵｈにそれぞれ対応して設定されるプログラム信号／ＰＲＧ０〜／ＰＲＧｈがそれぞれ入力される。プログラム信号／ＰＲＧ０〜／ＰＲＧｈは、対応するプログラムユニットＰＵがプログラムデータ書込の対象とされた場合にＬレベルに活性化される。したがって、プログラムデータ書込の対象となるプログラムユニットにおいては、プログラムセルＰＲＣ１およびＰＲＣ２の各々に対して、プログラム電流Ｉｐ（Ｐ）が供給される。
【０２４７】
対をなすプログラムビット線ＰＢＬ１およびＰＢＬ２に対してプログラム電流±Ｉｗ（Ｐ）を供給するための構成は、図１８および図１９に示した構成と比較して、トランジスタスイッチ１７５に代えて、たとえば金属配線で構成される接続部１７６が配置される点で異なる。このように、トランジスタスイッチ１７５の配置を省略して、プログラムビット線ＰＢＬ１およびＰＢＬ２の他端同士を常時電気的に結合しても、プログラムデータ書込時におけるプログラム電流±Ｉｗ（Ｐ）の供給、およびプログラムデータ書込以外におけるプログラムビット線ＰＢＬ１およびＰＢＬ２の電圧設定を、図１２、図１８および図１９と同様に行うことができる。すなわち、図１２、図１８および図１９においても、プログラムビット線ＰＢＬ１およびＰＢＬ２の他端同士を、トランジスタを用いずに接続部１７６によって電気的に結合することができる。
【０２４８】
このような構成とすることにより、プログラムセルを行列状に効率的に配置した上で、プログラムユニットごとに、プログラムデータＰＤｊに応じたプログラムデータ書込を実行できる。
【０２４９】
［実施の形態５］
実施の形態１から４に示したような、冗長プログラム等に用いるプログラムデータを記憶するためのプログラムユニットは、通常のデータ記憶を実行する各メモリセルよりも、動作信頼性を十分に高く設定する必要がある。したがって、実施の形態５においては、動作信頼性の高いプログラムユニットの構成について説明する。
【０２５０】
図２１は、実施の形態５に従うプログラムセルの構成を示す回路図である。
図２１を参照して、実施の形態５に従うプログラムユニットＰＵ＃においては、プログラムセルＰＲＣ１は、ＮチャネルＭＯＳトランジスタ１１３および接地電圧Ｖｓｓとの間に直列に接続された、トンネル磁気抵抗素子ＴＭＲと同様の複数の磁気抵抗素子を含む。同様に、プログラムセルＰＲＣ２は、ＮチャネルＭＯＳトランジスタ１２３および接地電圧Ｖｓｓとの間に直列に接続された、直列に接続された磁気抵抗素子を有する。
【０２５１】
図２１においては、各プログラムセルＰＲＣが２個の磁気抵抗素子から構成される例を示している。すなわち、プログラムセルＰＲＣ１は、直列に接続された磁気抵抗素子ＰＲＣ１ａおよびＰＲＣ１ｂを含み、プログラムセルＰＲＣ２は、直列に接続された磁気抵抗素子ＰＲＣ２ａおよびＰＲＣ２ｂを含む。磁気抵抗素子ＰＲＣ１ａ，ＰＲＣ１ｂ，ＰＲＣ２ａ，ＰＲＣ２ｂの各々は、図７に示したプログラムセルＰＲＣ１およびＰＲＣ２の各々と同様の構成である。
【０２５２】
さらに、実施の形態５に従う構成においては、プログラムセルＰＲＣ１およびＰＲＣ２の電気抵抗は、２×Ｒｍｉｎおよび２×Ｒｍａｘのいずれかに設定されるので、レファレンス抵抗１１５および１２５に代えて、レファレンス抵抗１１６および１２６が配置される。レファレンス抵抗１１６および１２６の電気抵抗は、２×Ｒｍｉｎ＋ΔＲに設定される。プログラムユニットＰＵ♯のその他の部分の構成は、図７に示したプログラムユニットＰＵと同様であるので詳細な説明は繰返さない。
【０２５３】
このような構成とすることにより、プログラムデータ読出時において、プログラムセルを構成する各磁気抵抗素子の通過電流量を抑制することができるので、プログラムセルの動作信頼性を向上することができる。
【０２５４】
図２２は、実施の形態５に従うプログラムセルに対するプログラム電流の供給を説明する回路図である。
【０２５５】
図２２を参照して、プログラムセルＰＲＣ１を構成する磁気抵抗素子ＰＲＣ１ａは、プログラムワード線ＰＷＬ１と、プログラムビット線ＰＢＬ１の交点に対応して配置される。磁気抵抗素子ＰＲＣ１ｂは、プログラムワード線ＰＷＬ２と、プログラムビット線ＰＢＬ１の交点に対応して配置される。
【０２５６】
同様に、プログラムセルＰＲＣ２を構成する、磁気抵抗素子ＰＲＣ２ａは、プログラムワード線ＰＷＬ１と、プログラムビット線ＰＢＬ２の交点に対応して配置される。磁気抵抗素子ＰＲＣ２ｂは、プログラムワード線ＰＷＬ２と、プログラムビット線ＰＢＬ２の交点に対応して配置される。
【０２５７】
対をなすプログラムビット線ＰＢＬ１およびＰＢＬ２に対しては、図１８および図１９で説明したのと同様の構成によって、プログラムデータＰＤｊに応じたプログラム電流±Ｉｗ（Ｐ）が供給される。なお、図２０に示したように、トランジスタスイッチ１７５に代えて、金属配線等で形成される接続部１７６を配置してもよい。
【０２５８】
さらに、同一のプログラムユニットに対応付けられるプログラムワード線ＰＷＬ１およびＰＷＬ２は対をなすように配置され、その一端同士は金属配線等で形成される接続部１７７によって電気的に結合される。さらに、一方のプログラムワード線ＰＷＬ１の他端は、選択トランジスタ１７０を介して、電源電圧Ｖｃｃ２と接続される。他方のプログラムワード線ＰＷＬ２の他端は、接地電圧Ｖｓｓと接続される。選択トランジスタ１７０に入力されるプログラム信号／ＰＲＧの活性化に応答して、プログラムワード線ＰＷＬ１およびＰＷＬ２を往復電流として一定方向のプログラム電流Ｉｐ（Ｐ）を流し、磁化困難軸方向のプログラム磁界を各磁気抵抗素子に印加することができる。
【０２５９】
さらに、プログラムビット線ＰＢＬ１，ＰＢＬ２を流れる、プログラムデータＰＤｊに応答したプログラム電流±Ｉｗ（Ｐ）によって生成される磁界容易軸方向に沿ったプログラム磁界によって、同一のプログラムセルを構成する磁気抵抗素子の各々を同一の方向に磁化することができ、かつ、異なるプログラムセルを構成する磁気抵抗素子のそれぞれを、異なる方向に磁化することができる。これにより、実施の形態５に従う動作信頼性の高いプログラムセルに対しても、同様のプログラムデータ書込を行なうことができる。
【０２６０】
［実施の形態６］
実施の形態６においては、動作マージンおよび動作信頼性の高いプログラムユニットの他の構成例について説明する。
【０２６１】
図２３は、実施の形態６に従うプログラムユニットＰＵの構成を示す回路図である。
【０２６２】
図２３を参照して、実施の形態６に従うプログラムユニットは、図７に示された実施の形態１に従うプログラムユニットの構成と比較して、レファレンス抵抗１１５および１２５にそれぞれ代えて、プログラムセルＰＲＣ１♯およびＰＲＣ２♯がそれぞれ配置される点で異なる。プログラムセルＰＲＣ１♯およびＰＲＣ２♯の各々は、プログラムセルＰＲＣ１およびＰＲＣ２と同様に、各メモリセルＭＣを構成するトンネル磁気抵抗素子ＴＭＲと同様の形状および構造を有する。プログラムセルＰＲＣ１♯は、カレントセンスアンプ１１０中のトランジスタ１１４と接地電圧Ｖｓｓとの間に接続される。同様に、プログラムセルＰＲＣ２♯は、カレントセンスアンプ１２０中のトランジスタ１２４と接地電圧Ｖｓｓとの間に接続される。
【０２６３】
また、図７に示された論理ゲート１３０（ＥＸ−ＯＲゲート）の配置は省略され、ノードＮ１およびＮ２の電圧レベルが、それぞれプログラム信号φａおよびφｂに相当する。すなわち、プログラムユニットＰＵは、プログラム信号φａに相当する１ビット信号を記憶するためのプログラムレジスタ３００ａと、プログラム信号φｂに相当する１ビット信号を記憶するためのプログラムレジスタ３００ｂとを含む。
【０２６４】
プログラムデータ読出時において、制御電圧Ｖｃｎは中間電圧Ｖｍ（Ｖｓｓ＜Ｖｍ＜Ｖｃｃ）に変化される。これに応じて、プログラムレジスタ３００ａにおいては、カレントセンスアンプ１１０は、プログラムセルＰＲＣ１およびＰＲＣ１＃の各々の両端に制御電圧Ｖｃｎに応じたバイアス電圧を印加して、両者の通過電流差、すなわち両者の電気抵抗Ｒ１およびＲ１＃の比較に応じて、プログラム信号φａを生成する。プログラム信号φａは、対応するプログラムユニットが非プログラム状態およびプログラム状態のいずれであるかを示す。同様に、プログラムレジスタ３００ｂにおいては、カレントセンスアンプ１２０は、プログラムセルＰＲＣ２およびＰＲＣ２＃の各々の両端に制御電圧Ｖｃｎに応じたバイアス電圧を印加して、両者の通過電流差、すなわち両者の電気抵抗Ｒ２およびＲ２＃の比較に応じて、プログラム信号φｂを生成する。プログラム信号φｂは、プログラム状態とされた対応するプログラムユニットが記憶するプログラムデータのレベルを示す
図２４は、実施の形態６に従うプログラムユニットにおけるプログラムセルの電気抵抗と、プログラムユニットの状態等の対応関係を示す図である。
【０２６５】
図２４を参照して、初期状態においては、プログラムレジスタ３００ａを構成するプログラムセルＰＲＣ１およびＰＲＣ１＃は、互いに反対方向に磁化されて、それぞれの電気抵抗は、Ｒ１＝Ｒｍａｘ，Ｒ１＃＝Ｒｍｉｎに設定される。一方、プログラムレジスタ３００ｂを構成するプログラムセルＰＲＣ２およびＰＲＣ２＃は、同一方向に磁化されて、それぞれの電気抵抗Ｒ２およびＲ２＃は、たとえばＲｍｉｎに設定される。
【０２６６】
プログラム状態時には、プログラムレジスタ３００ａを構成するプログラムセルＰＲＣ１およびＰＲＣ１＃は、初期状態とは反対方向にそれぞれ磁化される。すなわち、Ｒ１＝Ｒｍｉｎ，Ｒ１＃＝Ｒｍａｘに設定される。一方、プログラムレジスタ３００ｂ構成するプログラムセルＰＲＣ２およびＰＲＣ２＃は、互いに異なる方向に磁化されて、それぞれに相補データが書込まれる。すなわち、プログラムセルＰＲＣ２およびＰＲＣ２＃の一方のみが、初期状態とは異なる方向に磁化される。この際に、磁化方向が書換えられる一方のプログラムセルは、書込まれるプログラムデータに応じて選択される。
【０２６７】
すなわち、プログラムデータ書込時には、プログラムセルＰＲＣ２の磁化方向が書換えられて、プログラムセルＰＲＣ２＃の磁化方向が初期状態と同様に維持されるデータ書込（Ｒ２＝Ｒｍａｘ，Ｒ２＃＝Ｒｍｉｎ：「プログラム状態１」）と、プログラムセルＰＲＣ２＃の磁化方向が書換えられて、プログラムセルＰＲＣ２の磁化方向が初期状態と同様に維持されるデータ書込（Ｒ２＝Ｒｍｉｎ，Ｒ２＃＝Ｒｍａｘ：「プログラム状態２」）とのいずれか一方が選択的に実行される。
【０２６８】
これに対して、プログラムデータ書込が実行されていない、すなわち非プログラム状態のプログラムセルにおいては、プログラムセルＰＲＣ１、ＰＲＣ１＃，ＰＲＣ２，ＰＲＣ２＃のそれぞれの磁化方向、すなわち電気抵抗は、初期状態時から変化しない。
【０２６９】
図２５は、実施の形態６に従うプログラムユニットからのプログラムデータ読出時および書込時におけるプログラム信号のレベルを説明する動作波形図である。
【０２７０】
図２５（ａ）を参照して、初期状態において、プログラムレジスタ３００ａでは、プログラムセルＰＲＣ１の電気抵抗Ｒ１がプログラムセルＰＲＣ１＃の電気抵抗Ｒ１＃よりも大きいので、プログラムデータ読出を実行すると、ノードＮ１の電圧、すなわちプログラム信号φａは、非プログラム状態を示すＬレベルに設定される。一方、プログラムレジスタ３００ｂでは、プログラムセルＰＲＣ２およびＰＲｃ２＃の電気抵抗Ｒ２，Ｒ２＃は同レベルなので、プログラムデータ読出を実行しても、ノードＮ２の電圧、すなわちプログラム信号φｂは、不定である。しかし、対をなすプログラム信号φａが非プログラム状態を示すＬレベルに設定されている場合には、対応するプログラム信号φｂは有意ではないので、プログラム信号φｂが不定であっても、悪影響は生じない。
【０２７１】
図２５（ｂ）を参照して、プログラムデータ書込時においては、プログラムレジスタ３００ａでは、プログラムセルＰＲＣ１およびＰＲＣ１＃の間の電気抵抗の大小関係が入れ替わるので、プログラム信号φａは、非プログラム状態を示すＬレベルから、プログラム状態を示すＨレベルへ変化する。一方、プログラムレジスタ３００ｂでは、書込まれるプログラムデータのレベルに応じて、上述したプログラム状態１およびプログラム状態２のいずれかに従ったプログラムデータ書込が実行されて、プログラムセルＰＲＣ２およびＰＲＣ２＃に対して、互いに相補のデータが書込まれる。この結果、プログラム状態１（Ｒ２＝Ｒｍａｘ、Ｒ２＃＝Ｒｍｉｎ）に従ったプログラムデータ書込の実行時には、プログラムレジスタ３００ｂからのプログラム信号φｂはＬレベルへ設定され、プログラム状態２（Ｒ２＝Ｒｍｉｎ、Ｒ２＃＝Ｒｍａｘ）に従ったプログラムデータ書込の実行時には、プログラムレジスタ３００ｂからのプログラム信号φｂはＨレベルへ設定される。
【０２７２】
図２５（ｃ）には、プログラム状態のプログラムユニットからのプログラムデータ読出動作が示される。プログラムデータ読出時には、各プログラムセルに制御電圧Ｖｃｎに応じた所定バイアス電圧を印加した上で、カレントセンスアンプ１１０および１２０によって、プログラム信号φａ，φｂが生成される。プログラム状態のプログラムユニットにおいては、プログラム信号φｂは、プログラム状態１およびプログラム状態２のいずれであるかに、すなわち記憶する１ビットのプログラムデータのレベルを示す。一方、プログラム信号φａは、プログラム状態１およびプログラム状態２のいずれであっても、すなわち記憶する１ビットのプログラムデータのレベルにかかわらず、Ｈレベルへ設定される。
【０２７３】
このように実施の形態６に従う構成によれば、プログラムレジスタ３００ａ、ＰＲＧｂの各々は、２個のプログラムセルによって、すなわちツインセル構成によって、１ビットのプログラム信号を記憶する。一方で、図２に示したように、各メモリセルＭＣは、１個のトンネル磁気抵抗素子ＴＭＲによって、すなわちシングルセル構成によって、１ビットのデータ記憶を実行する。
【０２７４】
したがって、プログラム回路において、１ビットのプログラム信号の記憶単位であるプログラムレジスタの信頼性が、通常のデータ記憶を実行するメモリセルの信頼性よりも高いため、メモリセルが正常動作しているのに、プログラムユニットが誤動作を起こして、ＭＲＡＭデバイスの動作を不安定化させるといった現象が生じることがない。
【０２７５】
また、図２３に示した回路構成において、カレントセンスアンプ１１０，１２０に入力される制御電圧Ｖｃｎを調整して、プログラムデータ読出時において、各プログラムセルの両端に印加される電圧、すなわちプログラムセル中のトンネル膜に印加される電界を、通常のデータ読出時における各メモリセル中のトンネル磁気抵抗素子ＴＭＲの両端に印加される電圧（トンネル膜に印加される電界）よりも小さく設定する構成とすることができる。これにより、各プログラムレジスタの信頼性を、通常のデータ記憶を実行するメモリセルの信頼性よりも高めることができる。なお、このような制御電圧の設定は、実施の形態１から４に従う構成と組合わせても同様に適用することができる。
【０２７６】
特に、実施の形態１の変形例２で示したような、電源起動時に実行されたプログラム読出結果をラッチ回路に保持する構成を用いれば、プログラムユニットからのデータ読出を高速に実行する必要性が薄くなる。したがって、このような構成では、プログラムユニットの動作信頼性を最優先させて、各プログラムセルにおける両端印加電圧（バイアス電圧）を低下させて、トンネル膜における印加電界を低下させることが好ましい。
【０２７７】
また、図２３の構成に示された各プログラムセルは、図２１に示した実施の形態５に従う構成と同様に、複数個のトンネル磁気抵抗素子ＴＭＲを直列接続して構成することもできる。これにより、各プログラムセルの動作信頼性をさらに向上できる。
【０２７８】
あるいは、図２６に示されるように、プログラムレジスタ中にプログラムセルとして配置されるトンネル磁気抵抗素子の面積を、メモリセルＭＣ中のトンネル磁気抵抗素子ＴＭＲよりも大きくする構成としてもよい。これにより、プログラムデータ読出時において、プログラムセルにおける電流通過面積が、メモリセルＭＣ中のトンネル磁気抵抗素子ＴＭＲにおける電流通過面積よりも大きくなるので、各プログラムセルの電気抵抗は、各メモリセルＭＣの電気抵抗よりも小さくなる。
【０２７９】
このような構成とすれば、各プログラムセルと各メモリセルとで、両端に印加されるバイアス電圧が同じである場合も、磁化方向（すなわち記憶データレベル）の違いによって生じる通過電流差が、プログラムセルでより大きくなる。この結果、プログラムセルからの読出マージンは、メモリセルＭＣよりも大きくなるので、プログラムレジスタの信頼性を、通常のデータ記憶を実行するメモリセルの信頼性よりも高くすることができる。
【０２８０】
［実施の形態７］
実施の形態１から６に示したように、ＭＴＪメモリセルと同様のプログラムセルを用いて冗長救済等に用いられるプログラムデータを記憶する構成においては、これらのプログラムデータを、不揮発的にかつ複数回書換可能に記憶することができる。実施の形態７においては、このようなプログラムセルを用いてプログラム情報を記憶した場合を想定した、ＭＲＡＭデバイスでのプログラム方法について説明する。
【０２８１】
図２７は、実施の形態７に従うＭＲＡＭデバイスにおけるプログラム情報のプログラム方法を説明するフローチャートである。
【０２８２】
図２７を参照して、ウェハ作製のためのウェハプロセス（プロセスＰ１００）を完了したＭＲＡＭデバイスは、ウェハテストを実行され、ウェハテストで検出された欠陥メモリセルを冗長救済するために用いるプログラム情報がプログラム回路へ書込まれる（プロセスＰ１１０）。さらに、ＭＲＡＭデバイスは、顕在的な初期欠陥を加速するためのウェハ状態でのバーンイン試験（プロセスＰ１２０）に送られ、ウェハ・バーンイン試験終了後にパッケージングされる（プロセスＰ１３０）。
【０２８３】
パッケージングされたＭＲＡＭデバイスは、パッケージ後の状態で再びバーンイン試験へ送られる（プロセスＰ１４０）。パッケージ後のバーンイン試験が終了したＭＲＡＭデバイスには、最終的な動作テストが行なわれる。当該動作テストにおいては、各プログラムユニットに記憶されたプログラムデータ、すなわちプロセスＰ１１０で書込まれたプログラム情報の外部からモニタして、確認することができる（プロセスＰ１５０）。
【０２８４】
このようなプログラムモニタ機能は、図１７に示した実施の形態２に従う構成を有するプログラム回路１００によって実行することができる。具体的には、動作テスト時に、プログラム回路１００にプログラムした不良アドレスに対応するアドレス信号ＡＤＤを入力して、スペアイネーブル信号ＳＥ１〜ＳＥｋをモニタすれば、不良アドレスがプログラム回路１００に正しく記憶されているかどうかを効率的に確認できる。
【０２８５】
プロセスＰ１５０によって得られた、最終的な欠陥メモリセルは、再度冗長救済によって救済される（プロセスＰ１６０）。すなわち、プログラム回路１００に記憶されるプログラム情報は、このプロセスで書換えることができる。不揮発的な記憶データを、磁界印加によって任意に書換可能なＭＴＪメモリセルの特性を活用して、パッケージ工程前に一旦書込んだプログラム情報を、パッケージ工程後に書換えることが可能となる。この結果、パッケージ後の最終テスト結果を反映したプログラム情報の不揮発的な記憶が可能である。
【０２８６】
プロセスＰ１６０終了後において、プログラム回路に最終的に記憶されるべきプログラム情報、すなわち各プログラムレジスタに対するプログラム信号が確定する。したがって、プログラムレジスタでの記憶内容が後に誤って書換えられることがないように、少なくとも一部のプログラムレジスタの各々において、プログラム状態がロックされて、その記憶内容が非可逆的に固定される（プロセスＰ１７０）。プログラム状態がロックされた後に、ＭＲＡＭデバイスは、出荷され実装される（プロセスＰ１８０）。
【０２８７】
次に、プロセスＰ１７０における、プログラム状態のロック機能を実現するための構成について説明する。
【０２８８】
図２８は、プログラム状態のロック機能を有するプログラムレジスタの構成を説明するための回路図である。
【０２８９】
図２８を参照して、図２３で説明したように、プログラムレジスタ３００は、１ビットのプログラムデータ信号を記憶するための単位に相当する。プログラムレジスタは、カレントセンスアンプ１１０と、プログラムセルＰＲＣと、比較抵抗部２０５とを有する。比較抵抗部２０５は、固定抵抗２０６および２０７を有し、抵抗２０６の抵抗値は、トンネル磁気抵抗素子ＴＭＲの電気抵抗Ｒｍｉｎに相当し、抵抗２０７の電気抵抗は、ΔＲ／２に相当するものとする。すなわち、比較抵抗部２０５の電気抵抗Ｒｃｐ＝Ｒｍｉｎ＋ΔＲ／２で示される。プログラムセルＰＲＣは、各メモリセルＭＣと同様のトンネル磁気抵抗素子ＴＭＲで構成される。プログラムセルＰＲＣは、ノードＮ０および電源ノード２００の間に接続される。電源ノード２００は、通常時においては、接地電圧Ｖｓｓを供給する。
【０２９０】
プログラム状態がロックされていないプログラムレジスタにおいては、トンネル磁気抵抗素子ＴＭＲ中のトンネル膜が破壊されていないので、プログラムセルＰＲＣは、各メモリセル中のトンネル磁気抵抗素子ＴＭＲと同様に、電気抵抗ＲｍａｘおよびＲｍｉｎのいずれか一方を有する。
【０２９１】
図２９（ａ）には、プログラム状態のロック前におけるプログラムセルＰＲＣの電気抵抗特性が示される。図２９（ａ）を参照して、プログラムセルＰＲＣの電気抵抗は、その磁界容易軸方向ＥＡに沿って、自由磁化層の磁化方向を反転させるの必要なしきい値を超えた磁界が印加された場合に反転され、ＲｍａｘおよびＲｍｉｎのいずれか一方に設定される。図１２等で既に説明したように、プログラムセルＰＲＣに対しては、プログラムワード線ＰＷＬおよびプログラムビット線ＰＢＬの両方からのデータ書込磁界の印加によってデータ書込（磁化方向の反転）を実行することができる。
【０２９２】
再び図２８を参照して、プログラムセルＰＲＣ内の固定磁化層と自由磁化層との磁化方向が揃っている場合を初期状態と定義すれば、初期状態におけるプログラムセルＰＲＣの電気抵抗はＲｍｉｎに相当する。このように初期状態を定義することによって、各プログラムセルＰＲＣを初期状態とするための専用の磁化工程を設ける必要がなくなる。
【０２９３】
この結果、初期状態においては、プログラムセルＰＲＣの電気抵抗は、比較抵抗部２０５の電気抵抗Ｒｃｐよりも小さい。したがって、ノードＮ１はＨレベル（電源電圧Ｖｃｃ１）に設定される。その後、図２７に示したプロセスＰ１１０およびＰ１６０において、プログラムデータを記憶するために、ノードＮ１からＬレベル信号を出力する必要がある場合には、プログラムセルＰＲＣに対して、データ書込が実行され、その電気抵抗がＲｍｉｎからＲｍａｘへ変化する。この際には、プログラムセルＰＲＣの電気抵抗が比較抵抗部２０５の電気抵抗Ｒｃｐよりも大きいので、ノードＮ１からはＬレベル信号が出力される。
【０２９４】
図２７に示したプロセスＰ１６０において、複数個配置されたプログラムセルＰＲＣのうちの初期状態のままで残された一部のプログラムセル、ノードＮ１からＨレベル信号を出力すべきプログラムセルに対して、その後誤ってデータ書込が実行されることがないように、プログラム状態がロックされる。ロック時において、たとえば、ノードＮ０が接地電圧Ｖｓｓに設定され、電源ノード２００は、負電圧−Ｖｎｎに設定される。負電圧−Ｖｎｎは、トンネル膜を絶縁破壊可能な電界が、当該トンネル膜に印加できるように設定される。トンネル膜が破壊されたプログラムセルＰＲＣの電気抵抗は、非可逆的に固定される。
【０２９５】
図２９（ｂ）には、プログラム状態のロック後におけるプログラムセルＰＲＣの電気抵抗特性が示される。
【０２９６】
図２９（ｂ）を参照して、プログラムセルＰＲＣのロック後での電気抵抗は、ＲｍａｘおよびＲｍｉｎのいずれよりも低いＲｂｌに固定される。ロック後のトンネル膜が破壊されたプログラムセルにおいては、磁気的なデータ書込によって電気抵抗は変化せず、ノードＮ１に生成されるプログラム信号は、Ｈレベルに固定される。
【０２９７】
図３０は、プログラム状態のロック時における印加電圧を説明する図である。
図３０には、図１１（ｂ）と同様に、プログラムセルの断面図が示される。トランジスタ１１３とプログラムセルＰＲＣとの接続ノードに相当するノードＮ０は、ソース／ドレイン領域２１２およびプログラムセルＰＲＣの間に結合される金属配線層Ｍ１に形成された金属配線２６０に相当する。また、電源ノード２００は、プログラムビット線ＰＢＬに相当する。したがって、ロック動作時には、金属配線２６０を接地電圧Ｖｓｓと接続するとともに、プログラムビット線ＰＢＬへ図示しない負電圧発生回路からの負電圧−Ｖｎｎを供給すればよい。
【０２９８】
このように、プログラム状態のロック時、すなわちプログラムセルのトンネル膜破壊時における印加電圧の極性を、通常のプログラムデータ読出時と同様に設定することにより、ロック後における所望の電気抵抗を確実に実現することができる。
【０２９９】
なお、図２８に示した構成では、プログラムセルＰＲＣの電気抵抗をトンネル膜のブローによって、２種類の電気抵抗Ｒｍａｘ，Ｒｍｉｎのいずれよりも小さく固定する構成を示したが、反対に、比較抵抗部２０５側の電気抵抗をＲｍｉｎ，Ｒｍａｘの各々よりも高く、または低く固定的に設定してもよい。このような構成は、たとえば、比較抵抗部２０５を構成する抵抗２０６，２０７を、ＭＩＳ（Metal-Insulator Semiconductor）トランジスタ等で構成して、当該ＭＩＳトランジスタの絶縁膜を高電圧破壊して、Ｒｃｐ＜Ｒｍｉｎに非可逆的に固定する構成や、抵抗２０６，２０７をメタル配線で形成して当該メタル配線に大電流を流して溶断することによって、比較抵抗部２０５の電気抵抗をＲｃｐ＞Ｒｍａｘに非可逆的に固定する構成とすることもできる。あるいは、プログラムセルＰＲＣと直列に、大電流で溶断可能なメタル配線を挿入して、ロック後におけるプログラムセルの電気抵抗がＲｍａｘより非可逆的に大きくなるように設定することもできる。
【０３００】
なお、実施の形態１〜７においては、欠陥メモリセルを特定するための不良アドレスがプログラム情報としてプログラム回路１００に記憶される構成を代表的に説明したが、本願発明の適用は、このような構成に限定されるものではない。
【０３０１】
たとえば、図１８および図１９に示されたデータ書込電流量を規定するための所定電流Ｉｗ（Ｒｅｆ）およびＩｐ（Ｒｅｆ）のチューニングや、内部電源電圧のチューニングを、プログラム回路１００に記憶されたプログラム情報に応じて設定する構成とすることもできる。このように、本願発明に従うプログラム回路を用いて、ＭＲＡＭデバイスの内部回路に関する動作条件や、ＭＲＡＭデバイスの動作モード等をプログラム情報として記憶ことも可能である。
【０３０２】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【０３０３】
【発明の効果】
請求項１〜３，５，７，８，９，１０，１４の薄膜磁性体記憶装置は、各プログラムユニットにおいて、プログラムデータとともに、当該プログラムユニットがプログラムデータを記憶しているか否かの情報とを磁気的に記憶することができる。各プログラムユニットにおいて初期状態とプログラム状態とを明確に認識できるので、リセット動作を伴わずに随時読出可能な、プログラムデータを内部に不揮発的に記憶するという共通の効果を奏することができる。
【０３０４】
請求項１，２および４に記載の薄膜磁性体記憶装置は、特別な製造工程を設けることなく、プログラムセルをメモリセルＭＣと同一の製造工程において作製することが可能である。さらに、専用の磁化工程を設けることなく、メモリアレイ上のメモリセルを初期的に磁化するための工程において、プログラムセルを同時に磁化することができる。したがって、上記共通の効果に加えて、薄膜磁性体記憶装置の製造工程を簡略化できる。
【０３０５】
請求項３に記載の薄膜磁性体記憶装置は、各メモリセルおよび各プログラムセルを初期的に磁化するための工程において、第１の磁化層（固定磁化層）および第２の磁化層（自由磁化層）を、同時に磁化することができる。したがって、上記共通の効果に加えて、薄膜磁性体記憶装置の製造工程を簡略化できる。
【０３０６】
請求項１５および１６に記載の薄膜磁性体記憶装置は、請求項１４に記載の薄膜磁性体記憶装置が奏する効果に加えて、プログラム回路にプログラムされた情報に基づいて、欠陥メモリセルを置換救済することができる。
【０３０７】
請求項１７に記載の薄膜磁性体記憶装置は、請求項１５に記載の薄膜磁性体記憶装置が奏する効果に加えて、プログラム回路に所定の情報が正しくプログラムされているかどうかを効率的に確認できる。
【０３０８】
請求項５および６に記載の薄膜磁性体記憶装置は、プログラムセルを電流を直接検知するカレントセンス回路によってプログラムデータを読出すので、上記共通の効果に加えて、プログラムデータ読出を高速化できる。
【０３０９】
請求項７および８に記載の薄膜磁性体記憶装置は、プログラムデータ読出時に各プログラムセルに印加される電流ストレスを抑制するので、上記共通の効果に加えて、プログラムセルの動作信頼性を向上できる。
【０３１０】
請求項９に記載の薄膜磁性体記憶装置は、プログラム回路によって、不良アドレスに代表される通常時において高頻度で参照する必要がある情報がプログラムされる場合においても、プログラムデータ読出は、電源起動ごとに実行すれば足りるので、プログラムセルに与えられる電流ストレスが抑制される。したがって、上記共通の効果に加えて、プログラムセルの動作信頼性を向上することができる。
【０３１１】
請求項１０および１１に記載の薄膜磁性体記憶装置は、同一のプログラムユニットを構成するプログラムセルに対して並列に、プログラム電流を供給することができるので、上記共通の効果に加えて、プログラムデータ書込を効率的に実行できる。
【０３１２】
請求項１２および１３に記載の薄膜磁性体記憶装置は、メモリアレイ上のメモリセルにデータ書込電流を供給するための電流供給回路を共用して、プログラムセルに対するプログラム電流を供給できる。したがって、請求項１０記載の薄膜磁性体記憶装置が奏する効果に加えて、回路面積の増加を招くことなく、最適なプログラム電流を供給することができる。
【０３１３】
請求項１４に記載の薄膜磁性体記憶装置は、直列に接続された複数の磁気抵抗素子によってプログラムセルを構成するので、プログラムデータ読出時において、プログラムセルの通過電流量を抑制することができる。したがって、上記共通の効果に加えて、プログラムセルの動作信頼性を向上することができる。
【０３１６】
請求項１８および１９に記載の薄膜磁性体記憶装置においては、同一のバイアス電圧を両端に印加した場合でも、記憶データレベルに応じて生じる通過電流差は、プログラムセルにおいてメモリセルよりも大きくなる。したがって、プログラムセルの読出マージンは、メモリセルの読出マージンよりも大きくなるので、プログラムレジスタの信頼性を、通常のデータ記憶を実行するメモリセルの信頼性よりも高くすることができる。この結果、メモリセルが正常動作しているのに、プログラムユニットが誤動作を起こして、ＭＲＡＭデバイスの動作を不安定化させるといった現象が生じることがない。
【０３１７】
請求項２０に記載の薄膜磁性体記憶装置は、プログラム信号読出時にプログラム素子中の絶縁膜に印加される電圧差がデータ読出時にメモリセル中の絶縁膜に印加される電圧差よりも小さいので、請求項１８に記載の薄膜磁性体記憶装置が奏する効果に加えて、プログラム素子の動作信頼性をさらに高めることができる。
【０３１８】
請求項２１に記載の薄膜磁性体記憶装置は、各プログラムユニットにおいて、当該プログラムユニットがプログラムデータを記憶しているかどうか、すなわちプ非プログラム状態およびプログラム状態のいずれであるかを明確に認識できるので、請求項１８に記載の薄膜磁性体記憶装置が奏する効果に加えて、記憶したプログラムデータをリセット動作を伴わずに随時読出可能である。
【０３１９】
請求項２２〜２５および２７〜２９に記載の薄膜磁性体記憶装置は、プログラム情報を記憶するための記憶内容を磁気的に書換可能な各プログラム素子において、物理的な破壊動作によってその記憶内容を非可逆的に固定できる。したがって、これらのプログラム素子に対する、その後の誤ったプログラム情報の書込を防止できる。
【０３２０】
請求項２６に記載の薄膜磁性体記憶装置は、請求項２２に記載の薄膜磁性体記憶装置が奏する効果を、メモリセルと同様の構造のプログラム素子を用いて、特別な素子を付加することなく実現できるとともに、記憶内容の固定後におけるプログラム素子の電気抵抗を所望レベルへ設定できる。
【０３２２】
請求項３０に記載の薄膜磁性体記憶装置は、プログラム素子の磁化方向に応じて各プログラムレジスタに１ビットのプログラム信号を保持できるとともに、当該プログラムレジスタを非可逆的に固定できる。したがって、記憶内容の固定後において、プログラムレジスタの記憶内容が誤って書換えられることを防止できる。
【０３２３】
請求項３１に記載の薄膜磁性体記憶装置は、請求項３０に記載の薄膜磁性体記憶装置が奏する効果を、メモリセルと同様の構造のプログラム素子を用いて、特別な構成を付加することなくロック動作を実現できる。
【０３２４】
請求項３２に記載の薄膜磁性体記憶装置は、請求項３０に記載の薄膜磁性体記憶装置が奏する効果に加えて、ロック動作を実行可能な比較抵抗部を、たとえばメタル配線等を用いて、簡易に構成できる。
【０３２５】
請求項３３に記載の薄膜磁性体記憶装置は、請求項１８から３２に記載の薄膜磁性体記憶装置が奏する効果を享受して、冗長救済に用いる情報をプログラムできる。
【図面の簡単な説明】
【図１】  本発明に従うＭＲＡＭデバイス１の全体構成を示す概略ブロック図である。
【図２】  図１に示したメモリアレイの構成を示す回路図である。
【図３】  冗長制御回路の構成を示すブロック図である。
【図４】  図３に示される冗長判定ユニットの構成を説明するブロック図である。
【図５】  列デコーダの概略構成を示すブロック図である。
【図６】  ＭＲＡＭデバイスにおける置換救済を説明するためのデータ読出動作およびデータ書込動作時の動作波形図である。
【図７】  実施の形態１に従うプログラムユニットＰＵの構成を示す回路図である。
【図８】  プログラムセルの電気抵抗とプログラムユニットの状態との対応関係を示す図である。
【図９】  プログラムデータ読出時および書込時におけるプログラム信号のレベルを説明する動作波形図である。
【図１０】  プログラムセルの配置を説明する概念図である。
【図１１】  正規メモリセルおよびプログラムセルの配置を説明する構造図である。
【図１２】  プログラムデータ書込時においてプログラム電流を供給するための構成を示す回路図である。
【図１３】  プログラムセルに対する入出力信号を説明するための図である。
【図１４】  実施の形態１の変形例１に従うプログラムデータ読出動作を説明する動作波形図である。
【図１５】  実施の形態１の変形例２に従うプログラム回路の構成を示すブロック図である。
【図１６】  実施の形態１の変形例２に従うプログラムデータ読出動作を説明する動作波形図である。
【図１７】  実施の形態２おけるプログラム入出力関連の回路構成を示すブロック図である。
【図１８】  実施の形態３に従うプログラム電流供給を行なうための第１の構成例を示す回路図である。
【図１９】  実施の形態３に従うプログラム電流供給を行なうための第２の構成例を示す回路図である。
【図２０】  実施の形態４に従うプログラムセルの配置を示す回路図である。
【図２１】  実施の形態５に従うプログラムセルの構成を示す回路図である。
【図２２】  実施の形態５に従うプログラムセルに対するプログラム電流の供給を説明する回路図である。
【図２３】  実施の形態６に従うプログラムユニットの構成例を示す回路図である。
【図２４】  図２３に示すプログラムユニットにおけるプログラムセルの電気抵抗とプログラムユニットの状態等の対応関係を示す図である。
【図２５】  図２３に示すプログラムユニットからのプログラムデータ読出時および書込時におけるプログラム信号のレベルを説明する動作波形図である。
【図２６】  実施の形態６に従うプログラムユニットの他の構成例を示す回路図である。
【図２７】  実施の形態７に従うＭＲＡＭデバイスにおけるプログラム情報のプログラム方法を説明するフローチャートである。
【図２８】  プログラム状態のロック機能を有するプログラムレジスタの構成を説明するための回路図である。
【図２９】  プログラム状態のロック前後におけるプログラムセルの電気抵抗を説明する図である。
【図３０】  プログラム状態のロック時における印加電圧を説明する図である。
【図３１】  ＭＴＪメモリセルの構成を示す概略図である。
【図３２】  ＭＴＪメモリセルからのデータ読出動作を説明する概念図である。
【図３３】  ＭＴＪメモリセルに対するデータ書込動作を説明する概念図である。
【図３４】  ＭＴＪメモリセルに対するデータ書込時におけるデータ書込電流とトンネル磁気抵抗素子の磁化方向との関係を説明する概念図である。
【符号の説明】
１  ＭＲＡＭデバイス、２  アドレス端子、３  制御信号端子、４ｂ  モニタ端子、１０  メモリアレイ、２０  行デコーダ、２５  列デコーダ、３０  ワード線ドライバ、３０Ｗ  ライトワード線ドライブ部、５１Ｗ  データ書込回路、５１Ｒ  データ読出回路、８０，９０  電流供給回路、１００  プログラム回路、１０５  冗長制御回路、１１０，１２０  カレントセンスアンプ、１１５，１１６，１２５，１２６  レファレンス抵抗、１５４，１５５，１５７，１５８，１６４，１６５，１６７，１６８  電圧設定トランジスタ、２００  電源ノード、２０５  比較抵抗部、３００，３００ａ，３００ｂ  プログラムレジスタ、ＡＤＤ  アドレス信号、ＡＴＲ  アクセストランジスタ、ＢＬ，／ＢＬ  ビット線、ＣＡ  コラムアドレス、ＣＡＢ  コラムアドレスビット、ＣＳＧ  コラム選択ゲート、ＣＳＬ  コラム選択線、ＤＢ，／ＤＢ  データバス、ＤＭＣ  ダミーメモリセル、ＦＡＤ  不良アドレス、Ｉｐ，±Ｉｗ  データ書込電流、Ｉｐ（Ｐ），Ｉｗ（Ｐ）  プログラム電流、ＬＴａ，ＬＴｂ  ラッチ回路、ＭＣ  正規メモリセル、ＰＢＬ  プログラムビット線、ＰＤｊ  プログラムデータ、ＰＲＣ  プログラムセル、ＰＲＣ１ａ，ＰＲＣ１ｂ，ＰＲＣ２ａ，ＰＲＣ２ｂ  磁気抵抗素子、ＰＲＧ  プログラム信号、ＰＵ  プログラムユニット、ＰＷＬ  プログラムワード線、ＲＤ  冗長回路、ＲＪＵ  冗長判定ユニット、ＲＷＬ  リードワード線、ＳＢＬ，／ＳＢＬ  スペアビット線、ＳＣＳＧ  スペアコラム選択ゲート、ＳＣＳＬ  スペアコラム選択線、ＳＣＶ  スペアコラムドライバ、ＳＥ  スペアイネーブル信号、ＳＭＣ  スペアメモリセル、ＴＧａ，ＴＧｂ  トランスファーゲート、ＴＭＲ  トンネル磁気抵抗素子、Ｖｃｎ  制御電圧、Ｖｍ  中間電圧、ＷＷＬ  ライトワード線、φａ，φｂ  プログラム信号。
【図１】
0004073690.tif 000002
【図２】
0004073690.tif 000003
【図３】
0004073690.tif 000004
【図４】
0004073690.tif 000005
【図５】
0004073690.tif 000006
【図６】
0004073690.tif 000007
【図７】
0004073690.tif 000008
【図８】
0004073690.tif 000009
【図９】
0004073690.tif 000010
【図１０】
0004073690.tif 000011
【図１１】
0004073690.tif 000012
【図１２】
0004073690.tif 000013
【図１３】
0004073690.tif 000014
【図１４】
0004073690.tif 000015
【図１５】
0004073690.tif 000016
【図１６】
0004073690.tif 000017
【図１７】
0004073690.tif 000018
【図１８】
0004073690.tif 000019
【図１９】
0004073690.tif 000020
【図２０】
0004073690.tif 000021
【図２１】
0004073690.tif 000022
【図２２】
0004073690.tif 000023
【図２３】
0004073690.tif 000024
【図２４】
0004073690.tif 000025
【図２５】
0004073690.tif 000026
【図２６】
0004073690.tif 000027
【図２７】
0004073690.tif 000028
【図２８】
0004073690.tif 000029
【図２９】
0004073690.tif 000030
【図３０】
0004073690.tif 000031
【図３１】
0004073690.tif 000032
【図３２】
0004073690.tif 000033
【図３３】
0004073690.tif 000034
【図３４】
0004073690.tif 000035