(57)【特許請求の範囲】
【請求項１】
複数のメモリセルがアレイ状に配置されたメモリセルアレイと暗号制御回路とを備える暗号処理装置であって、
前記複数のメモリセルは、
異なる複数の電気的信号が印加されることによって、抵抗値が複数の可変抵抗値範囲の間を可逆的に遷移する、可変状態のメモリセルと、
前記可変状態に変化させるような電気的ストレスであるフォーミングストレスが印加されない限り前記可変状態とならず、かつ、抵抗値が前記可変抵抗値範囲のいずれとも重複しない初期抵抗値範囲にある、初期状態のメモリセルと、
を含み、
前記メモリセルアレイにおいて、各メモリセルが前記初期状態にあるか前記可変状態にあるかの違いを利用してデータが記録されており、
前記データには変換パラメータデータが含まれており、
前記暗号制御回路は、前記変換パラメータデータを用いて、平文データの暗号化および暗号文データの復号化の少なくとも一方を実行する、
暗号処理装置。
【請求項２】
前記初期抵抗値範囲の下限は、全ての前記可変抵抗値範囲の上限以上である、請求項１に記載の暗号処理装置。
【請求項３】
前記可変抵抗値範囲は、前記メモリセルの高抵抗状態に対応するＨＲレベルと、前記メモリセルの低抵抗状態に対応するＬＲレベルとを含み、前記可変状態にある複数のメモリセルは、抵抗値が前記ＨＲレベルにあるメモリセルと抵抗値が前記ＬＲレベルにあるメモリセルとの両方を含む、請求項1または２に記載の不揮発性記憶装置。
【請求項４】
Ｎを３以上の整数とするとき、
前記可変状態のメモリセルは、異なる電気的信号が印加されることによってＮ−１個の前記可変抵抗値範囲の間を遷移するものであり、
前記メモリセルアレイにおいて、各メモリセルの抵抗値が、前記初期抵抗値範囲とＮ−１個の前記可変抵抗値範囲とから構成されたＮ個の抵抗値範囲のいずれに含まれるかの違いを利用して多値データが記録されている、請求項１から３のいずれか１項に記載の暗号処理装置。
【請求項５】
前記記録されたデータは、第１種データと第２種データとを含み、
前記第１種データは、各メモリセルの抵抗値が前記初期抵抗値範囲にあるか否かの違いを利用して記録されており、
前記第２種データは、各メモリセルの抵抗値が前記初期抵抗値範囲にあるか否かの違いを利用せずに、各メモリセルの抵抗値が少なくとも一つの前記可変抵抗値範囲にあるか否かの違いを利用して記録されている、
請求項１から４のいずれか１項に記載の暗号処理装置。
【請求項６】
前記変換パラメータデータの一部が前記第１種データとして記録されており、
前記変換パラメータデータの残部が前記第２種データとして記録されている、
請求項５に記載の暗号処理装置。
【請求項７】
前記メモリセルアレイは、第１書き込みアドレス領域と、第２書き込みアドレス領域とを備え、
前記第１書き込みアドレス領域に前記第１種データが記録されており、
前記第２書き込みアドレス領域に前記第２種データが記録されている、
請求項６に記載の暗号処理装置。
【請求項８】
前記メモリセルアレイは、前記初期状態から前記可変状態に変化させるような電気的ストレスが印加されたときに、前記初期状態から前記可変状態に変化するメモリセルと、前記初期状態のまま維持されるメモリセルとがランダムに発生する特性を有し、
前記第１種データは、前記初期状態から前記可変状態へと変化するメモリセルがランダムに発生することにより生成されるデータである、
請求項６または７に記載の暗号処理装置。
【請求項９】
前記変換パラメータデータは複数の単位変換パラメータデータからなる、
請求項６から８のいずれか１項に記載の暗号処理装置。
【請求項１０】
前記複数の単位変換パラメータデータのそれぞれにつき、前記単位変換パラメータデータの一部が前記第１種データとして記録され、かつ、前記単位変換パラメータデータの残部が前記第２種データとして記録され、
前記複数の単位変換パラメータデータのそれぞれにつき、前記単位変換パラメータデータのどの部分を前記第１種データとして記録するかが互いに異なっている、
請求項９に記載の暗号処理装置。
【請求項１１】
前記暗号制御回路は、平文データの入力を受け入れ可能に構成され、かつ、前記変換パラメータデータを用いて前記平文データを暗号化するものであり、かつ、乱数生成回路を備え、
前記乱数生成回路は、乱数生成アルゴリズムと、前記単位変換パラメータデータから取得された乱数生成パラメータとに基づいて乱数を順次生成し、
前記暗号制御回路は、前記暗号制御回路に順次入力される前記平文データから順次一部を切出して、前記切出された一部の平文データと前記生成された乱数との排他的論理和を出力するサイクルを繰り返すことで、前記平文データを暗号化する、
請求項９または１０に記載の暗号処理装置。
【請求項１２】
消去コマンドの入力を受け入れ可能に構成され、かつ、前記消去コマンドが入力されると前記変換パラメータデータのうち前記第２種データとして記録されている部分の少なくとも一部を書き換える、第２書き換え回路をさらに備える、
請求項６から１１のいずれか１項に記載の暗号処理装置。
【請求項１３】
消去コマンドの入力を受け入れ可能に構成され、かつ、前記消去コマンドが入力されると前記変換パラメータデータのうち前記第１種データとして記録されている部分の少なくとも一部を書き換える、第１書き換え回路をさらに備える、
請求項６から１２のいずれか１項に記載の暗号処理装置。
【請求項１４】
前記暗号制御回路は、平文データの入力を受け入れ可能に構成され、かつ、前記変換パラメータデータを用いて前記平文データを暗号化するものであり、
さらに、前記暗号制御回路が直前に平文データの暗号化を実行してからの経過時間を検出するタイマ回路と、
前記経過時間が予め設定された時間を超えた場合に、前記変換パラメータデータの少なくとも一部を書き換える、第３書き換え回路と、を備える、
請求項１から１３のいずれか１項に記載の暗号処理装置。
【請求項１５】
前記暗号制御回路は、平文データの入力を受け入れ可能に構成され、かつ、前記変換パラメータデータを用いて前記平文データを暗号化し、かつ、前記暗号化により得られた暗号文データを前記メモリセルアレイに記録する、
請求項１から１４のいずれか１項に記載の暗号処理装置。
【請求項１６】
前記記録されたデータは、第１種データと第２種データとを含み、
前記第１種データは、各メモリセルの抵抗値が前記初期抵抗値範囲にあるか否かの違いを利用して記録されており、
前記第２種データは、各メモリセルの抵抗値が前記初期抵抗値範囲にあるか否かの違いを利用せずに、各メモリセルの抵抗値が少なくとも一つの前記可変抵抗値範囲にあるか否かの違いを利用して記録されており、
前記変換パラメータデータの少なくとも一部が前記第１種データとして記録されており、
前記暗号制御回路は、前記暗号文データを前記第２種データとして記録し、
さらに、前記変換パラメータデータは複数の単位変換パラメータデータからなり、
前記メモリセルアレイには、複数のアドレスのそれぞれに対応して、アドレス変換データと前記単位変換パラメータデータとが前記第１種データとして記録されており、
前記暗号制御回路は、アドレスの入力を受け入れ可能に構成され、かつ、前記入力されたアドレスと前記アドレス変換データとに基づいて決定される変換後アドレスを取得し、かつ、前記変換後アドレスに記録されている前記第１種データから前記単位変換パラメータデータを取得し、かつ、前記取得された単位変換パラメータデータを用いて前記平文データを暗号化する、
請求項１５に記載の暗号処理装置。
【請求項１７】
暗号文コンテンツデータが記録されている暗号文コンテンツ記憶装置と通信可能に構成され、
前記暗号文コンテンツデータは、平文鍵データを用いて平文コンテンツデータを暗号化して得られたものであり、
前記メモリセルアレイには、前記変換パラメータデータを用いて前記平文鍵データを暗号化して得られた暗号文鍵データが記録されており、
前記暗号制御回路は、前記メモリセルアレイから前記暗号文鍵データと前記変換パラメータデータとを取得し、かつ、前記変換パラメータデータを用いて前記暗号文鍵データを復号化して前記平文鍵データを取得し、かつ、前記平文鍵データを用いて前記暗号文コンテンツ記憶装置から取得した前記暗号文コンテンツデータを復号化する、
請求項１から１６のいずれか１項に記載の暗号処理装置。
【請求項１８】
前記変換パラメータデータは複数の単位変換パラメータデータからなり、
前記メモリセルアレイには、複数のアドレスのそれぞれに対応して、アドレス変換データと前記単位変換パラメータデータとが前記第１種データとして記録されており、
前記暗号制御回路は、アドレスの入力を受け入れ可能に構成され、かつ、前記入力されたアドレスと前記アドレス変換データとに基づいて決定される変換後アドレスを取得し、かつ、前記変換後アドレスに記録されている前記第１種データから前記単位変換パラメータデータを取得し、かつ、前記取得された単位変換パラメータデータを用いて前記暗号文鍵データを復号化して前記平文鍵データを取得する、
請求項１７に記載の暗号処理装置。
【請求項１９】
暗号文コンテンツ記憶装置と通信可能に構成され、かつ、前記暗号制御回路が、以下の（Ａ）および（Ｂ）の少なくとも一方を満たす、請求項１から１６のいずれか１項に記載の暗号処理装置。
（Ａ）前記平文データである平文コンテンツデータの入力を受け入れ可能に構成され、かつ、前記変換パラメータデータを用いて前記平文コンテンツデータを暗号化し、かつ、前記暗号化により得られた暗号文コンテンツデータを、前記暗号文コンテンツ記憶装置に記録する。
（Ｂ）前記暗号文コンテンツ記憶装置から前記暗号文データである暗号文コンテンツデータを取得し、かつ、前記変換パラメータデータを用いて前記暗号文コンテンツデータを復号化し、かつ、前記復号化により得られた平文コンテンツデータを外部に出力する。
【請求項２０】
前記メモリセルアレイと前記暗号制御回路とが同一のチップ上に形成されている、
請求項１から１９のいずれか１項に記載の暗号処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、暗号処理装置に関する。より詳しくは、新規なデータ記録方法を採用した暗号処理装置に関する。
【背景技術】
【０００２】
特許文献１は、記憶メディアを備える記憶メディア部と、磁気ディスクメディアを備える磁気ディスクメディア部と、ホストから送信されたデータを前記記憶メディアに記憶する記憶手段と、外部から入力されたパスワードを前記記憶メディアまたは前記記憶メディアと同一の基板に構成される半導体メモリに予め記憶されているパスワードと照合する第１の照合手段と、前記記憶メディア部に設けられ、前記第１の照合手段の照合結果に応じて前記磁気ディスクメディア部に構成される前記磁気ディスクメディアへのアクセスを制御する制御手段と、を具備する磁気ディスク装置を開示する。【０００３】
特許文献２は、メモリセルアレイを含む不揮発性メモリを備え、入力されたファイルデータを暗号化して上記不揮発性メモリの一部に記憶し、上記ファイルデータを復号するための鍵を含む管理情報を、上記不揮発性メモリの他部に記憶する半導体記憶装置における暗号鍵保護方法であって、上記管理情報によってパスワード参照が有効とされる第１状態においては、入力されたパスワードの照合を行い、その照合結果に応じて、上記ファイルデータを上記鍵で復号することを許可し、上記管理情報によって上記パスワード参照が無効とされる第２状態においては、パスワード入力がなくとも、上記ファイルデータを上記鍵で復号することを許可し、上記第１状態にあることを意味する上記管理情報は、第１スレッショルド電圧、および上記第１スレッショルド電圧よりも低い第２スレッショルド電圧を用いて上記メモリセルアレイに記録し、上記第２状態にあることを意味する上記管理情報は、第３スレッショルド電圧、および上記第３スレッショルド電圧よりも低い第４スレッショルド電圧を用いて上記メモリセルアレイに記録することを特徴とする暗号鍵保護方法を開示する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−１６５４３９号公報
【特許文献２】特開２０１０−１９３０１３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明は、不揮発性記憶装置において、より安全な暗号技術等に応用可能な、従来にない新規なデータ記録方法を提供することを目的の一つとする。【０００６】
さらに本発明は、不揮発性記憶装置における従来にない新規なデータ記録方法を採用した、より安全な暗号技術を提供することを目的の一つとする。
【課題を解決するための手段】
【０００７】
本発明の暗号処理装置の一態様（ａｓｐｅｃｔ）は、複数のメモリセルがアレイ状に配置されたメモリセルアレイと暗号制御回路とを備える暗号処理装置であって、前記複数のメモリセルは、異なる複数の電気的信号が印加されることによって、抵抗値が複数の可変抵抗値範囲の間を可逆的に遷移する、可変状態のメモリセルと、前記可変状態に変化させるような電気的ストレスであるフォーミングストレスが印加されない限り前記可変状態とならず、かつ、抵抗値が前記可変抵抗値範囲のいずれとも重複しない初期抵抗値範囲にある、初期状態のメモリセルと、を含み、前記メモリセルアレイにおいて、各メモリセルが前記初期状態にあるか前記可変状態にあるかの違いを利用してデータが記録されており、前記データには変換パラメータデータが含まれており、前記暗号制御回路は、前記変換パラメータデータを用いて、平文データの暗号化および暗号文データの復号化の少なくとも一方を実行する。
【発明の効果】
【０００８】
本発明の一態様によれば、不揮発性記憶装置における従来にない新規なデータ記録方法を採用した、より安全な暗号技術を提供することができる、という効果を奏する。
【図面の簡単な説明】
【０００９】
【図１】図１は、第１参考形態にかかる不揮発性記憶装置の概略構成の一例を示すブロック図である。
【図２】図２は、第１参考形態にかかる不揮発性記憶装置が備えるメモリセルの概略構成の一例を示す断面図である。
【図３】図３は、第１参考形態にかかる不揮発性記憶装置が備えるメモリセルの抵抗値範囲の一例を示すグラフである。
【図４】図４は、パーコレーションモデル（percolation model）を用いて抵抗変化層中のフィラメントの形成をシミュレートした結果の一例を示す図である。
【図５】図５は、可変状態にあるバイポーラ型抵抗変化素子の特性の一例を示す図である。
【図６】図６は、可変状態にあるユニポーラ型抵抗変化素子の特性の一例を示す図である。
【図７】図７は、抵抗変化素子の抵抗変化特性の一例を示す図である。
【図８】図８は、規格化累積印加時間と可変状態へ変化したメモリセルの標準正規分布の偏差との関係をプロットした図である。
【図９】図９は、第１参考形態の第１参考例にかかる不揮発性記憶装置の概略構成の一例を示すブロック図である。
【図１０】図１０は、第１参考形態の第１参考例にかかる不揮発性記憶装置の書き込みサイクルと読み出しサイクルの一例を示すタイミングチャートである。
【図１１】図１１は、第１参考形態の第１参考例にかかる不揮発性記憶装置が備えるセンスアンプの概略構成の一例を示すブロック図である。
【図１２】図１２は、第１参考形態の第１参考例にかかる不揮発性記憶装置が備えるセンスアンプの主要箇所の動作例を示すタイミングチャートである。
【図１３】図１３は、第１参考形態の第１参考例にかかる不揮発性記憶装置における放電時間の差を示すグラフである。
【図１４】図１４は、第１参考形態における特殊書き込みモードの第１動作例を示すフローチャートである。
【図１５】図１５は、図１４に示す特殊書き込みモードで書き込まれたメモリセルを特殊読み出しモードで読み出した結果の一例を示す表である。
【図１６】図１６は、図１４に示す特殊書き込みモードで書き込まれたデータを通常読み出しモードで読み出した結果の一例を示す表である。
【図１７】図１７は、第１参考形態における特殊書き込みモードの第２動作例を示すフローチャートである。
【図１８】図１８は、第１参考形態における特殊書き込みモードの第３動作例を示すフローチャートである。
【図１９】図１９は、第１参考形態における特殊書き込みモードの第４動作例を示すフローチャートである。
【図２０】図２０は、第４動作例を用いてデータを記録したメモリセルについて、２１０℃で放置し、カウンタの値の推移をグラフ化したものである。
【図２１】図２１は、第１参考形態の第２参考例にかかる不揮発性記憶装置の概略構成の一例を示すブロック図である。
【図２２】図２２は、第１参考形態の第２参考例で用いられる２端子選択素子の電圧−電流特性の一例を示す図である。
【図２３】図２３は、第１参考形態の第２参考例で用いられる２端子選択素子の電圧−電流特性の一例を示す図である。
【図２４】図２４は、第１実施形態にかかる暗号処理装置の概略構成の一例を示すブロック図である。
【図２５】図２５は、第１実施形態における変換パラメータデータ、単位変換パラメータデータ、第１種データ、および第２種データの関係の一例を示す概念図である。
【図２６】図２６は、第１実施形態の第１変形例にかかる暗号処理装置の概略構成の一例を示すブロック図である。
【図２７】図２７は、第１実施形態の第２変形例にかかる暗号処理装置の概略構成の一例を示すブロック図である。
【図２８】図２８は、第１実施形態の第３変形例にかかる暗号処理装置の概略構成の一例を示すブロック図である。
【図２９】図２９は、第１実施形態の第４変形例にかかる暗号処理装置の概略構成の一例を示すブロック図である。
【図３０】図３０は、第１実施形態の第５変形例にかかる暗号処理装置に記録される第１種データの一例を示す図である。
【図３１】図３１は、第２実施形態にかかる暗号処理装置の概略構成の一例を示すブロック図である。
【図３２】図３２は、第２実施形態の第７変形例にかかる暗号処理装置の概略構成の一例を示すブロック図である。
【図３３】図３３は、第２実施形態の第１実施例にかかる暗号処理装置の概略構成の一例を示すブロック図である。
【図３４】図３４は、第２実施形態の第１実施例にかかる暗号処理装置に記録される第１種データの一例を示す図である。
【図３５】図３５は、第３実施形態にかかる暗号処理装置の概略構成の一例を示すブロック図である。
【図３６】図３６は、第３実施形態の第９変形例にかかる暗号処理装置の概略構成の一例を示すブロック図である。
【図３７】図３７は、第３実施形態の第２実施例にかかる暗号処理装置の概略構成の一例を示すブロック図である。
【図３８】図３８は、第３実施形態の第２実施例において、誤り訂正用のパリティービットを付加する場合の暗号処理装置の概略構成の一例を示すブロック図である。
【発明を実施するための形態】
【００１０】
以下、添付図面を参照しつつ、本発明の実施形態について説明する。
【００１１】
以下で説明する実施形態は、いずれも本発明の望ましい一具体例を示すものである。以下の実施形態および参考形態で示される数値、形状、材料、構成要素、構成要素の配置位置および接続形態、ステップ、ステップの順序などは、あくまで一例であり、本発明を限定するものではない。本発明は、特許請求の範囲によってのみ限定される。また、以下の実施形態および参考形態における構成要素のうち、本発明の最上位概念を示す独立請求項に記載されていない構成要素については、より望ましい形態を構成する任意の構成要素として説明される。また、図面において、同じ符号が付いたものは、説明を省略する場合がある。また、図面は理解しやすくするために、それぞれの構成要素を模式的に示したもので、形状および寸法比等については正確な表示ではない場合がある。また、製造方法においては、必要に応じて、各工程の順序等を変更でき、かつ、他の公知の工程を追加できる。
【００１２】
（第１参考形態）
第１参考形態の不揮発性記憶装置は、複数のメモリセルがアレイ状に配置されたメモリセルアレイを備える不揮発性記憶装置であって、複数のメモリセルは、異なる複数の電気的信号が印加されることによって、抵抗値が複数の可変抵抗値範囲の間を可逆的に遷移する、可変状態のメモリセルと、可変状態に変化させるような電気的ストレスであるフォーミングストレスが印加されない限り可変状態とならず、かつ、抵抗値が可変抵抗値範囲のいずれとも重複しない初期抵抗値範囲にある、初期状態のメモリセルと、を含み、メモリセルアレイにおいて、各メモリセルが初期状態にあるか可変状態にあるかの違いを利用してデータが記録されている。
【００１３】
かかる構成では、不揮発性記憶装置において、より安全な暗号技術等に応用可能な、従来にない新規なデータ記録方法を提供することができる。
【００１４】
「可変抵抗値範囲のいずれとも重複しない初期抵抗値範囲」とは、ある抵抗値が初期抵抗値範囲に属する場合には当該抵抗値が可変抵抗値範囲に属することがなく、かつ、ある抵抗値が可変抵抗値範囲に属する場合には当該抵抗値が初期抵抗値範囲に属することがないことをいう。
【００１５】
なお、複数のメモリセルは、少なくとも初期状態のメモリセルと可変状態のメモリセルとを含めばよく、例えば、さらに、抵抗値が初期抵抗値範囲にも可変抵抗値範囲にも入らない不良メモリセルを一部に含んでいてもよい。また、抵抗値が可変抵抗値範囲にあったメモリセルの抵抗値が、時間の経過に伴って初期抵抗値範囲に入るようになってしまうことで、不良メモリセルが発生する場合もありうる。このような不良メモリセルは、例えば、高温環境下に放置することで抵抗値が変動した場合などに生じうる。不良メモリセルは、例えば、誤り訂正処理などにより正常なデータに訂正される。
【００１６】
「各メモリセルが初期状態にあるか可変状態にあるかの違いを利用してデータが記録されている」とは、具体的には、メモリセルの状態（初期状態および複数の可変状態のいずれか）に対応付けて、各情報（例えば“０”または“１”等の整数値）を割り当てることによって、データが記憶されていることをいう。より具体的には例えば、メモリセルが初期状態にある場合をデータの第１値に、メモリセルが可変状態にある場合をデータの第２値に、それぞれ割り当てることで、２値データがメモリセルに記録されることをいう。
【００１７】
フォーミングストレスは、可変状態のメモリセルの抵抗値を可変抵抗値範囲の間で可逆的に遷移させるために印加される異なる複数の電気的信号のいずれよりも、大きくてもよい。例えば、フォーミングストレスは、可変状態のメモリセルの抵抗値を可逆的に遷移させる異なる複数の電気的信号のいずれもよりも、振幅およびパルス幅の少なくとも一方が大きい。
【００１８】
あるいは例えば、可変状態にあるメモリセルが高抵抗状態と低抵抗状態とを択一的にとりうる場合には、メモリセルが初期状態にある場合をデータの第１値に、メモリセルが高抵抗状態にある場合をデータの第２値に、メモリセルが低抵抗状態にある場合をデータの第３値に、それぞれ割り当てることで３値データがメモリセルに記録されてもよい。より具体的には例えば、第２値及び第３値は、それぞれ異なる可変抵抗値範囲に対応付けて割り当てられる。
【００１９】
上記不揮発性記憶装置において、初期抵抗値範囲の下限は、全ての可変抵抗値範囲の上限以上であってもよい。
【００２０】
上記不揮発性記憶装置において、初期抵抗値範囲の上限は、全ての可変抵抗値範囲の下限以下であってもよい。
【００２１】
上記不揮発性記憶装置において、Ｎを３以上の整数とするとき、可変状態のメモリセルは、異なる電気的信号が印加されることによってＮ−１個の可変抵抗値範囲の間を遷移するものであり、メモリセルアレイにおいて、各メモリセルの抵抗値が、初期抵抗値範囲とＮ−１個の可変抵抗値範囲とから構成されたＮ個の抵抗値範囲のいずれに含まれるかの違いを利用して多値データが記録されていてもよい。
【００２２】
「多値データ」とは、「２値データ」よりも値が多いデータであり、具体的には例えば、３値データ、４値データ等が挙げられる。
【００２３】
上記不揮発性記憶装置において、読み出し回路をさらに備え、読み出し回路は、選択されたメモリセルが初期状態にあるか可変状態にあるかを判定することによって記録されたデータを読み出すことができるように構成されていてもよい。
【００２４】
上記不揮発性記憶装置において、初期抵抗値範囲の下限は、全ての可変抵抗値範囲の上限よりも抵抗値が大きく、読み出し回路をさらに備え、読み出し回路は、初期抵抗値範囲の下限以下であり、かつ、複数の可変抵抗値範囲のうち抵抗値が最も大きいものの上限以上である値を第１閾値とし、複数の可変抵抗値範囲のうち抵抗値が最も大きいものの下限以下であり、かつ複数の可変抵抗値範囲のうち抵抗値が最も小さいものの上限以上である値を第２閾値とし、選択されたメモリセルの抵抗値が、第１閾値よりも大きいか否かを判定する第１読み出しモードと、選択されたメモリセルの抵抗値が、第２閾値よりも大きいか否かを判定する第２読み出しモードとを選択的に実行することによって、記録されたデータを読み出すことができるように構成されていてもよい。
【００２５】
なお、抵抗値の判定は、抵抗値を直接検出することで行われてもよいし、抵抗値に関連する他の物理量（例えば、電流量および電圧の減衰時間等）を検出することで行われてもよい。
【００２６】
上記不揮発性記憶装置において、初期抵抗値範囲の上限は、全ての可変抵抗値範囲の下限以下であり、読み出し回路をさらに備え、読み出し回路は、初期抵抗値範囲の上限以上であり、かつ、複数の可変抵抗値範囲のうち抵抗値が最も小さいものの下限以下である値を第１閾値とし、複数の可変抵抗値範囲のうち抵抗値が最も小さいものの上限以上であり、かつ複数の可変抵抗値範囲のうち抵抗値が最も大きいものの下限以下である値を第２閾値とし、選択されたメモリセルの抵抗値が、第１閾値よりも大きいか否かを判定する第１読み出しモードと、選択されたメモリセルの抵抗値が、第２閾値よりも大きいか否かを判定する第２読み出しモードとを選択的に実行することによって、記録されたデータを読み出すことができるように構成されていてもよい。
【００２７】
上記不揮発性記憶装置において、記録されたデータは、第１種データと第２種データとを含み、第１種データは、各メモリセルの抵抗値が初期抵抗値範囲にあるか否かの違いを利用して記録されており、第２種データは、各メモリセルの抵抗値が初期抵抗値範囲にあるか否かの違いを利用せずに、各メモリセルの抵抗値が少なくとも一つの可変抵抗値範囲にあるか否かの違いを利用して記録されていてもよい。具体的には例えば、第２種データは、複数の可変抵抗値範囲のそれぞれに対して互いに異なる値（例えば“０”または“１”等の整数値）を割り当てることによって記録されていてもよい。
【００２８】
上記不揮発性記憶装置において、Ｎを３以上の整数とし、Ｍ１をＮ以下の正の整数とし、Ｍ２をＮ−１以下の正の整数とするとき、第１種データは、各メモリセルの抵抗値が初期抵抗値範囲を含む互いに重複しないＭ１個の抵抗値範囲のいずれに含まれるかの違いを利用して記録されており、第２種データは、各メモリセルの抵抗値が初期抵抗値範囲を含まない、かつ互いに重複しない、Ｍ２個の抵抗値範囲のいずれに含まれるかの違いを利用して記録されており、第１種データの記録に用いられるＭ１個の抵抗値範囲のうちの初期抵抗値範囲を含まないＭ１−１個の抵抗値範囲は、第２種データの記録に用いられるＭ２個の抵抗値範囲のいずれかと同一であってもよい。
【００２９】
上記不揮発性記憶装置において、Ｎを３以上の整数とし、Ｍ１をＮ以下の正の整数とし、Ｍ２をＮ−１以下の正の整数とするとき、第１種データは、各メモリセルの抵抗値が初期抵抗値範囲を含む互いに重複しないＭ１個の抵抗値範囲のいずれに含まれるかの違いを利用して記録されており、第２種データは、各メモリセルの抵抗値が初期抵抗値範囲を含まない、かつ互いに重複しない、Ｍ２個の抵抗値範囲のいずれに含まれるかの違いを利用して記録されており、第１種データの記録に用いられるＭ１個の抵抗値範囲のうちの初期抵抗値範囲を含まないＭ１−１個の抵抗値範囲の少なくともいずれかは、第２種データの記録に用いられるＭ２個の抵抗値範囲と異なってもよい。
【００３０】
上記不揮発性記憶装置において、読み出し回路をさらに備え、読み出し回路は、Ｍ１−１個の閾値から構成される第１種閾値群を用いて、第１種データを読み出す第１読み出しモードと、Ｍ２−１個の閾値から構成される第２種閾値群を用いて、第２種データを読み出す第２読み出しモードとを選択的に実行し、第１種閾値群は、初期抵抗値範囲の下限以下であり、かつ、複数の可変抵抗値範囲のうち抵抗値が最も大きいものの上限以上である第１閾値を含み、第２種閾値群に含まれる閾値は、いずれも、複数の可変抵抗値範囲のうち抵抗値が最も大きいものの下限以下であってもよい。
【００３１】
上記不揮発性記憶装置において、読み出し回路をさらに備え、読み出し回路は、Ｍ１−１個の閾値から構成される第１種閾値群を用いて、第１種データを読み出す第１読み出しモードと、Ｍ２−１個の閾値から構成される第２種閾値群を用いて、第２種データを読み出す第２読み出しモードとを選択的に実行し、第１種閾値群は、初期抵抗値範囲の上限以上であり、かつ、複数の可変抵抗値範囲のうち抵抗値が最も小さいものの下限以下である第１閾値を含み、第２種閾値群に含まれる閾値は、いずれも、複数の可変抵抗値範囲のうち抵抗値が最も小さいものの上限以上であってもよい。
【００３２】
上記不揮発性記憶装置において、読み出し回路は、選択されたメモリセルに読み出し電圧を印加するドライバと、メモリセルに所定の電流量の定電流を流す定電流源と、メモリセルの電圧が、ドライバが読み出し電圧の印加を中止してから、所定の判定電圧よりも小さくなるまでの時間をカウントするカウンタ回路と、カウンタ回路でカウントされた時間と、所定の判定時間とを比較する比較回路とを備え、第１種データを読み出すモードと、第２種データを読み出すモードとでは、読み出し電圧、電流量、判定電圧および判定時間の少なくとも１つが異なってもよい。
【００３３】
上記不揮発性記憶装置において、メモリセルアレイは、第１書き込みアドレス領域と、第２書き込みアドレス領域とを備え、第１書き込みアドレス領域に第１種データが記録されており、第２書き込みアドレス領域に第２種データが記録されていてもよい。
【００３４】
上記不揮発性記憶装置において、メモリセルアレイは、初期状態から可変状態に変化させるような電気的ストレスが印加されたときに、初期状態から可変状態に変化するメモリセルと、初期状態のまま維持されるメモリセルとがランダムに発生する特性を有し、第１種データは、初期状態から可変状態へと変化するメモリセルがランダムに発生することにより生成されるデータであってもよい。
【００３５】
上記不揮発性記憶装置において、複数のメモリセルのそれぞれは、第１電極と、第２電極と、第１電極および第２電極の間に介在する抵抗変化層とを有する抵抗変化素子を備え、初期状態のメモリセルを構成する抵抗変化素子の抵抗変化層は、第１電極と第２電極との間を絶縁していてもよい。
【００３６】
第１参考形態の不揮発性記憶装置のデータ記録方法は、複数のメモリセルがアレイ状に配置されたメモリセルアレイを備える不揮発性記憶装置のデータ記録方法であって、メモリセルは、異なる複数の電気的信号が印加されることによって、抵抗値が複数の可変抵抗値範囲の間を可逆的に遷移する、可変状態と、可変状態に変化させるような電気的ストレスであるフォーミングストレスが印加されない限り可変状態とならず、かつ、抵抗値が可変抵抗値範囲のいずれとも重複しない初期抵抗値範囲にある、初期状態と、を取りうるものであって、初期状態のメモリセルへフォーミングストレスを印加するステップを含み、フォーミングストレスを印加するステップにより、各メモリセルが初期状態にあるか可変状態にあるかの違いを利用してメモリセルアレイへとデータを記録する。
【００３７】
上記不揮発性記憶装置のデータ記録方法において、フォーミングストレスを印加するステップは、初期状態にある複数のメモリセルにフォーミングストレスを印加して、初期状態にある複数のメモリセルのうちの一部のメモリセルを可変状態へと変化させるものであってもよい。
【００３８】
上記不揮発性記憶装置のデータ記録方法において、複数の可変抵抗値範囲は、初期抵抗値範囲よりも抵抗値が小さい第１抵抗値範囲と、第１抵抗値範囲と重複せずかつ第１抵抗値範囲よりも抵抗値が小さい第２抵抗値範囲とを含み、可変状態のメモリセルは、第１電気的信号を印加することによって抵抗値が第２抵抗値範囲から第１抵抗値範囲へと遷移し、第２電気的信号を印加することによって抵抗値が第１抵抗値範囲から第２抵抗値範囲へと遷移する性質を有し、フォーミングストレスを印加するステップを実行後に、データが記録されたメモリセルに、第２電気的信号よりも弱く、かつ第２電気的信号と極性が同じ電気的ストレスである補助ストレスを印加するステップをさらに含んでもよい。
【００３９】
上記不揮発性記憶装置のデータ記録方法において、複数の可変抵抗値範囲は、初期抵抗値範囲よりも抵抗値が大きい第２抵抗値範囲と、第２抵抗値範囲と重複せずかつ第２抵抗値範囲よりも抵抗値が大きい第１抵抗値範囲とを含み、可変状態のメモリセルは、第１電気的信号を印加することによって抵抗値が第２抵抗値範囲から第１抵抗値範囲へと遷移し、第２電気的信号を印加することによって抵抗値が第１抵抗値範囲から第２抵抗値範囲へと遷移する性質を有し、フォーミングストレスを印加するステップを実行後に、データが記録されたメモリセルに、第１電気的信号よりも弱く、かつ第１電気的信号と極性が同じ電気的ストレスである補助ストレスを印加するステップをさらに含んでもよい。
【００４０】
上記不揮発性記憶装置のデータ記録方法において、補助ストレスを印加するステップを実行後に、データが記録されたメモリセルのうち選択されたメモリセルの抵抗値が第１抵抗値範囲にあるか否かを判定するステップと、判定するステップにおいて選択されたメモリセルの抵抗値が第１抵抗値範囲にないと判定された場合に、該選択されたメモリセルに、第２電気的信号と、第１電気的信号と、補助ストレスとをこの順に印加するステップとをさらに含んでもよい。
【００４１】
上記不揮発性記憶装置のデータ記録方法において、補助ストレスを印加するステップを実行後に、データが記録されたメモリセルのうち選択されたメモリセルの抵抗値が第２抵抗値範囲にあるか否かを判定するステップと、判定するステップにおいて選択されたメモリセルの抵抗値が第２抵抗値範囲にないと判定された場合に、該選択されたメモリセルに、第１電気的信号と、第２電気的信号と、補助ストレスとをこの順に印加するステップとをさらに含んでもよい。
【００４２】
上記不揮発性記憶装置のデータ記録方法において、第１電気的信号は、第２電気的信号と極性が異なり、フォーミングストレスは、第１電気的信号と極性が同じであってもよい。
【００４３】
上記不揮発性記憶装置のデータ記録方法において、一部のメモリセルがランダムに選択されることで、データがランダムデータをなすように生成されてメモリセルアレイへと記録されてもよい。
【００４４】
上記不揮発性記憶装置のデータ記録方法において、複数の可変抵抗値範囲は、初期抵抗値範囲よりも抵抗値が小さい第１抵抗値範囲と、第１抵抗値範囲と重複せずかつ第１抵抗値範囲よりも抵抗値が小さい第２抵抗値範囲とを含み、可変状態のメモリセルは、第１電気的信号を印加することによって抵抗値が第２抵抗値範囲から第１抵抗値範囲へと遷移し、第２電気的信号を印加することによって抵抗値が第１抵抗値範囲から第２抵抗値範囲へと遷移する性質を有し、フォーミングストレスを印加するステップを実行後に、データが記録されたメモリセルに第２電気的信号を印加するステップを含んでもよい。
【００４５】
上記不揮発性記憶装置のデータ記録方法において、複数の可変抵抗値範囲は、初期抵抗値範囲よりも抵抗値が大きい第２抵抗値範囲と、第２抵抗値範囲と重複せずかつ第２抵抗値範囲よりも抵抗値が大きい第１抵抗値範囲とを含み、可変状態のメモリセルは、第１電気的信号を印加することによって抵抗値が第２抵抗値範囲から第１抵抗値範囲へと遷移し、第２電気的信号を印加することによって抵抗値が第１抵抗値範囲から第２抵抗値範囲へと遷移する性質を有し、フォーミングストレスを印加するステップを実行後に、データが記録されたメモリセルに第１電気的信号を印加するステップを含んでもよい。
【００４６】
上記不揮発性記憶装置のデータ記録方法において、複数の可変抵抗値範囲は、初期抵抗値範囲よりも抵抗値が小さい第１抵抗値範囲と、第１抵抗値範囲と重複せずかつ第１抵抗値範囲よりも抵抗値が小さい第２抵抗値範囲とを含み、フォーミングストレスを印加するステップを実行後に、初期抵抗値範囲の下限以下であり、かつ複数の可変抵抗値範囲のうち最大のものの上限以上である第１閾値を用いて読み出した第１データと、複数の可変抵抗値範囲のうち最大のものの下限以下であり、かつ最小のものの上限以上である第２閾値を用いて読み出した第２データとを比較するステップと、第１データと第２データとの間で値の異なるメモリセルの数が所定の数よりも少ない場合に、第２閾値より小さい可変抵抗値範囲にあるメモリセルに、第２閾値より大きい可変抵抗値範囲に入るように第１電気的信号を追加的に印加するステップとを含んでもよい。
【００４７】
上記不揮発性記憶装置のデータ記録方法において、複数の可変抵抗値範囲は、初期抵抗値範囲よりも抵抗値が大きい第２抵抗値範囲と、第２抵抗値範囲と重複せずかつ第２抵抗値範囲よりも抵抗値が大きい第１抵抗値範囲とを含み、フォーミングストレスを印加するステップを実行後に、初期抵抗値範囲の上限以上であり、かつ複数の可変抵抗値範囲のうち最小のものの下限以下である第１閾値を用いて読み出した第１データと、複数の可変抵抗値範囲のうち最小のものの上限以上であり、かつ最大のものの下限以下である第２閾値を用いて読み出した第２データとを比較するステップと、第１データと第２データとの間で値の異なるメモリセルの数が所定の数よりも少ない場合に、第２閾値より大きい可変抵抗値範囲にあるメモリセルに、第２閾値より小さい可変抵抗値範囲に入るように第２電気的信号を追加的に印加するステップとを含んでもよい。
【００４８】
上記不揮発性記憶装置のデータ記録方法において、初期状態のメモリセルにフォーミングストレスを印加して、該メモリセルを初期状態から可変状態へと変化させる第１書き込みモードと、可変状態のメモリセルに異なる複数の電気的信号のいずれかを印加して、該メモリセルの抵抗値を複数の可変抵抗値範囲の間で遷移させる第２書き込みモードと、を選択的に実行してもよい。
【００４９】
上記不揮発性記憶装置のデータ記録方法において、可変状態のメモリセルへ第１電気的信号または第２電気的信号を印加するステップをさらに含み、フォーミングストレスを印加するステップにおいて、各メモリセルの抵抗値が初期抵抗値範囲にあるか否かの違いを利用して第１種データを記録し、第１電気的信号または第２電気的信号を印加するステップにおいて、各メモリセルの抵抗値が初期抵抗値範囲にあるか否かの違いを利用せずに、各メモリセルの抵抗値が少なくとも一つの可変抵抗値範囲にあるか否かの違いを利用して第２種データを記録してもよい。
【００５０】
上記不揮発性記憶装置のデータ記録方法において、フォーミングストレスを印加するステップにおいて、第１種データをメモリセルアレイの第１書き込みアドレス領域に記録し、第１電気的信号または第２電気的信号を印加するステップにおいて、第２種データをメモリセルアレイの第２書き込みアドレス領域に記録してもよい。
【００５１】
上記不揮発性記憶装置のデータ記録方法において、フォーミングストレスを印加するステップは、メモリセルアレイ中に第１書き込みアドレス領域を設定して、第１書き込みアドレス領域に第１種データを記録するステップと、メモリセルアレイ中の第１書き込みアドレス領域とは異なる領域に、フォーミングストレスを印加して、複数の可変状態のメモリセルから構成される第２書き込みアドレス領域を形成するステップとを含み、第１電気的信号または第２電気的信号を印加するステップにおいて、第２種データをメモリセルアレイの第２書き込みアドレス領域に記録してもよい。
【００５２】
上記不揮発性記憶装置のデータ記録方法において、複数のメモリセルのそれぞれは、第１電極と、第２電極と、第１電極および第２電極の間に介在する抵抗変化層とを有する抵抗変化素子を備え、初期状態のメモリセルを構成する抵抗変化素子の抵抗変化層は、第１電極と第２電極との間を絶縁していてもよい。
【００５３】
第１参考形態の不揮発性記憶装置のデータ書き込み回路は、複数のメモリセルがアレイ状に配置されたメモリセルアレイを備える不揮発性記憶装置のデータ書き込み回路であって、メモリセルは、異なる複数の電気的信号が印加されることによって、抵抗値が複数の可変抵抗値範囲の間を可逆的に遷移する、可変状態と、可変状態に変化させるような電気的ストレスであるフォーミングストレスが印加されない限り可変状態とならず、かつ、抵抗値が可変抵抗値範囲のいずれとも重複しない初期抵抗値範囲にある、初期状態と、を取りうるものであって、初期状態のメモリセルへフォーミングストレスを印加することにより、各メモリセルが初期状態にあるか可変状態にあるかの違いを利用してメモリセルアレイへとデータを記録する。
【００５４】
上記不揮発性記憶装置のデータ書き込み回路において、フォーミングストレスを印加するときに、初期状態にある複数のメモリセルにフォーミングストレスを印加して、初期状態にある複数のメモリセルのうちの一部のメモリセルを可変状態へと変化させるものであってもよい。
【００５５】
上記不揮発性記憶装置のデータ書き込み回路において、複数の可変抵抗値範囲は、初期抵抗値範囲よりも抵抗値が小さい第１抵抗値範囲と、第１抵抗値範囲と重複せずかつ第１抵抗値範囲よりも抵抗値が小さい第２抵抗値範囲とを含み、可変状態のメモリセルは、第１電気的信号を印加することによって抵抗値が第２抵抗値範囲から第１抵抗値範囲へと遷移し、第２電気的信号を印加することによって抵抗値が第１抵抗値範囲から第２抵抗値範囲へと遷移する性質を有し、フォーミングストレスを印加した後に、データが記録されたメモリセルに、第２電気的信号よりも弱く、かつ第２電気的信号と極性が同じ電気的ストレスである補助ストレスを印加してもよい。
【００５６】
上記不揮発性記憶装置のデータ書き込み回路において、複数の可変抵抗値範囲は、初期抵抗値範囲よりも抵抗値が大きい第２抵抗値範囲と、第２抵抗値範囲と重複せずかつ第２抵抗値範囲よりも抵抗値が大きい第１抵抗値範囲とを含み、可変状態のメモリセルは、第１電気的信号を印加することによって抵抗値が第２抵抗値範囲から第１抵抗値範囲へと遷移し、第２電気的信号を印加することによって抵抗値が第１抵抗値範囲から第２抵抗値範囲へと遷移する性質を有し、フォーミングストレスを印加した後に、データが記録されたメモリセルに、第１電気的信号よりも弱く、かつ第１電気的信号と極性が同じ電気的ストレスである補助ストレスを印加してもよい。
【００５７】
上記不揮発性記憶装置のデータ書き込み回路において、補助ストレスを印加した後に、データが記録されたメモリセルのうち選択されたメモリセルの抵抗値が第１抵抗値範囲にあるか否かを判定し、判定において選択されたメモリセルの抵抗値が第１抵抗値範囲にないと判定された場合に、該選択されたメモリセルに、第２電気的信号と、第１電気的信号と、補助ストレスとをこの順に印加してもよい。
【００５８】
上記不揮発性記憶装置のデータ書き込み回路において、補助ストレスを印加した後に、データが記録されたメモリセルのうち選択されたメモリセルの抵抗値が第２抵抗値範囲にあるか否かを判定し、判定において選択されたメモリセルの抵抗値が第２抵抗値範囲にないと判定された場合に、該選択されたメモリセルに、第１電気的信号と、第２電気的信号と、補助ストレスとをこの順に印加してもよい。
【００５９】
上記不揮発性記憶装置のデータ書き込み回路において、第１電気的信号は、第２電気的信号と極性が異なり、フォーミングストレスは、第１電気的信号と極性が同じであってもよい。
【００６０】
上記不揮発性記憶装置のデータ書き込み回路において、一部のメモリセルがランダムに選択されることで、データがランダムデータをなすように生成されてメモリセルアレイへと記録されてもよい。
【００６１】
上記不揮発性記憶装置のデータ書き込み回路において、複数の可変抵抗値範囲は、初期抵抗値範囲よりも抵抗値が小さい第１抵抗値範囲と、第１抵抗値範囲と重複せずかつ第１抵抗値範囲よりも抵抗値が小さい第２抵抗値範囲とを含み、可変状態のメモリセルは、第１電気的信号を印加することによって抵抗値が第２抵抗値範囲から第１抵抗値範囲へと遷移し、第２電気的信号を印加することによって抵抗値が第１抵抗値範囲から第２抵抗値範囲へと遷移する性質を有し、フォーミングストレスを印加した後に、データが記録されたメモリセルに第２電気的信号を印加してもよい。
【００６２】
上記不揮発性記憶装置のデータ書き込み回路において、複数の可変抵抗値範囲は、初期抵抗値範囲よりも抵抗値が大きい第２抵抗値範囲と、第２抵抗値範囲と重複せずかつ第２抵抗値範囲よりも抵抗値が大きい第１抵抗値範囲とを含み、可変状態のメモリセルは、第１電気的信号を印加することによって抵抗値が第２抵抗値範囲から第１抵抗値範囲へと遷移し、第２電気的信号を印加することによって抵抗値が第１抵抗値範囲から第２抵抗値範囲へと遷移する性質を有し、フォーミングストレスを印加した後に、データが記録されたメモリセルに第１電気的信号を印加してもよい。
【００６３】
上記不揮発性記憶装置のデータ書き込み回路において、複数の可変抵抗値範囲は、初期抵抗値範囲よりも抵抗値が小さい第１抵抗値範囲と、第１抵抗値範囲と重複せずかつ第１抵抗値範囲よりも抵抗値が小さい第２抵抗値範囲とを含み、フォーミングストレスを印加した後に、初期抵抗値範囲の下限以下であり、かつ複数の可変抵抗値範囲のうち最大のものの上限以上である第１閾値を用いて読み出した第１データと、複数の可変抵抗値範囲のうち最大のものの下限以下であり、かつ最小のものの上限以上である第２閾値を用いて読み出した第２データとを比較し、第１データと第２データとの間で値の異なるメモリセルの数が所定の数よりも少ない場合に、第２閾値より小さい可変抵抗値範囲にあるメモリセルに、第２閾値より大きい可変抵抗値範囲に入るように第１電気的信号を追加的に印加してもよい。
【００６４】
上記不揮発性記憶装置のデータ書き込み回路において、複数の可変抵抗値範囲は、初期抵抗値範囲よりも抵抗値が大きい第２抵抗値範囲と、第２抵抗値範囲と重複せずかつ第２抵抗値範囲よりも抵抗値が大きい第１抵抗値範囲とを含み、フォーミングストレスを印加した後に、初期抵抗値範囲の上限以上であり、かつ複数の可変抵抗値範囲のうち最小のものの下限以下である第１閾値を用いて読み出した第１データと、複数の可変抵抗値範囲のうち最小のものの上限以上であり、かつ最大のものの下限以下である第２閾値を用いて読み出した第２データとを比較し、第１データと第２データとの間で値の異なるメモリセルの数が所定の数よりも少ない場合に、第２閾値より大きい可変抵抗値範囲にあるメモリセルに、第２閾値より小さい可変抵抗値範囲に入るように第２電気的信号を追加的に印加してもよい。
【００６５】
上記不揮発性記憶装置のデータ書き込み回路において、初期状態のメモリセルにフォーミングストレスを印加して、該メモリセルを初期状態から可変状態へと変化させる第１書き込みモードと、可変状態のメモリセルに異なる複数の電気的信号のいずれかを印加して、該メモリセルの抵抗値を複数の可変抵抗値範囲の間で遷移させる第２書き込みモードと、を選択的に実行してもよい。
【００６６】
上記不揮発性記憶装置のデータ書き込み回路は、可変状態のメモリセルへ第１電気的信号または第２電気的信号を印加可能に構成され、フォーミングストレスを印加する場合には、各メモリセルの抵抗値が初期抵抗値範囲にあるか否かの違いを利用して第１種データを記録し、第１電気的信号または第２電気的信号を印加する場合には、各メモリセルの抵抗値が初期抵抗値範囲にあるか否かの違いを利用せずに、各メモリセルの抵抗値が少なくとも一つの可変抵抗値範囲にあるか否かの違いを利用して第２種データを記録してもよい。
【００６７】
上記不揮発性記憶装置のデータ書き込み回路は、フォーミングストレスを印加する場合には、第１種データをメモリセルアレイの第１書き込みアドレス領域に記録し、第１電気的信号または第２電気的信号を印加する場合には、第２種データをメモリセルアレイの第２書き込みアドレス領域に記録してもよい。
【００６８】
上記不揮発性記憶装置のデータ書き込み回路は、フォーミングストレスを印加する場合には、メモリセルアレイ中に第１書き込みアドレス領域を設定して、第１書き込みアドレス領域に第１種データを記録する場合と、メモリセルアレイ中の第１書き込みアドレス領域とは異なる領域に、フォーミングストレスを印加して、複数の可変状態のメモリセルから構成される第２書き込みアドレス領域を形成する場合とを含み、第１電気的信号または第２電気的信号を印加する場合には、第２種データをメモリセルアレイの第２書き込みアドレス領域に記録してもよい。
【００６９】
上記不揮発性記憶装置のデータ書き込み回路において、複数のメモリセルのそれぞれは、第１電極と、第２電極と、第１電極および第２電極の間に介在する抵抗変化層とを有する抵抗変化素子を備え、初期状態のメモリセルを構成する抵抗変化素子の抵抗変化層は、第１電極と第２電極との間を絶縁していてもよい。
【００７０】
上記不揮発性記憶装置、上記不揮発性記憶装置のデータ記録方法、および上記不揮発性記憶装置のデータ書き込み回路において、抵抗変化素子の抵抗変化層は、絶縁体から構成された層を備えてもよい。
【００７１】
上記不揮発性記憶装置、上記不揮発性記憶装置のデータ記録方法、および上記不揮発性記憶装置のデータ書き込み回路において、可変状態のメモリセルを構成する抵抗変化素子の抵抗変化層は、絶縁体で構成された層を貫く導電パスを有してもよい。
【００７２】
上記不揮発性記憶装置、上記不揮発性記憶装置のデータ記録方法、および上記不揮発性記憶装置のデータ書き込み回路において、抵抗変化層は金属酸化物から構成されてもよい。
【００７３】
上記不揮発性記憶装置、上記不揮発性記憶装置のデータ記録方法、および上記不揮発性記憶装置のデータ書き込み回路において、抵抗変化層は、酸素不足型の金属酸化物から構成された層を備えてもよい。
【００７４】
上記不揮発性記憶装置、上記不揮発性記憶装置のデータ記録方法、および上記不揮発性記憶装置のデータ書き込み回路において、金属酸化物は、遷移金属酸化物およびアルミニウム酸化物の少なくともいずれか一方から構成されてもよい。
【００７５】
上記不揮発性記憶装置、上記不揮発性記憶装置のデータ記録方法、および上記不揮発性記憶装置のデータ書き込み回路において、金属酸化物は、タンタル酸化物、ハフニウム酸化物およびジルコニウム酸化物の少なくともいずれかであってもよい。
【００７６】
上記不揮発性記憶装置、上記不揮発性記憶装置のデータ記録方法、および上記不揮発性記憶装置のデータ書き込み回路において、絶縁体は金属酸化物から構成され、導電パスは、絶縁体よりも酸素含有率が低い酸素不足型の金属酸化物から構成されていてもよい。
【００７７】
［装置構成］
図１は、第１参考形態にかかる不揮発性記憶装置の概略構成の一例を示すブロック図である。図２は、第１参考形態にかかる不揮発性記憶装置が備えるメモリセルの概略構成の一例を示す断面図である。図３は、第１参考形態にかかる不揮発性記憶装置が備えるメモリセルの抵抗値範囲の一例を示すグラフである。
【００７８】
図１に示す例では、本参考形態の不揮発性記憶装置１００は、メモリセルアレイ９０と、書き込み回路９２と、読み出し回路９４とを備えている。なお、書き込み回路９２および読み出し回路９４は、両方が省略されてもよいし、いずれか一方が省略されてもよい。
【００７９】
メモリセルアレイ９０は、複数のメモリセル９１がアレイ状に配置された構成を有する。
【００８０】
図２に示す例では、メモリセル９１が備える抵抗変化素子１２０が、下地層１２２と、第１電極１２４と、抵抗変化層１２６と、第２電極１２８とを備えている。
【００８１】
図３に例示するように、メモリセル９１は、少なくとも可変状態と初期状態の２つの状態を備える。可変状態とは、異なる複数の電気的信号が印加されることによって、抵抗値が複数の可変抵抗範囲の間を可逆的に遷移できる状態をいう。また、初期状態とは、抵抗値が可変抵抗値範囲のいずれとも重複しない初期抵抗値範囲にある状態をいう。そして、初期状態にあるメモリセルは、可変状態に変化させるような電気的ストレスであるフォーミングストレスが印加されない限り可変状態とならない。例えば、フォーミングストレスは累積的なストレスであってもよい。その場合、ストレスの累積量が所定量を超えたときに、初期状態から可変状態に遷移する。
【００８２】
メモリセルアレイ９０が備える複数のメモリセル９１は、可変状態のメモリセルと、初期状態のメモリセルと、を含む。メモリセルアレイ９０では、各メモリセル９１が初期状態にあるか可変状態にあるかの違いを利用してデータが記録されている。
【００８３】
メモリセル９１は、製造後、フォーミングをしなければ抵抗値が複数の可変抵抗値範囲の間を可逆的に遷移する状態とならない。フォーミングとは、所定の電気的ストレスをメモリセルに印加して、メモリセルの抵抗値が複数の可変抵抗値範囲の間を可逆的に遷移する状態へと、メモリセルを変化させることをいう。フォーミングのために印加される電気的ストレスは、例えば、所定の電圧と時間幅を有する電気的パルスである場合もあるし、複数の電気的パルスを組み合わせたものである場合もある。
【００８４】
製造直後のメモリセル９１の抵抗値が、初期抵抗値範囲に入る一方で可変抵抗値範囲に入ることがないように、初期抵抗値範囲および可変抵抗値範囲は設定されうる。可変状態に変化した後のメモリセル９１の抵抗値が、可変抵抗値範囲に入る一方で初期抵抗値範囲には入ることがないように、初期抵抗値範囲および可変抵抗値範囲は設定されうる。抵抗変化素子の不揮発性記憶素子を備えるメモリセルが、かかる特性を備え得ることは周知である。公知の様々な材料を用いて、かかる特性を備えるメモリセル９１を製造することができる。
【００８５】
初期状態のメモリセル９１は、可変状態に変化させるような電気的ストレスであるフォーミングストレスではない何らかの電気的ストレスを受けた状態を含む。初期状態のメモリセル９１は、製造直後の抵抗値から、フォーミングストレスではない何等かの電気的ストレスを受ける等して抵抗値が変化した状態を含む。
【００８６】
読み出し回路９４は、選択されたメモリセル９１が初期状態にあるか可変状態にあるかを判定することによって記録されたデータを読み出すことができるように構成されている。
【００８７】
図３に示した例における素子の構成は、第１電極１２４の材料がＴａＮ（窒化タンタル）、第２電極１２８の材料がＩｒ（イリジウム）、抵抗変化層１２６の材料がタンタル酸化物、抵抗変化層１２６全体の厚さが５０ｎｍ以下で、酸素濃度の異なる２層の積層構造を有する。第１電極１２４に接する層が酸素濃度の低い層であって、組成をＴａＯｘとすると０＜ｘ＜２．５である。第２電極１２８に接する層が酸素濃度の高い層であって、組成をＴａＯｙとするとｙ≧２．１であり、厚さが５．５ｎｍ程度である。第１電極１２４と抵抗変化層１２６との接触面および第２電極１２８と抵抗変化層１２６との接触面の面積が０．２５μｍ２以下である。フォーミングストレスは、電圧が＋３．５Ｖ、パルス幅が５μＳｅｃのパルスを累積的に印加する。低抵抗化パルス（素子の抵抗値を第１抵抗値範囲から第２抵抗値範囲へと変化させるためのパルス：第２電気的信号）は、電圧が−２．４Ｖ、パルス幅が５０ｎＳｅｃである。高抵抗化パルス（素子の抵抗値を第２抵抗値範囲から第１抵抗値範囲へと変化させるためのパルス：第１電気的信号）は、電圧が＋１．８Ｖ、パルス幅が５０ｎＳｅｃである。なお電圧は、第１電極１２４を基準として第２電極１２８に正の電圧を印加する場合を正とする。
【００８８】
その他の例として、第１電極１２４及び第２電極の材料が白金（Ｐｔ）、抵抗変化層１２６の材料がハフニウム酸化物、抵抗変化層１２６の厚さが３０ｎｍ、素子領域の直径を３μｍの円形としてもよい。なお、抵抗変化層１２６がＨｆＯ１．６の場合、初期抵抗値は数ＭΩ程度であり、高抵抗値範囲が１０００〜３０００Ω程度、低抵抗値範囲が１００〜３００Ω程度となる。この場合、フォーミングストレスは、例えば、電圧が２〜３Ｖ、パルス幅が１００ｎＳｅｃのパルスを累積的に印加する。低抵抗化パルスは、電圧が＋１．０Ｖ、パルス幅が１００ｎＳｅｃであり、高抵抗化パルスは、電圧が−１．３Ｖ、パルス幅が１００ｎＳｅｃである。
【００８９】
図３に示す例では、初期抵抗値範囲の下限が、全ての可変抵抗値範囲の上限以上である。具体的には、初期抵抗値範囲の下限が、複数の可変抵抗値範囲のうち抵抗値が最も大きいものの上限以上であってもよい。さらに具体的には、初期抵抗値範囲の下限は、２個の可変抵抗値範囲のうち抵抗値が最も大きい第１抵抗値範囲の上限に等しくてもよい。
【００９０】
図３に示す例では、第１閾値は、初期抵抗値範囲の下限以下であり、かつ、複数の可変抵抗値範囲のうち抵抗値が最も大きいものの上限以上である値である。具体的には、第１閾値は、初期抵抗値範囲の下限であり、複数の可変抵抗値範囲のうち抵抗値が最も大きいものの上限である値であってもよい。さらに具体的には、第１閾値は、２個の可変抵抗値範囲のうち抵抗値が最も大きい第１抵抗値範囲の上限に等しくてもよい。なお、第１閾値と等しい値を有する抵抗値は、初期抵抗値範囲に属するものとしてもよいし、複数の可変抵抗値範囲のうち抵抗値が最も大きいものに属するものとしてもよい。
【００９１】
図３に示す例では、第２閾値は、複数の可変抵抗値範囲のうち抵抗値が最も大きいものの下限以下であり、かつ複数の可変抵抗値範囲のうち抵抗値が最も小さいものの上限以上である値である。具体的には、第２閾値は、２個の可変抵抗値範囲のうち抵抗値が最も大きい第１抵抗値範囲の下限以下であり、かつ２個の可変抵抗値範囲のうち抵抗値が最も小さい第２抵抗値範囲の上限以上である値であってもよい。さらに具体的には、第２閾値は、第１抵抗値範囲の下限および第２抵抗値範囲の上限に等しくてもよい。なお、第２閾値と等しい値を有する抵抗値は、複数の可変抵抗値範囲のうち、第２閾値よりも大きな抵抗値を含む抵抗値範囲に属するものとしてもよいし、第２閾値よりも小さな抵抗値を含む抵抗値範囲に属するものとしてもよい。
【００９２】
メモリセル９１の構成によっては、製造直後のメモリセル９１の抵抗値が、いずれの可変抵抗値範囲よりも小さい場合もある。すなわち、初期抵抗値範囲が可変抵抗値範囲よりも小さい場合がある。具体的には例えば、メモリセル９１が鉄酸化物を抵抗変化層に用いた抵抗変化素子を備える場合に、かかる特性が実現される。より具体的には、鉄酸化物において抵抗率は、Ｆｅ３Ｏ４、ＦｅＯ、Ｆｅ２Ｏ３の順に高い。例えば、素子構造として第１電極１２４の材料がＰｔ（白金）、第２電極１２８の材料がＰｔ（白金）、抵抗変化層１２６の材料がＦｅ３Ｏ４、抵抗変化層１２６全体の厚さが５０ｎｍ以下としうる。第１電極１２４と抵抗変化層１２６との接触面および第２電極１２８と抵抗変化層１２６との接触面の面積を０．２５μｍ２以下とするとき、初期抵抗値は概ね２００Ωと非常に低抵抗にある。この初期状態のメモリセルに１０μｓｅｃのパルス幅で第１電気的信号と同じ極性で電圧の絶対値が３．５Ｖのパルスを所定の回数を印加することによって、初期抵抗値よりも抵抗値の大きい状態（２Ｋ〜８ＫΩの高抵抗状態）に推移する。これは、第２電極１２８と抵抗変化層１２６の接触界面の酸化が進行し、Ｆｅ２Ｏ３の絶縁状態にある抵抗層が形成されるためと考えられる。その後、電圧の絶対値が２．４Ｖの第２電気的信号の印加により３００Ωから５００Ωの第２抵抗値範囲と、第２電気的信号と極性の異なる電圧の絶対値が２．４Ｖの第１電気的信号の印加により２Ｋから８ＫΩの第１抵抗値範囲を推移できるようになる。
【００９３】
その他の例として、第１電極１２４及び第２電極１２８の材料が白金（Ｐｔ）、抵抗変化層１２６の材料がハフニウム酸化物、抵抗変化層１２６の厚さが３０ｎｍ、素子領域の直径を３μｍの円形のとしてもよい。なお、抵抗変化層１２６がＨｆＯ０．９であり、初期状態では抵抗変化しない場合に、電圧４Ｖ、パルス幅１００μＳｅｃという長いパルス幅のパルスをフォーミングストレスとして与えることにより可変状態になる。可変状態のメモリセルは、電圧が−１．３Ｖ、パルス幅が１００ｎＳｅｃの低抵抗化パルスで低抵抗値範囲３０〜９０Ω程度に遷移し、電圧が＋２．０Ｖ、パルス幅が１００ｎＳｅｃの高抵抗化パルスで高抵抗値範囲１００〜３００Ω程度に推移する。
【００９４】
かかる構成では、初期抵抗値範囲の上限が、全ての可変抵抗値範囲の下限以下であってもよい。具体的には、初期抵抗値範囲の上限が、複数の可変抵抗値範囲のうち抵抗値が最も小さいものの下限以下であってもよい。さらに具体的には、初期抵抗値範囲の上限は、２個の可変抵抗値範囲のうち抵抗値が最も小さい第２抵抗値範囲の下限に等しくてもよい。
【００９５】
第１閾値は、初期抵抗値範囲の上限以上であり、かつ、複数の可変抵抗値範囲のうち抵抗値が最も小さいものの下限以下である値であってもよい。具体的には、第１閾値は、初期抵抗値範囲の上限であり、複数の可変抵抗値範囲のうち抵抗値が最も小さいものの下限である値であってもよい。さらに具体的には、第１閾値は、２個の可変抵抗値範囲のうち抵抗値が最も小さい第２抵抗値範囲の下限に等しくてもよい。
【００９６】
第２閾値は、複数の可変抵抗値範囲のうち抵抗値が最も小さいものの上限以上であり、かつ複数の可変抵抗値範囲のうち抵抗値が最も大きいものの下限以下である値であってもよい。具体的には、第２閾値は、２個の可変抵抗値のうち抵抗値が最も小さい第２抵抗値範囲の上限以上であり、かつ２個の可変抵抗値のうち抵抗値が最も大きい第１抵抗値範囲の下限以下である値であってもよい。さらに具体的には、第２閾値は、第１抵抗値範囲の下限および第２抵抗値範囲の上限に等しくてもよい。
【００９７】
なお、隣接する抵抗値範囲は必ずしも上限と下限とが一致している必要はなく、隣接する抵抗値範囲同士の間に所定のマージンが設定されていてもよい。
【００９８】
読み出し回路９４は、選択されたメモリセル９１の抵抗値が、第１閾値よりも大きいか否かを判定する第１読み出しモードと、選択されたメモリセル９１の抵抗値が、第２閾値よりも大きいか否かを判定する第２読み出しモードとを選択的に実行することによって、記録されたデータを読み出すことができるように構成されていてもよい。
【００９９】
記録されたデータは、第１種データと第２種データとを含み、第１種データは、各メモリセル９１の抵抗値が初期抵抗値範囲にあるか否かの違いを利用して記録されており、第２種データは、各メモリセル９１の抵抗値が初期抵抗値範囲にあるか否かの違いを利用せずに、各メモリセル９１の抵抗値が少なくとも一つの可変抵抗値範囲にあるか否かの違いを利用して記録されていてもよい。
【０１００】
この場合において、メモリセルアレイ９０が、第１書き込みアドレス領域と、第２書き込みアドレス領域とを備え、第１書き込みアドレス領域に第１種データが記録されており、第２書き込みアドレス領域に第２種データが記録されていてもよい。第１書き込みアドレス領域と、第２書き込みアドレス領域とは、必ずしも物理的な領域として分離していなくてもよい。例えば、各メモリセル９１がアドレスごとに所定の規則によって第１書き込みアドレス領域と第２書き込みアドレス領域とに振り分けられていてもよい。
【０１０１】
第２書き込みアドレス領域は、例えば複数の可変状態のメモリセルから構成される領域である。そのため、初期状態の複数のメモリセルからなるメモリセルアレイ９０（例えば、製造直後のメモリセルアレイ９０）のうち、所定の領域に含まれる複数のメモリセルに対して、フォーミングストレスを印加することによって、第２書き込みアドレス領域を形成できる。そのため、フォーミングストレスを印加することにより、第１種データを記録することに加えて、第２種データを書き込むための第２書き込みアドレス領域を形成することもできる。また、メモリセルアレイ９０を構成する複数のメモリセルに選択的にフォーミングストレスを印加することによって、第１書き込みアドレス領域と第２書き込みアドレス領域とを設定できるため、それらのアドレス領域の容量配分や配置を自由に選択することができる。第１書き込みアドレス領域の一部領域に対して、フォーミングストレスを印加することによって、当該一部領域を第２書き込みアドレス領域へと変更することができる。
【０１０２】
また、第１書き込みアドレス領域と、第２書き込みアドレス領域が、同一のメモリセルアレイ９０に配置されることにより、例えば第１書き込みアドレス領域と第２書き込みアドレス領域との間で情報を送受信する場合であっても、情報の秘匿性を高めることができる。
【０１０３】
図３に示す例では、具体的には例えば、第１種データは各メモリセル９１の抵抗値が初期抵抗値範囲にあるか否かの違いを利用して記録されており、第２種データは、各メモリセル９１の抵抗値が第２抵抗値範囲にあるか否かの違いを利用して記録されていてもよい。
【０１０４】
図３に示す例では、可変抵抗値範囲の数は２であるが、可変抵抗値範囲の数は３以上であってもよい。すなわち、メモリセル９１は多値メモリであってもよい。
【０１０５】
Ｎを３以上の整数とするとき、可変状態のメモリセル９１は、異なる電気的信号が印加されることによってＮ−１個の可変抵抗値範囲の間を遷移するものであり、メモリセルアレイ９０において、各メモリセル９１の抵抗値が、初期抵抗値範囲とＮ−１個の可変抵抗値範囲とから構成されたＮ個の抵抗値範囲のいずれに含まれるかの違いを利用して多値データが記録されていてもよい。図３に示す例は、Ｎ＝３の例である。Ｎは４以上の整数であってもよい。
【０１０６】
Ｎを３以上の整数とし、Ｍ１をＮ以下の正の整数とし、Ｍ２をＮ−１以下の正の整数とするとき、第１種データは、各メモリセル９１の抵抗値が初期抵抗値範囲を含む互いに重複しないＭ１個の抵抗値範囲のいずれに含まれるかの違いを利用して記録されており、第２種データは、各メモリセル９１の抵抗値が初期抵抗値範囲を含まない、かつ互いに重複しない、Ｍ２個の抵抗値範囲のいずれに含まれるかの違いを利用して記録されており、第１種データの記録に用いられるＭ１個の抵抗値範囲のうちの初期抵抗値範囲を含まないＭ１−１個の抵抗値範囲は、第２種データの記録に用いられるＭ２個の抵抗値範囲のいずれかと同一であってもよい。
【０１０７】
Ｎを３以上の整数とし、Ｍ１をＮ以下の正の整数とし、Ｍ２をＮ−１以下の正の整数とするとき、第１種データは、各メモリセル９１の抵抗値が初期抵抗値範囲を含む互いに重複しないＭ１個の抵抗値範囲のいずれに含まれるかの違いを利用して記録されており、第２種データは、各メモリセル９１の抵抗値が初期抵抗値範囲を含まない、かつ互いに重複しない、Ｍ２個の抵抗値範囲のいずれに含まれるかの違いを利用して記録されており、第１種データの記録に用いられるＭ１個の抵抗値範囲のうちの初期抵抗値範囲を含まないＭ１−１個の抵抗値範囲の少なくともいずれかは、第２種データの記録に用いられるＭ２個の抵抗値範囲と異なっていてもよい。
【０１０８】
読み出し回路９４は、Ｍ１−１個の閾値から構成される第１種閾値群を用いて、第１種データを読み出す第１読み出しモードと、Ｍ２−１個の閾値から構成される第２種閾値群を用いて、第２種データを読み出す第２読み出しモードとを選択的に実行し、第１種閾値群は、初期抵抗値範囲の下限以下であり、かつ、複数の可変抵抗値範囲のうち抵抗値が最も大きいものの上限以上である第１閾値を含み、第２種閾値群に含まれる閾値は、いずれも、複数の可変抵抗値範囲のうち抵抗値が最も大きいものの下限以下であってもよい。図３に示す例では、第１種閾値群に属する閾値が第１閾値であり、第２種閾値群に属する閾値が第２閾値である。
【０１０９】
なお、図３に示される抵抗変化素子において、初期抵抗値範囲を、例えば２×１０６Ω以上１．０×１０７Ω未満とし、可変抵抗値範囲を、５×１０４Ω以上２×１０６Ω未満、及び５×１０３Ω以上５×１０４Ω未満に設定できる。このとき、第１閾値は２×１０６Ωであり、第２閾値は５×１０４Ωである。
【０１１０】
［抵抗変化素子の構成］
抵抗変化素子１２０は、第１電極１２４と第２電極１２８との間に抵抗変化層１２６が介在する構成を有する。抵抗変化層１２６は、例えば金属酸化物、より詳細には例えば遷移金属酸化物で構成することができる。可変状態にあるメモリセル９１の抵抗変化素子１２０は、第１電極１２４と第２電極１２８との間に電気的信号が印加されることによって、第１電極１２４と第２電極１２８との間の抵抗値が複数の可変抵抗値範囲の間を可逆的に遷移する性質を有する。
【０１１１】
初期状態にあるメモリセル９１の抵抗変化素子１２０の抵抗変化層１２６は、第１電極１２４と第２電極１２８との間を絶縁していてもよい。絶縁とは、具体的には２MΩ以上とすることができる。抵抗変化素子１２０の抵抗変化層１２６は、絶縁体から構成された層を備えていてもよい。絶縁体とは、具体的には抵抗率が３０Ω・ｍ以上の材料とすることができる。抵抗変化素子１２０の抵抗変化層１２６が絶縁体から構成されることにより、初期状態のメモリセルの抵抗特性を安定して維持することができる。
【０１１２】
初期状態とは、抵抗変化素子を半導体プロセス等により製造した後、可変状態に変化させるような電気的ストレスであるフォーミングストレスが印加されない限り可変状態とならず、かつ、抵抗値が可変抵抗値範囲のいずれとも重複しない初期抵抗値範囲にある素子をいう。初期状態にある抵抗変化素子は、フォーミングストレスが印加されない限り、容易には可変状態に変化しない。このために、初期状態と可変状態との差異を利用して、安定してデータを保持することができる。また、電気的信号の印加によって抵抗値が変化する可変状態の抵抗変化素子と異なり、初期抵抗値範囲を、抵抗変化素子の材料、大きさ、形状、及び製造条件等によってある程度調整することができる。特に抵抗変化層１２６が積層構造である場合、酸素濃度の高い層の厚み、形成時の酸素濃度によって任意に調整可能である。
【０１１３】
初期抵抗値範囲は、例えば、初期状態にある素子に、可変状態にある素子の抵抗値を複数の可変抵抗値範囲の間で変化させる電気的信号およびフォーミングストレスのいずれよりも小さな電圧を素子に印加して読み出したときに得られる抵抗値の範囲としうる。
【０１１４】
なお、フォーミングストレスは、メモリセル９１に印加する電圧振幅の量、パルスの幅、および累積印加時間等で決定され、それぞれの値はメモリセルアレイ９０内のメモリセル９１毎に異なっている。なお、累積印加時間とは、例えば、抵抗状態が初期状態から可変状態に変化するまでに印加される電気的パルスのパルス幅の合計を意味する。このためフォーミングストレスとして最低限必要となる電気的ストレスを規定するパラメータの具体的な値は、対象となるメモリセル９１毎に素子が可変状態へと変化するまでに印加された電気的ストレスの電圧、パルス幅、および累積印加時間等の値であって、絶対的な固定値ではなく所定のバラツキをもつ値である。
【０１１５】
なお、フォーミングストレスは、可変状態にあるメモリセルの抵抗値を複数の可変抵抗値範囲の間で可逆的に変化させるために印加される電気的信号よりも強いのが一般的である。具体的には、フォーミングストレスは、電圧の絶対値、パルス幅、および累積印加時間の少なくともいずれかにおいて、可変状態にあるメモリセルの抵抗値を変化させるために印加される電気的信号よりも大きいものとしうる。
【０１１６】
可変状態において、電圧およびパルス幅等は異なるが同極性の電気的信号を印加することにより抵抗値が変化するものをユニポーラ型抵抗変化素子とよぶ。より具体的には、例えば、第２電極１２８から第１電極１２４に電流が流れる向きに＋２Ｖで１μｓの幅の電気的信号（電気的パルス）を印加すると抵抗変化素子の抵抗値が所定の高抵抗レベル（第１抵抗値範囲：ＨＲレベルともいう）に変化し、同様に第２電極１２８から第１電極１２４に電流が流れる向きに＋４Vで５０ｎｓの幅の電気的信号を印加すると抵抗変化素子の抵抗値が所定の低抵抗レベル（第２抵抗値範囲：ＬＲレベルともいう）に変化する。このような、同極性の電気的信号を印加することにより抵抗値が可逆的に変化するものを、ユニポーラ型抵抗変化素子という。
【０１１７】
一方、可変状態において、異なる極性の電気的信号を印加することで抵抗値が変化するものをバイポーラ型抵抗変化素子とよぶ。より具体的には第２電極１２８から第１電極１２４に電流が流れる向きに＋２Ｖで５０ｎｓの幅の電気的信号を印加すると抵抗変化素子の抵抗値が所定の高抵抗レベル（第１抵抗値範囲：ＨＲレベルともいう）に変化し、逆に第１電極１２４から第２電極１２８に電流が流れる向きに＋２Ｖで５０ｎｓの幅の電気的信号を印加すると抵抗変化素子の抵抗値が所定の低抵抗レベル（第２抵抗値範囲：ＬＲレベルともいう）に変化する。このような、逆極性の電気的信号を印加することにより抵抗値が可逆的に変化するものを、バイポーラ型抵抗変化素子という。
【０１１８】
当然であるが、バイポーラ型抵抗変化素子において、例えば動作を安定にするために、極性のみならず、ＨＲレベルに変化させる場合（高抵抗化ともいう）に印加する電気的信号と、ＬＲレベルに変化させる場合（低抵抗化ともいう）に印加する電気的信号とで、パルス幅や電圧の絶対値を異ならせてもよい。
【０１１９】
抵抗変化層１２６は金属酸化物から構成されてもよい。抵抗変化層１２６は、酸素不足型の金属酸化物から構成された層を備えてもよい。抵抗変化層１２６を構成する金属酸化物は、遷移金属酸化物およびアルミニウム酸化物の少なくともいずれか一方であってもよいし、タンタル酸化物、鉄酸化物、ハフニウム酸化物およびジルコニウム酸化物の少なくともいずれかであってもよい。
【０１２０】
ユニポーラ型抵抗変化素子の抵抗変化層の材料には、チタン（Ｔｉ）酸化物、ニッケル（Ｎｉ）酸化物、アルミニウム（Ａｌ）酸化物等を用いることができる。一方、バイポーラ型抵抗変化素子の抵抗変化層の材料には、タンタル（Ｔａ）酸化物、ハフニウム（Ｈｆ）酸化物、アルミニウム（Ａｌ）酸化物、鉄（Ｆｅ）酸化物等を用いることができる。
【０１２１】
同じ材料の酸化物を用いた場合でも、電極材料との組合せおよび酸化物の積層構造等により、ユニポーラ型抵抗変化素子およびバイポーラ型抵抗変化素子の両方が得られる場合もある。なお、抵抗変化層の材料にタンタル酸化物を用いると、抵抗変化素子が良好な特性を示すので、本参考形態において特に詳細に例示する。
【０１２２】
第１電極１２４および第２電極１２８の材料には、例えば、イリジウム（Ｉｒ）、白金（Ｐｔ）、タングステン（Ｗ）、銅（Ｃｕ）、アルミニウム（Ａｌ）、窒化チタン（ＴｉＮ）、窒化タンタル（ＴａＮ）および窒化チタンアルミニウム（ＴｉＡｌＮ）等を用いることができる。なお、図２に示す例では、第１電極１２４が第２電極１２８に比べ大面積となっているが、これに限定されるものでない。例えば、第１電極１２４を配線の一部に適用するなど、半導体プロセスにあわせ適宜、最適な形状にされうる。下地層１２２も同様に半導体プロセスに応じて適宜に省略または変更されうる。
【０１２３】
抵抗変化層１２６は、第１電極１２４に接続する第１抵抗変化層と、第２電極１２８に接続する第２抵抗変化層の少なくとも２層を積層して構成されてもよい。
【０１２４】
第１抵抗変化層は、酸素不足型の第１金属酸化物で構成され、第２抵抗変化層は、第１金属酸化物よりも酸素不足度が小さい第２金属酸化物で構成されうる。第２抵抗変化層は、絶縁体から構成された層であってもよい。第２抵抗変化層中には、電気パルスの印加に応じて酸素不足度が可逆的に変化する微小な局所領域が形成されている。局所領域は、酸素欠陥サイトから構成されるフィラメントを含むと考えられる。局所領域は、第２抵抗変化層を貫く導電パスであってもよい。絶縁体が金属酸化物から構成され、導電パスは、絶縁体よりも酸素含有率が低い酸素不足型の金属酸化物から構成されていてもよい。
【０１２５】
「酸素不足度」とは、金属酸化物において、その化学量論的組成（複数の化学量論的組成が存在する場合は、そのなかで最も抵抗値が高い化学量論的組成）の酸化物を構成する酸素の量に対し、不足している酸素の割合をいう。化学量論的組成の金属酸化物は、他の組成の金属酸化物と比べて、より安定でありかつより高い抵抗値を有している。
【０１２６】
例えば、金属がタンタル（Ｔａ）の場合、上述の定義による化学量論的組成の酸化物はＴａ２Ｏ５であるので、ＴａＯ２．５と表現できる。ＴａＯ２．５の酸素不足度は０％であり、ＴａＯ１．５の酸素不足度は、酸素不足度＝（２．５−１．５）／２．５＝４０％となる。また、酸素過剰の金属酸化物は、酸素不足度が負の値となる。なお、本明細書中では、特に断りのない限り、酸素不足度は正の値、０、負の値も含むものとして説明する。
【０１２７】
酸素不足度の小さい酸化物は化学量論的組成の酸化物により近いため抵抗値が高く、酸素不足度の大きい酸化物は酸化物を構成する金属により近いため抵抗値が低い。
【０１２８】
「酸素含有率」とは、総原子数に占める酸素原子の比率である。例えば、Ｔａ２Ｏ５の酸素含有率は、総原子数に占める酸素原子の比率（Ｏ／（Ｔａ＋Ｏ））であり、７１．４ａｔｍ％となる。したがって、酸素不足型のタンタル酸化物は、酸素含有率は０より大きく、７１．４ａｔｍ％より小さいことになる。例えば、第１金属酸化物を構成する金属と、第２金属酸化物を構成する金属とが同種である場合、酸素含有率は酸素不足度と対応関係にある。すなわち、第２金属酸化物の酸素含有率が第１金属酸化物の酸素含有率よりも大きいとき、第２金属酸化物の酸素不足度は第１金属酸化物の酸素不足度より小さい。
【０１２９】
抵抗変化層を構成する金属は、タンタル以外の金属を用いてもよい。抵抗変化層を構成する金属としては、遷移金属、およびアルミニウム（Ａｌ）の少なくともいずれかを用いることができる。遷移金属としては、タンタル（Ｔａ）、チタン（Ｔｉ）、ハフニウム（Ｈｆ）、ジルコニウム（Ｚｒ）、ニオブ（Ｎｂ）、タングステン（Ｗ）、ニッケル（Ｎｉ）、鉄（Ｆｅ）等を用いることができる。遷移金属は複数の酸化状態をとることができるため、異なる抵抗状態を酸化還元反応により実現することが可能である。
【０１３０】
例えば、ハフニウム酸化物を用いる場合、第１金属酸化物の組成をＨｆＯｘとした場合にｘが０．９以上１．６以下であり、かつ、第２金属酸化物の組成をＨｆＯｙとした場合にｙがｘの値よりも大である場合に、抵抗変化層の抵抗値を安定して高速に変化させることができる。この場合、第２金属酸化物の膜厚は、３〜４ｎｍとしてもよい。
【０１３１】
また、ジルコニウム酸化物を用いる場合、第１金属酸化物の組成をＺｒＯｘとした場合にｘが０．９以上１．４以下であり、かつ、第２金属酸化物の組成をＺｒＯｙとした場合にｙがｘの値よりも大である場合に、抵抗変化層の抵抗値を安定して高速に変化させることができる。この場合、第２金属酸化物の膜厚は、１〜５ｎｍとしてもよい。
【０１３２】
第１金属酸化物を構成する第１金属と、第２金属酸化物を構成する第２金属とは、異なる金属を用いてもよい。この場合、第２金属酸化物は、第１金属酸化物よりも酸素不足度が小さい、つまり抵抗が高くてもよい。このような構成とすることにより、抵抗変化時に第１電極１２４と第２電極１２８との間に印加された電圧は、第２金属酸化物に、より多くの電圧が分配され、第２金属酸化物中で発生する酸化還元反応をより起こしやすくすることができる。
【０１３３】
また、第１抵抗変化層となる第１金属酸化物を構成する第１金属と、第２抵抗変化層となる第２金属酸化物を構成する第２金属とを、互いに異なる材料を用いる場合、第２金属の標準電極電位は、第１金属の標準電極電位より低くてもよい。標準電極電位は、その値が高いほど酸化しにくい特性を表す。これにより、標準電極電位が相対的に低い第２金属酸化物において、酸化還元反応が起こりやすくなる。なお、抵抗変化現象は、抵抗が高い第２金属酸化物中に形成された微小な局所領域中で酸化還元反応が起こってフィラメント（導電パス）が変化することにより、その抵抗値（酸素不足度）が変化することにより発現すると考えられる。
【０１３４】
例えば、第１金属酸化物に酸素不足型のタンタル酸化物（ＴａＯｘ）を用い、第２金属酸化物にチタン酸化物（ＴｉＯ２）を用いることにより、安定した抵抗変化動作が得られる。チタン（標準電極電位＝−１．６３ｅＶ）はタンタル（標準電極電位＝−０．６ｅＶ）より標準電極電位が低い材料である。このように、第２金属酸化物に第１金属酸化物より標準電極電位が低い金属の酸化物を用いることにより、第２金属酸化物中でより酸化還元反応が発生しやすくなる。その他の組み合わせとして、高抵抗層となる第２金属酸化物にアルミニウム酸化物（Ａｌ２Ｏ３）を用いることができる。例えば、第１金属酸化物に酸素不足型のタンタル酸化物（ＴａＯｘ）を用い、第２金属酸化物にアルミニウム酸化物（Ａｌ２Ｏ３）を用いてもよい。
【０１３５】
積層構造の抵抗変化層における抵抗変化現象は、いずれも抵抗が高い第２金属酸化物中に形成された微小な局所領域中で酸化還元反応が起こって、局所領域中のフィラメント（導電パス）が変化することにより、その抵抗値が変化すると考えられる。
【０１３６】
つまり、第２金属酸化物に接続する第２電極１２８に、第１電極１２４を基準にして正の電圧を印加したとき、抵抗変化層中の酸素イオンが第２金属酸化物側に引き寄せられる。これによって、第２金属酸化物中に形成された微小な局所領域中で酸化反応が発生し、酸素不足度が減少する。その結果、局所領域中のフィラメントが繋がりにくくなり、抵抗値が増大すると考えられる。
【０１３７】
逆に、第２金属酸化物に接続する第２電極１２８に、第１電極１２４を基準にして負の電圧を印加したとき、第２金属酸化物中の酸素イオンが第１金属酸化物側に押しやられる。これによって、第２金属酸化物中に形成された微小な局所領域中で還元反応が発生し、酸素不足度が増加する。その結果、局所領域中のフィラメントが繋がりやすくなり、抵抗値が減少すると考えられる。
【０１３８】
図４は、パーコレーションモデル（percolation model）を用いて、抵抗変化層（例えば局所領域）中のフィラメントの形成をシミュレートした結果の一例を示す図である。ここでは、抵抗変化層中の酸素欠陥サイト（以下、単に「欠陥サイト」という）等が繋がることによりフィラメント（導電パス）が形成される場合を考えている。パーコレーションモデルとは、抵抗変化層中にランダムに分布した欠陥サイトに対して、欠陥サイト等の密度がある閾値を超えると欠陥サイト等の繋がりが形成される確率が増加するという理論に基づくモデルである。ここで「欠陥」とは、例えば、金属酸化物中で酸素が欠損していることを意味し、「欠陥サイトの密度」とは酸素不足度とも対応している。すなわち、酸素不足度が大きくなると、欠陥サイトの密度も大きくなる。
【０１３９】
図４に示されるシミュレーションでは、抵抗変化層の酸素イオンサイトを、格子状に仕切られた領域（サイト）として近似的に仮定し、確率的に形成される欠陥サイトによって形成されるフィラメントをシミュレーションで求めている。図４において、“０”が含まれているサイトは抵抗変化層中に形成される欠陥サイトを表している。他方、空白となっているサイトは酸素イオンが占有しているサイトを表しており、高抵抗な領域を意味している。また、矢符で示される欠陥サイトのクラスター（上下、左右及び斜め方向に１個のサイトの範囲内で互いに接続された欠陥サイトの集合体）は、図中の上下方向に電圧が印加された場合に抵抗変化層内に形成されるフィラメント、すなわち電流が流れるパスを示している。図４に示されるように、抵抗変化層の下面と上面との間に電流を流すフィラメントは、ランダムに分布する欠陥サイトの内の上端から下端までを接続する欠陥サイトのクラスターで構成される。このパーコレーションモデルに基づくと、フィラメントの本数及び形状は確率的に形成されることになる。フィラメントの本数及び形状の分布は、抵抗変化層の抵抗値のばらつきとなる。
【０１４０】
フォーミング動作は、抵抗変化層の一部領域において金属酸化物内の欠陥サイトの密度を変化させ、フィラメントを形成する動作に対応する。具体的には、電気的ストレスを印加することによって、初期状態で疎であった欠陥サイト間を繋ぐようなフィラメントを形成する。金属酸化物から構成される抵抗変化層を有する抵抗変化素子を形成した場合、抵抗変化層内の欠陥サイトの配置はメモリセル毎にランダムに配置される。このため、仮に各メモリセルに一定の電気的ストレスを印加した場合であっても、フィラメント形成（欠陥の繋がり）の障壁となる欠陥サイト間の最大距離等がメモリセル毎にランダムにばらついているために、フォーミングが発生するストレス量がメモリセル毎にランダムにばらつくと考えられる。その結果、初期状態にある複数のメモリセルに所定の電気的ストレスを印加した場合に、フォーミングが完了するメモリセルがランダムに発生すると考えられる。
【０１４１】
なお、酸素欠陥サイト等が繋がることによってフィラメントパスが形成される材料であれば、フォーミングの発生（初期状態から可変状態への変化）は同様のメカニズムによって説明できると考えられる。そのため、例えば金属酸化物に含まれる金属材料が異なる場合であっても、同様に、フォーミングにより生じるフィラメントの本数及び形状は確率的に形成されると推察される。よって、初期状態のメモリセルに所定の電気的ストレスを印加した場合に、フォーミングが発生するか否かは、確率的に、すなわちランダムに、決定される。
【０１４２】
酸素不足度がより小さい第２金属酸化物に接続されている第２電極１２８は、例えば、白金（Ｐｔ）、イリジウム（Ｉｒ）、パラジウム（Ｐｄ）など、第２金属酸化物を構成する金属および第１電極１２４を構成する材料と比べて標準電極電位が高い材料で構成する。また、酸素不足度がより高い第１金属酸化物に接続されている第１電極１２４は、例えば、タングステン（Ｗ）、ニッケル（Ｎｉ）、タンタル（Ｔａ）、チタン（Ｔｉ）、アルミニウム（Ａｌ）、窒化タンタル（ＴａＮ）、窒化チタン（ＴｉＮ）など、第１金属酸化物を構成する金属と比べて標準電極電位が低い材料で構成してもよい。標準電極電位は、その値が高いほど酸化しにくい特性を表す。
【０１４３】
すなわち、第２電極１２８の標準電極電位Ｖ２、第２金属酸化物を構成する金属の標準電極電位Ｖｒ２、第１金属酸化物を構成する金属の標準電極電位Ｖｒ１、および、第１電極１２４の標準電極電位Ｖ１は、Ｖｒ２＜Ｖ２、およびＶ１＜Ｖ２なる関係を満足してもよい。さらには、Ｖ２＞Ｖｒ２、およびＶｒ１≧Ｖ１の関係を満足してもよい。
【０１４４】
上記の構成とすることにより、第２電極１２８と第２金属酸化物の界面近傍の第２金属酸化物中において、選択的に酸化還元反応が発生し、安定した抵抗変化現象が得られる。
【０１４５】
より好適には、抵抗変化層１２６は、ＴａＯｘ（但し、０≦ｘ＜２.５）で表される組成を有する第１抵抗変化層と、ＴａＯｙ（但し、ｘ＜ｙ＜２．５）で表される組成を有する第２抵抗変化層とが積層された積層構造を少なくとも有している。他の層、例えばタンタル酸化物以外の金属酸化物で構成される第３抵抗変化層等を適宜配置しうることは言うまでもない。
【０１４６】
ここで、ＴａＯｘは、０．８≦ｘ＜１．９を満足してもよく、ＴａＯｙは、２．１≦ｙ＜２．５を満足してもよい。第２タンタル含有層の厚みは、１ｎｍ以上８ｎｍ以下であってもよい。酸素不足度の異なる層を積層することにより、バイポーラ型における抵抗変化の方向が決定できる。例えば、第２抵抗変化層を第２電極１２８側に、第１抵抗変化層を第１電極１２４側に配置する。かかる構成によれば、第２電極１２８側から第１電極１２４側に電流を流す向きの電圧印加で高抵抗化し、逆向きに電流を流す向きの電圧印加で低抵抗化する。当然ながら第２抵抗変化層を第１電極１２４に接し、第１抵抗変化層を第２電極１２８に接するように構成すると、抵抗変化と電圧印加の向きの関係が逆転する。
【０１４７】
［抵抗変化素子の特性］
図５は、可変状態にあるバイポーラ型抵抗変化素子の特性の一例を示す図である。図５の素子の構成は、第１電極１２４の材料がＴａＮ、第２電極１２８の材料がＩｒ、抵抗変化層１２６の材料がＴａＯｘ（但し、０＜ｘ＜２．５）で表される組成を有する第１タンタル含有層と、ＴａＯｙ（但し、ｘ＜ｙ）で表される組成を有する第２タンタル含有層とが積層された積層構造を少なくとも有して、第１タンタル含有層が第１電極１２４に接し、第２タンタル含有層が第２電極１２８に接している。ＴａＯｘは、０．８≦ｘ≦１．９を満足し、ＴａＯｙは、２．１≦ｙ≦２．５を満足するように製造されている。第２タンタル含有層の厚みは、８ｎｍ以下であり、抵抗変化層１２６全体の厚みは５０ｎｍ以下である。各電極への接触面積は図３の測定に用いた抵抗変化素子と等しい。
【０１４８】
図５の横軸は印加する電気的信号の電圧を示し、縦軸に電気的信号を印加した後の抵抗変化素子の抵抗値（抵抗値は読み出し電圧ＶＲを印加したときの電流から算出）を示している。図中のスタートの位置から、正極性側に電圧レベルを徐々にあげて行くと、印加電圧が＋１．１Ｖを超えたときから徐々に抵抗値が上昇し、印加電圧が＋２．０Ｖでは約１００ｋΩに達している。逆に負極性側に電圧レベルを徐々に下げて行き、−１．１Vを超えると約１０ｋΩ程度に低抵抗化して、スタートの抵抗値に戻っていることがわかる。このとき抵抗変化層１２６は、第２抵抗変化層を第２電極１２８側に、第１抵抗変化層を第１電極１２４側に配置している。第２電極１２８から第１電極１２４に電流が流れるような電気的信号の印加を正極性印加と定義する。正極性印加では、抵抗変化素子１２０はＨＲレベルに変化する。また、逆向きに電流が流れる印加を負極性印加と定義する。負極性印加では、抵抗変化素子１２０はＬＲレベルに変化する。ＬＲからＨＲに変化せしめる電圧レベルを高抵抗化電圧（ＶＨ）とし、ＨＲからＬＲに変化せしめる電圧レベルを低抵抗化電圧（ＶＬ）とすると、図５の場合では、その絶対値が｜ＶＨ｜＝｜ＶＬ｜＝２．０Ｖ程度あれば、共通の電源電圧を用いて十分に低抵抗状態と高抵抗状態を可逆的に推移できることがわかる。
【０１４９】
図６は、IEDM Technical Digest. 13-15 Dec. 2004, p.587に開示されている、可変状態にあるユニポーラ型抵抗変化素子の特性の一例を示す模式図である。当該論文に示される通り、ＮｉＯ、ＴｉＯ２、ＨｆＯ２、ＺｒＯ２から構成された抵抗変化層を有する抵抗変化素子がユニポーラ特性を示すこと、及び、それらの遷移金属酸化物から構成された抵抗変化層が、製造直後には絶縁体であって、かつフォーミングストレスを与えるプロセスによって導電パスが形成されて可変状態に遷移することが知られている。
【０１５０】
抵抗変化層の材料と電極の組合せ、および抵抗変化材料にドープする不純物の材料等によっては、正電圧側でも負電圧側でも対称的にユニポーラ型で抵抗変化する素子が得られる。図６は、かかる素子の特性を例示する。
【０１５１】
図に示す例では、バイアス電圧の絶対値が０．５Ｖを超えると素子がリセット状態、つまりＨＲレベルへと推移し、バイアス電圧の絶対値１．０Ｖを超えると素子がセット状態、つまりＬＲレベルへと推移する。かかる素子では、同じ極性で電圧の異なる電気的信号を印加することで、２個の抵抗状態の間を可逆的に遷移させることが可能である。しかし、図６のような特性のユニポーラ型抵抗変化素子であれば、＋０．５Ｖ以上＋１Ｖ未満の正極性の電気的信号を印加することで高抵抗化させ、−１Ｖ以下（絶対値が１Ｖ以上）の負極性の電気的信号を印加することで低抵抗化させるように制御すれば、バイポーラ型抵抗変化素子として利用することもできる。本発明では、バイポーラ型もユニポーラ型も、いずれのタイプでも使用可能である。
【０１５２】
抵抗変化素子は、印加する電気的信号の電圧（絶対値）、幅、および回数等の組合せにより、抵抗値が３以上の可変抵抗値範囲の間を可逆的に遷移する多値メモリとして利用されてもよい。例えば、抵抗変化層としてタンタル酸化物を用いた素子は、良好な特性を示し、多値メモリへ応用されうる。
【０１５３】
図７は、抵抗変化素子の抵抗変化特性の一例を示す図である。横軸にパルス（電気的信号）の印加回数、縦軸に電気的信号を印加した後の抵抗値を示している（前述と同様に、抵抗値は読み出し電圧ＶＲを印加したときの電流から算出している）。三角点（▲）で示したものは負極性のパルス（電気的信号）を印加した後の抵抗値を示す。四角点（■）は正極性のパルス（電気的信号）を印加した後の抵抗値を示す。
【０１５４】
図７の素子の構成は、第１電極１２４の材料が窒化タンタル（ＴａＮ）、第２電極１２８の材料が白金（Ｐｔ）、抵抗変化層１２６の材料が積層構造のタンタル酸化物、抵抗変化層１２６の厚さが５０ｎｍ以下、第１電極１２４と抵抗変化層１２６との接触面および第２電極１２８と抵抗変化層１２６との接触面の面積が０．２５μｍ２以下である。抵抗変化層１２６をなす層のうち、第１電極１２４に接する層が酸素濃度の低い層であって、組成をＴａＯｘとすると０＜ｘ＜２．５である。一方、第２電極１２８に接する層が酸素濃度の高い層であって、組成をＴａＯｙとするとｙ≧２．１であり、厚さが５．５ｎｍ程度である。
【０１５５】
図から分かるように、パルス電圧を１３００ｍＶから１５００ｍＶへと増加させていくと、正極性のパルスを印加した後の抵抗値は徐々に増加している。パルス電圧を１５００ｍＶに固定した場合、パルス幅を１００ｎＳｅｃ、１０００ｎＳｅｃ、２０００ｎＳｅｃに変えて行くと、正極性のパルスを印加した後の抵抗値は徐々に増加している。パルス電圧を比較的小さな１２００ｍＶに固定して電圧パルスを複数回重ねて印加すると、パルス印加後の抵抗値は徐々に増加する。かかる特性を利用すると、比較的小さな電圧パルスにより抵抗値を微調整することが可能なこともわかる。すなわち、図７のような特性を有する抵抗変化素子は、抵抗値を３以上の可変抵抗値範囲に制御性よく設定することができる。
【０１５６】
図７の第２閾値で抵抗値を判定するセンスアンプを用いれば、＋１３００ｍＶ以上の正極性のパルスで書き込まれたメモリセル９１は、全て第２閾値よりは抵抗値が大きいと判断され、２値データのうちゼロが出力される（閾値より抵抗値の大きなものはディジタルデータの０と定義した場合）。一方、負極性パルスの印加で書き込まれたメモリセル９１と、＋１２００ｍＶ、１００ｎｓの正極性パルスで書き込まれたメモリセル９１の抵抗値は、第２閾値より低いため、共に２値データのうち１が出力される（閾値より抵抗値の小さなディジタルデータの１と定義した場合）。なお、閾値の値と完全に一致する抵抗値を有するセルは、１に割り当てても良いし、ゼロに割り当ててもよい。
【０１５７】
さらに、図７の第３閾値で抵抗値を判定するセンスアンプを用いれば、＋１２００ｍV以上の正極性のパルスで書き込まれたメモリセル９１は、全て第３閾値よりは抵抗値が大きいと判断され、２値データのうちゼロが出力される。一方、負極性パルスの印加で書き込まれたメモリセル９１の抵抗値のみが、第３閾値より低いため、２値データのうち１が出力される。
【０１５８】
このように２種類のセンスアンプの出力結果を組み合わせることで、図７に示す素子を３値メモリとして使用することができる。
【０１５９】
このような抵抗変化素子（ＲｅＲＡＭ素子）の抵抗変化は、第２電極１２８と第１電極１２４とを電気的に接続する導電性パスが抵抗変化層１２６内に発生することによって発生することを断面解析によって観察した。このとき導電性パスは直径３０〜１０nm以下であり、最先端の微細な半導体プロセスで作製される配線幅より更に小さいことを見出した。すなわち上記で説明した抵抗変化素子の特性は、リソグラフィーによる加工の限界とされる超微細半導体プロセスで製造されても同様な安定した抵抗変化の特性を維持できる。
【０１６０】
また、抵抗変化素子（ＲｅＲＡＭ素子）の抵抗変化層を形成するプロセスには数百℃を超えるような高温処理が必要ない。このため、加熱プロセスによってＣ−ＭＯＳトランジスタへの特性を劣化させることがない。すなわち抵抗変化素子は、フラッシュメモリなどのフローティングゲート型トランジスタを用いるメモリ素子に比べ半導体プロセスとの親和性が非常に優れ、製造プロセスの微細化が進んでも抵抗変化の信頼性が低下することがない特徴を有している。そのため、例えば、コントローラ等のロジック回路と抵抗変化素子とが同一チップ上に形成される場合であっても、ロジック回路の特性への影響を抑えつつ抵抗変化素子を形成することができる。また、ロジック回路とプロセスを共通化することにより、製造コストを低減することができる。
【０１６１】
［動作モードおよびコマンド］
本参考形態の不揮発性記憶装置１００は、４以上の動作モードを有してもよい。この場合、不揮発性記憶装置１００は、外部から４以上のコマンドから選択される１のコマンドを受領し、該受領したコマンドに基づいて４以上の動作モードを選択的に実行してもよい。
【０１６２】
不揮発性記憶装置１００は、各メモリセル９１が初期状態にあるか可変状態にあるかの違いを利用したデータの書き込みおよび読み出し（第１モード）と、各メモリセル９１の抵抗値が初期抵抗値範囲にあるか否かの違いを利用せず、各メモリセル９１の抵抗値が少なくとも一つの可変抵抗値範囲にあるか否かの違いを利用したデータの書き込みおよび読み出し（第２モード）とを択一的に実行してもよい。
【０１６３】
例えば、図３に示す例において、初期状態にあるメモリセル９１を可変状態へと変化させるための電気的ストレスをフォーミングストレスとし、メモリセル９１の抵抗値を第１抵抗値範囲から第２抵抗値範囲へと変化させるための電気的信号を低抵抗化パルスとし、メモリセル９１の抵抗値を第２抵抗値範囲から第１抵抗値範囲へと変化させるための電気的信号を高抵抗化パルスとする。
【０１６４】
このとき、入力データ“１”に対して選択されたメモリセル９１にフォーミングストレスを印加し、入力データ“０”に対して選択されたメモリセル９１に電気的ストレスを印加しないように書き込み回路９２を動作させるモードを特殊書き込みモード（第１書き込みモード）とする。特殊書き込みモードが実行されるように不揮発性記憶装置１００の外部から入力するコマンドを特殊書き込みコマンド（第１書き込みコマンド）とする。
【０１６５】
第１閾値を用いた判定によりデータを読み出すように読み出し回路９４を動作させるモードを特殊読み出しモード（第１読み出しモード）とする。特殊読み出しモードが実行されるように不揮発性記憶装置１００の外部から入力するコマンドを特殊読み出しコマンド（第１読み出しコマンド）とする。
【０１６６】
入力データ“１”に対して選択されたメモリセル９１に低抵抗化パルス（第２電気的信号）を印加し、入力データ“０”に対して選択されたメモリセル９１に高抵抗化パルス（第１電気的信号）を印加するように書き込み回路９２を動作させるモードを通常書き込みモード（第２書き込みモード）とする。通常書き込みモードが実行されるように不揮発性記憶装置１００の外部から入力するコマンドを通常書き込みコマンド（第２書き込みコマンド）とする。
【０１６７】
第２閾値を用いた判定によりデータを読み出すように読み出し回路９４を動作させるモードを通常読み出しモード（第２読み出しモード）とする。通常読み出しモードが実行されるように不揮発性記憶装置１００の外部から入力するコマンドを通常読み出しコマンド（第２読み出しコマンド）とする。
【０１６８】
［データへのアクセス制限の具体例］
かかる構成において、例えば、通常書き込みコマンドおよび通常読み出しコマンドは、不揮発性記憶装置１００のマニュアルなどで広く公開しておく一方で、特殊書き込みコマンドおよび特殊読み出しコマンドは不揮発性記憶装置１００の製造者のみが保有する、すなわち秘匿することができる。
【０１６９】
この場合、不揮発性記憶装置１００の製造者は、特殊書き込みコマンドを用いて、メモリセルアレイ９０の特定領域にパスワードを書き込んでおく。特定のユーザが不揮発性記憶装置１００の外部からパスワードを入力すると、例えば、不揮発性記憶装置１００の制御装置（図示せず）は、受け取ったパスワードと、特殊読み出しモードで特定領域から読み出したパスワードとを比較し、一致した場合にのみ通常書き込みモードでの書き込みおよび通常読み出しモードでの読み出しを許可する。
【０１７０】
かかる構成を用いれば、例えば、不揮発性記憶装置１００に有料コンテンツデータを通常書き込みモードで記録しておき、装置のＩＤ情報およびコンテンツ毎のシリアル情報等を特殊書き込みモードで記録しておくことができる。これにより、装置のＩＤ情報およびコンテンツ毎のシリアル情報等を予め知らされた特別な利用者のみが、不揮発性記憶装置に記録された有料コンテンツにアクセスできるような制限をかけることが可能となる。また、例えば、特殊書き込みモードの方法を知らない権限のない第三者が、不揮発性記憶装置１００を書き換えて、パスワード未設定状態を作り出すことが困難になる。
【０１７１】
不揮発性記憶装置１００を樹脂等により封止すれば、不揮発性記憶装置１００内部の配線にプローブをあてようとしても配線等が破損されてしまうため、電気抵抗を測定することで分析することも不可能である。利用者がＩＤ情報と特殊読み出しコマンドに相当するコマンドを漏洩しない限り内部データを不正にアクセスされることがない。
【０１７２】
従来技術で用いられているフラッシュメモリは、微細化が進むに従って、多値メモリとして用いた場合のデータ記録の信頼性が低下する。特に、暗号化や認証に用いるパラメータ（例えば暗号鍵データやシリアル番号）のデータビット列に誤りが発生すると、そのパラメータを用いて暗号化したデータが一切読み出すことができなくなり、場合によっては不揮発性記憶装置本体にアクセスさえできないという非常に大きな被害が発生する。このため、暗号化や認証に用いるパラメータのデータは極めて信頼性の高い記録が求められる。
【０１７３】
これに対して、抵抗変化素子を用いたメモリセルを備える不揮発性記憶装置１００は、微細化が進行した場合であっても、高い信頼性を保持することができる。特に、抵抗変化層中にフィラメントを形成して抵抗変化するタイプの抵抗変化素子の場合、フィラメントが形成される局所領域が素子サイズに比べて充分小さいため、素子サイズの微細化が進んでも抵抗変化特性への悪影響を低減できる。そのため、例えば暗号化または認証に用いるパラメータのデータ等を高い信頼性で記憶することができる。
【０１７４】
また、暗号化および認証のいずれか少なくとも一方を実行するコントローラ回路と不揮発性記憶装置（メモリ本体部）とが同一チップに形成される混載チップ構成としてもよい。これにより、暗号化および認証のいずれか少なくとも一方を実行するコントローラ回路と、不揮発性記憶装置との間で、暗号化パラメータ等のデータを送受信する場合に、インターフェース上で信号波形を盗み読みされることにより暗号化パラメータ等が漏洩するリスクを低減できる。また、抵抗変化素子の特性上、物理解析により抵抗状態を判別することはほぼ不可能であり、物理的に暗号化パラメータ等が盗まれることはない。
【０１７５】
従来技術で用いられているフラッシュメモリをコントローラ回路と混載する場合、フラッシュメモリの製造プロセスはロジック回路に用いるＣ−ＭＯＳプロセスとは別な半導体プロセス工程が必要で、プロセスステップ数の増加に伴う製造コスト高を招いてしまう。さらにフラッシュメモリの製造プロセスでは高温熱処理が必要であるため、ロジック回路で用いるＣ−ＭＯＳプロセスの半導体特性に影響を与えトランジスタ特性の性能維持に多くの制約を与えてしまう。
【０１７６】
これに対して、抵抗変化素子を用いたメモリセルからなるメモリアレイを備える不揮発性記憶装置１００は、製造工程に高温熱処理を必要とせず、Ｃ−ＭＯＳプロセスの半導体特性に影響を与えない。そのため、コントローラ回路と不揮発性記憶装置（メモリ本体部）とが同一チップに形成される場合には、コントローラ回路等のロジック回路の特性を損なうことなく、あるいは、製造プロセスのコスト高を招くことなく、暗号化パラメータの秘匿性を高めることができる。
【０１７７】
上記の例では２個の特殊動作モードおよび特殊コマンドと２個の通常動作モードおよび通常コマンドとが設定されている場合を説明したが、動作モードおよびコマンドの数と組合せはこれに限定されるものでない。図７のように可変状態のメモリセルの抵抗値に７段階のレベルを設定できる場合には、初期状態を含めた特殊書き込みモードでは８段階のレベルを利用した３ビットデータの書き込みが行われ、初期状態を含めない通常書き込みモードでは４段階のレベルを利用した２ビットデータの書き込みが行われてもよい。書き込みに用いる抵抗値レベルの組合せは、利用システムに応じて適宜に選択されうる。
【０１７８】
［フォーミングストレス印加による可変状態への変化のランダム性］
初期状態にある素子の抵抗値を初期抵抗値範囲から所定の可変抵抗値範囲へと変化せしめる行為をフォーミング工程(forming process)またはフォーミングライト（forming write）と呼ぶ。前述したように、通常書き込みモードにおいて“０”を記録するために高抵抗状態へ変化させるための電気的信号の電圧をＶＨ、パルス幅をＴＰＨとし、通常書き込みモードにおいて“１”を記録するために低抵抗状態へ変化させるための電気的信号の電圧をＶＬ、パルス幅ＴＰＬとする。フォーミングライトに用いられる電気的ストレスの電圧をＶＦ、パルス幅をＴＰＦとする。このとき、｜ＶＦ｜＞｜ＶＨ｜および｜ＶＦ｜＞｜ＶＬ｜を条件１とし、ＴＰＦ＞ＴＰＨおよびＴＰＦ＞ＴＰＬを条件２とすれば、条件１および条件２の少なくともいずれか一方を充足してもよい。つまり、通常書き込みモードでの書き込み条件ではフォーミング工程が実行できないという特徴を有していてもよい。
【０１７９】
パルス幅について見ると、ＴＰＦ＞ＴＰＨおよびＴＰＦ＞ＴＰＬとしても、１回の印加では所定のフォーミング工程が完了しない場合には、フォーミング工程を完了するために複数回の電気的ストレスを印加してもよい。このとき、電気的ストレスの印加を繰り返してもよい。電気的ストレスの印加を繰り返す過程において、所定の増加量にて印加電圧を徐々に増加させてもよい。電気的ストレスの印加を繰り返す過程において、所定の増加量または増幅率でパルス幅を徐々に増加させてもよい。
【０１８０】
ここで、例えばメモリセルアレイ内の全てのメモリセルが初期状態にある場合に、全メモリセルについてフォーミングを完了するためには、各メモリセルについて、規格化した累積印加時間にして１００００単位の電気的ストレスを印加する必要があったとする。このとき、１５０単位の電気的ストレスを印加した段階で電気的ストレスの印加を中止すると、当然ながら全てのメモリセルが可変状態に変化することはない。しかしながら、実験の結果、この場合においても、初期状態から可変状態へと変化するメモリセルがメモリセルアレイ内にランダムに発生しうることが判明した。
【０１８１】
すなわち、メモリセルアレイは、初期状態から可変状態に変化させるような電気的ストレスが印加されたときに、初期状態から可変状態に変化するメモリセルと、初期状態のまま維持されるメモリセルとがランダムに発生する特性を有しうる。このとき、特殊書き込みモードで書き込まれるデータ（第１種データ）を、初期状態から可変状態へと変化するメモリセルがランダムに発生することにより生成されるデータとすることができる。
【０１８２】
図８は、規格化累積印加時間と、可変状態へ変化したメモリセルの標準正規分布の偏差との関係をプロットした図である。素子の構成は、第１電極１２４の材料が窒化タンタル（ＴａＮ）、第２電極１２８の材料がイリジウム（Ｉｒ）、抵抗変化層１２６の材料が積層構造のタンタル酸化物、抵抗変化層１２６の厚さが５０ｎｍ、第１電極１２４と抵抗変化層１２６との接触面および第２電極１２８と抵抗変化層１２６との接触面の面積が０．２５μｍ２以下である。抵抗変化層１２６をなす層のうち、第１電極１２４に接する層が酸素濃度の低い層であって、組成をＴａＯｘとすると０＜ｘ＜２．５である。一方、第２電極１２８に接する層が酸素濃度の高い層であって、組成をＴａＯｙとするとｙ≧２．１であり、厚さが５．５ｎｍ程度である。フォーミングストレスは、電圧が３．５Ｖ、最短のパルス幅が１０μＳｅｃである。メモリセルの個数は２５６キロビットである。なお、図８の累積印加時間は最短パルス幅をもとに所定の係数をもつ規格化時間である。
【０１８３】
図に示すように、フォーミングが完了した累積ビット数の正規分布は累積印加時間に対してほぼ直線に分布している。このことから、初期状態から可変状態への変化が、極めてランダムに発生する現象であることが示される。このような、可変状態への変化のランダム性を用いることで、不揮発性記憶装置ごとに、ユニークかつランダムなＩＤ情報を作成することができる。
【０１８４】
図８において規格化累積印加時間が１５０に達した時点で特殊書き込みモードでの電気的ストレス印加を停止すると、可変状態に変化したメモリセルと、可変状態に変化しなかったメモリセルとが、ほぼ半数ずつとなる。可変状態に変化するメモリセルのロケーションはランダムである。かかる特殊書き込みモードでは、メモリセルアレイにおいて一部のメモリセルがランダムに選択されることで、データがランダムデータをなすように生成されてメモリセルアレイに記録されることになる。かかる特殊書き込みモードで書き込まれるデータ（第１種データ）は、装置ごとにランダムかつ固有なデータとなる。
【０１８５】
可変状態に変化したメモリセルと、可変状態に変化しなかったメモリセルとが素子毎にランダムかつ固有に発生する理由としては、抵抗変化素子のプロセスばらつきや形状ばらつきの他に、例えば、フォーミングが完了するメモリセルがランダムに発生することが考えられる。上述のとおり、金属酸化物中の欠陥サイトはメモリセル毎にランダムに配置され、フォーミングによってこれらの欠陥サイト間を繋いでフィラメントが形成される。そのため、仮に初期状態にある複数のメモリセルに一定の電気的ストレスを印加した場合であっても、フォーミングが完了するメモリセルは、統計的に（例えば標準正規分布様に）ばらついて発生すると考えられる。そのため、仮に特殊書き込みモードで複数のメモリセルに対して一様なストレスを印加する場合であっても、確率的にフィラメントが形成される素子と形成されない素子とが発生するように、電気的ストレスを調整することができると考えられる。なお、酸素欠陥サイト等が繋がることによってフィラメントパスが形成される材料であれば、同様のメカニズムによって説明できると推察される。
【０１８６】
一般にランダムなＩＤ情報を発生させるためには、装置内において所定の関数を用いて生成されるランダム値を用いる。しかしながら、関数および入力される初期値が同じであれば、演算回数に応じて同じ値が出力されてしまう。関数式と初期値が漏洩すれば、装置内で生成されるランダム値が予測され、例えば、それを元に生成される暗号化キーなどが推測されて、セキュリティー事故に発展する虞がある。
【０１８７】
ランダム値の生成を、抵抗変化素子に固有のランダムな現象である初期状態から可変状態への変化を用いて行えば、予測不可能な態様でランダム値を生成する方式が確立できる。特殊書き込みモードで書き込まれたランダムデータを、上述したランダム値を得るための関数の初期値に用いると、更にランダム性が増し有効である。
【０１８８】
例えば、上述したデータへのアクセス制限の具体例において、ＩＤ情報およびシリアル情報を、かかるランダムデータとして特殊書き込みモードで書き込むことで、予測不可能な態様でＩＤ情報およびシリアル情報を設定し、記録することができる。特殊書き込みモードで書き込まれたＩＤ情報およびシリアル情報は、特殊読み出しモードで読み出し、特定のユーザに通知することで、該特定のユーザのみがコンテンツを利用するように、利用制限を実施できる。
【０１８９】
［第１参考例］
図９は、第１参考形態の第１参考例にかかる不揮発性記憶装置の概略構成の一例を示すブロック図である。なお、図９はあくまで一参考例であり、第１参考形態の不揮発性記憶装置の具体的な構成が図９に示す構成に限定されるものでないことは言うまでもない。
【０１９０】
図９に示すように、第１参考例の不揮発性記憶装置０２０は、半導体基板上に、メモリ本体部００１を備えている。メモリ本体部００１は、メモリセルアレイ０２１と、行選択回路／ドライバ００３と、列選択回路００４と、を具備している。
【０１９１】
メモリセルアレイ０２１は、半導体基板の上に形成された、第１平面内において第１方向に互いに平行に延びるように形成された複数の第１配線（図９の例では、ＷＬ０，ＷＬ１，ＷＬ２，…。以下、説明の便宜上ワード線ＷＬ０，ＷＬ１，ＷＬ２，…という）および第１平面と平行な第２平面内において第２方向に互いに平行に延びるようにかつ第１配線と立体交差するように形成された複数の第２配線（図９の例では、ＢＬ０，ＢＬ１，ＢＬ２，…。以下、説明の便宜上ビット線ＢＬ０，ＢＬ１，ＢＬ２，…という）と、これらのワード線ＷＬ０，ＷＬ１，ＷＬ２，…およびビット線ＢＬ０，ＢＬ１，ＢＬ２，…の立体交差点のそれぞれに設けられたメモリセルＭ２１１，Ｍ２１２，Ｍ２１３，Ｍ２２１，Ｍ２２２，Ｍ２２３，Ｍ２３１，Ｍ２３２，Ｍ２３３（以下、「メモリセルＭ２１１，Ｍ２１２，…」と表す）とを備える。
【０１９２】
それぞれのメモリセルＭ２１１，Ｍ２１２，…は抵抗変化素子１２０（図２参照）を備え、ワード線ＷＬ０，ＷＬ１，ＷＬ２，…はそれぞれのメモリセルＭ２１１，Ｍ２１２，…に含まれるトランジスタのＴ１１，Ｔ１２，Ｔ１３，Ｔ２１，Ｔ２２，Ｔ２３，Ｔ３１，Ｔ３２，Ｔ３３，…（以下、「トランジスタＴ１１，Ｔ１２，…」と表す）の制御端子（ゲートともいう）に接続され、ビット線ＢＬ０，ＢＬ１，ＢＬ２，…は、それぞれのメモリセルＭ２１１，Ｍ２１２，…が備える抵抗変化素子１２０の一端に接続されている。それぞれのメモリセルＭ２１１，Ｍ２１２，…が備える抵抗変化素子１２０の他端は、それぞれのメモリセルＭ２１１，Ｍ２１２，…が備えるトランジスタＴ１１，Ｔ１２，…の第１主端子に接続されている。
【０１９３】
抵抗変化素子１２０はメモリセル内で不揮発性記憶素子として動作する。図９に示す例は、各メモリセルが、１個のトランジスタと１個の抵抗変化素子から構成されている、いわゆる１Ｔ１Ｒ型の記憶装置である。
【０１９４】
また、メモリアレイは、ワード線ＷＬ０，ＷＬ１，ＷＬ２，…に平行して配列されている複数のプレート線ＰＬ０，ＰＬ１，ＰＬ２，…を備えている。プレート線ＰＬ０，ＰＬ１，ＰＬ２，…は、それぞれのメモリセルＭ２１１，Ｍ２１２，…が備えるトランジスタＴ１１，Ｔ１２，…の第２主端子に接続されている。トランジスタＴ１１，Ｔ１２，…において、第１主端子と第２主端子とのいずれがソースとなりいずれがドレインとなるかは、特に限定されず、具体的な動作に応じて適宜に設定されうる。具体的には、トランジスタを流れる電流の方向、主要キャリアの電荷の正負等によって決定される。
【０１９５】
抵抗変化素子１２０については、第１参考形態において上述したものと同様の構成とすることができるので、詳細な説明を省略する。
【０１９６】
図９に示す例では、メモリアレイの選択トランジスタとしてｎチャネル型ＭＯＳトランジスタが用いられている。トランジスタＴ１１，Ｔ１２，Ｔ１３，…の第１主端子は抵抗変化素子を介してビット線ＢＬ０に、トランジスタＴ２１，Ｔ２２，Ｔ２３，…の第１主端子は抵抗変化素子を介してビット線ＢＬ１に、トランジスタＴ３１，Ｔ３２，Ｔ３３，…の第１主端子は抵抗変化素子を介してビット線ＢＬ２に、それぞれ接続されている。
【０１９７】
トランジスタＴ１１，Ｔ２１，Ｔ３１，…のゲートはワード線ＷＬ０に、トランジスタＴ１２，Ｔ２２，Ｔ３２，…のゲートはワード線ＷＬ１に、トランジスタＴ１３，Ｔ２３，Ｔ３３，…のゲートはワード線ＷＬ２に、それぞれ接続されている。
【０１９８】
トランジスタＴ１１，Ｔ２１，Ｔ３１，…の第２主端子はプレート線ＰＬ０に、トランジスタＴ１２，Ｔ２２，Ｔ３２，…の第２主端子はプレート線ＰＬ１に、トランジスタＴ１３，Ｔ２３，Ｔ３３，…の第２主端子はプレート線ＰＬ２に、それぞれ接続されている。
【０１９９】
図９では各行においてプレート線が一本につながったように図示されているが、プレート線が複数のブロックに分かれていてもよい。
【０２００】
不揮発性記憶装置０２０は、さらに、特殊／通常書き込み回路０１１と、特殊／通常センスアンプ０１２と、切替え回路０３７と、電源制御回路００８と、論理制御回路０１０と、コマンドレジスタ０３３と、ステータスレジスタ０３４と、特殊コマンドレジスタ０３５と、入出力制御回路００７と、アドレスレジスタ００９と、Ｃａｓｈｅレジスタ０３１と、特殊データレジスタ０３２と、データレジスタ０３０と、を備えている。
【０２０１】
特殊／通常書き込み回路０１１（以降、略して書き込み回路ともいう）は、行選択回路／ドライバ００３および列選択回路００４によって選択された１個以上のメモリセルに情報の書き込みを行う。
【０２０２】
特殊／通常センスアンプ０１２（以降、略してセンスアンプともいう）は、選択メモリセルの抵抗値を検出し、少なくとも２値以上の値（例えば、データ“１”および“０”）を判定する。
【０２０３】
切替え回路０３７は、列選択回路が選択したメモリセルを書き込み回路０１１に接続し書き込み動作を行うか、センスアンプ０１２に接続し読み出し動作を行うかを切替えるものである。
【０２０４】
電源制御回路００８は、メモリセルにデータを書き込むために必要な複数の電源を生成する。
【０２０５】
論理制御回路０１０は、外部から入力された制御信号に応じて入出力制御回路００７に制御コマンド、アドレス情報、及び入力データを取得させる。また、入出力制御回路００７によって各コマンドレジスタ（特殊コマンドレジスタ０３５およびコマンドレジスタ０３３）に記憶された制御コマンドに基づいて、不揮発性記憶装置０２０の動作を制御する。
【０２０６】
入出力制御回路００７は、論理制御回路０１０から制御信号に基づく指示に従って、入出力データバスを通じて入力データを取得し、入力データから制御コマンドおよびアドレス情報を抽出して各コマンドレジスタおよびアドレスレジスタに保持する。また、各コマンドレジスタに記憶された制御コマンドに基づいて、ステータスレジスタ０３４およびCasheレジスタ０３１等に保持されたデータ等を外部に出力する。
【０２０７】
制御コマンドは、典型的には、論理制御回路０１０に制御信号が入力され、当該制御信号に基づいて入出力制御回路００７が取得した入力データから抽出される。具体的には例えば、入力された制御信号に基づいて論理制御回路０１０がコマンド入力タイミングを生成し、このコマンド入力タイミングに従って入出力制御回路００７に入力されたデータ（コマンドデータパターン）から、制御コマンドと対応するアドレス情報とが生成される。制御コマンドは、通常書き込みコマンド、特殊書き込みコマンド、通常読み出しコマンド、または特殊読み出しコマンド等を指す。特殊書き込みコマンドは、通常書き込みコマンドと異なるコマンドデータパターンである。特殊読み出しコマンドは、通常読み出しコマンドと異なるコマンドデータパターンである。特殊書き込みコマンドおよび特殊読み出しコマンドは、一般の利用者には公開されないコマンドであってもよい。
【０２０８】
コマンドレジスタ０３３は、制御コマンドを一時的に記憶する。例えば、通常書き込みコマンドまたは通常読み出しコマンドが記憶される。
【０２０９】
ステータスレジスタ０３４は、制御信号の指示を論理制御回路０１０が受け取り、メモリ装置の内部状態を装置外に知らせるためのステータス情報を一時記憶する。
【０２１０】
特殊コマンドレジスタ０３５は、特殊書き込みコマンドまたは特殊読み出しコマンドを一時的に記憶する。
【０２１１】
アドレスレジスタ００９は、アドレスレジスタ００９に保持されたアドレス信号に基づいて行アドレス信号を行選択回路／ドライバ００３へ出力するとともに、列アドレス信号を列選択回路００４へ出力する。ここで、アドレス信号は、複数のメモリセルＭ２１１，Ｍ２１２，…のうちの選択される特定のメモリセルのアドレスを示す信号である。
【０２１２】
行アドレス信号は、アドレス信号に示されたアドレスのうちの行のアドレスを示す信号であり、列アドレス信号は、アドレス信号に示されたアドレスのうちの列のアドレスを示す信号である。図では列アドレスに対応する１つのビットラインが列選択回路００４により選択され、行アドレスに対応する１つのワードラインが行選択回路により選択される。以下では、図示したメモリセル群から、単一のメモリセルが選択される場合を例示して説明するが、これに限定されない。例えばＷＬ０が選択されたときにＢＬ０とＢＬ１とが選択されれば、２個のセルが同時に選択され、ＢＬ０とＢＬ１とに並列に同時に書き込みまたは読み出しするように書き込み回路０１１とセンスアンプ０１２を構成すれば、複数セルへの同時アクセスが可能である。このような変形および類似する変形は、当業者であれば容易に行うことができる。
【０２１３】
Ｃａｓｈｅレジスタ０３１は、制御信号と入力データから取得されてコマンドレジスタ０３３に一時記憶された制御コマンドコードが“通常書き込みモード”を示すとき、または制御信号と入力データから取得されて特殊コマンドレジスタ０３５に一時記憶された制御コマンドコードが“特殊書き込みモード”を示すとき、入出力制御回路００７の制御にしたがって、制御信号と入力データを元に書き込む所定のデータをバッファする。
【０２１４】
特殊データレジスタ０３２は、制御信号と入力データから得たコマンドレジスタ０３３に一時記憶された制御コマンドコードが“特殊読み出しモード”を示すときは、各読み出しサイクル毎に選択されたメモリセルから、特殊モードに設定されたセンスアンプ０１２が読み出したデータを、データレジスタ０３０を介して受領し、順次一時記憶する。
【０２１５】
データレジスタ０３０は、Ｃａｓｈｅレジスタ０３１から書き込みサイクル毎にデータを取り出し、一時的に記憶する。
【０２１６】
制御コマンドは、制御信号と入力データから取得されてコマンドレジスタ０３３に一時記憶される。該記憶された制御コマンドが“通常読み出しモード”を指示するときは、通常モードに設定されたセンスアンプ０１２が、各読み出しサイクル毎に選択されたメモリセルからデータを読み出し、該読み出されたデータはデータレジスタ０３０に順次一時記憶される。データレジスタ０３０は、該一時記憶されたデータをＣａｓｈｅレジスタ０３１に出力する。Ｃａｓｈｅレジスタ０３１は、所定の量の読み出しデータをバッファし、入出力制御回路００７の制御にしたがって装置へと読み出しデータを出力する。
【０２１７】
図９において、電源制御回路００８と、論理制御回路０１０と入出力制御回路００７と、コマンドレジスタ０３３と、ステータスレジスタ０３４と、特殊コマンドレジスタ０３５とをあわせたものを、コントローラ０１３とする。コントローラ０１３は、メモリ本体部００１と同一チップ上に形成されていてもよい。これにより、コントローラ０１３とメモリ本体部００１との間の情報の送受信を盗み読みされるリスクを低減できる。
【０２１８】
論理制御回路０１０は、データの書き込みサイクルにおいては、切替え回路０３７を書き込み回路０１１に接続するように制御する。さらに入出力制御回路００７は、入力された入力データをＣａｓｈｅレジスタ０３１に蓄え、論理制御回路０１０の指示に基づき、書き込みサイクルごとに必要なデータのみをＣａｓｈｅレジスタ０３１から取り出し、データレジスタ０３０へ順次に送り出す。書き込み回路０１１は、論理制御回路０１０からの指示により、各書き込みサイクルにおいて、データレジスタ０３０にあるデータの情報にしたがって、選択メモリセルに所定の書き込みを実行する。また、情報の読み出しサイクルにおいて、論理制御回路０１０は、切替え回路０３７をセンスアンプ０１２に接続するように制御する。センスアンプ０１２は、論理制御回路０１０からの指示により、各読み出しサイクルにおいて、選択メモリセルから所定の条件で抵抗値を読み出し、もとのデータの情報に復元し、データレジスタ０３０に送る。Ｃａｓｈｅレジスタ０３１は、論理制御回路０１０からの指示により、各読み出しサイクルで出力されてくるデータを蓄え、入出力制御回路００７の制御にもとづき不揮発性記憶装置０２０の外部に順次出力する。
【０２１９】
通常書き込みコマンドを受け付けた場合、入出力制御回路００７は、コマンドレジスタ０３３に通常書き込みコマンドを保持せしめる。入出力制御回路００７は、同様に入出力データバスを通して入力されたデータから抽出した書き込みアドレスをアドレスレジスタ００９に保持させる。次いで、論理制御回路０１０からの指示により、通常書き込み回路０１１が、各レジスタの設定を元に、電気的信号を各メモリセルに適宜印加することで、所定のデータをメモリアレイに書き込む。
【０２２０】
通常読み出しコマンドを受け付けた場合、入出力制御回路００７は、コマンドレジスタ０３３に通常読み出しコマンドを保持せしめる。入出力制御回路００７は、同様に入出力データバスから抽出した読み出しアドレスをアドレスレジスタ００９に保持させる。また、論理制御回路０１０からの指示により、通常モードに設定されたセンスアンプ０１２が各レジスタの設定を元にメモリアレイから所定のデータを読み出し、データレジスタ０３０を介して、Casheレジスタ０３１に蓄える。必要なデータ量がCasheレジスタ０３１に蓄えられると、入出力制御回路００７が、Casheレジスタ０３１に蓄えられたデータを、順次外部へと出力する。なお、ここではCasheデータレジスタ０３０に一度データを蓄積した後で外部に出力される例について説明したが、例えば、Casheデータレジスタ０３０を備えない構成とすることもできる。
【０２２１】
不揮発性記憶装置０２０の内部動作状態を確認するためのコマンドを受け付けた場合、論理制御回路０１０は、内部状態を調査し、受け付けた内容に応じた内部動作状態を示すコードをステータスレジスタ０３４に保持させる。次いで、入出力制御回路００７が、ステータスレジスタ０３４に保持されたステータスコードを外部へと出力する。
【０２２２】
上述したとおり、特殊書き込みコマンドのコマンドデータパターンは、通常の書き込みコマンドのコマンドデータパターンと、異なるパターンとして設定される。同様に、特殊読み出しコマンドのコマンドデータパターンは、通常の読出しコマンドのコマンドパターンと、異なるパターンとして設定される。このとき特殊コマンドによるアクセスでは、通常コマンドでは実行できないような、特定のアドレス領域、書き込み条件、および読出し条件等でのアクセスを許可するものとしてもよい。このようにコマンドパターンを異ならせることで、例えば通常コマンドのみ知らされたユーザにとって、特殊コマンドによって記憶されたデータはアクセスできないような制限を与えることができる。
【０２２３】
特殊書き込みコマンドを受け付けた場合、入出力制御回路００７は、特殊コマンドレジスタ０３５に特殊書き込みコマンドを保持せしめる。入出力制御回路００７は、同様に入出力データバスを通して入力されたデータから抽出した、通常ではアクセスできない書き込みアドレスを、アドレスレジスタ００９に保持させる。次いで、論理制御回路０１０からの指示により、特殊書き込み回路０１１が、各レジスタの設定を元に、フォーミングストレスを各メモリセルに適宜印加することで、所定のデータをメモリアレイに書き込む。
【０２２４】
特殊読み出しコマンドを受け付けた場合、入出力制御回路００７は、特殊コマンドレジスタ０３５に特殊読み出しコマンドを保持せしめる。入出力制御回路００７は、同様に入出力データバスを通して入力されたデータから抽出した、通常ではアクセスできない読出しアドレスを、アドレスレジスタ００９に保持させる。次いで、論理制御回路０１０からの指示により、特殊モードに設定されたセンスアンプ０１２が、各レジスタの設定を元に、メモリアレイから所定のデータを読み出し、データレジスタ０３０を介して、Casheレジスタ０３１に蓄える。必要なデータ量がCasheレジスタ０３１に蓄えられると、入出力制御回路００７が、Casheレジスタ０３１に蓄えられたデータを、順次外部へと出力する。
【０２２５】
図１０は、第１参考形態の第１参考例にかかる不揮発性記憶装置の書き込みサイクルと読み出しサイクルの一例を示すタイミングチャートである。以下、図１０を参照しつつ、書き込みサイクルと読み出しサイクルにおける、１個のメモリセルに対する信号制御の一例について示す。
【０２２６】
以下、信号線の制御がより複雑となるバイポーラ型抵抗変化素子を用いた場合を例示する。本例示を元にすればユニポーラ型抵抗変化素子を用いた場合でも容易に設計できる。具体的な制御が以下の例示に限定されないことは言うまでもない。
【０２２７】
なお、ここでは、抵抗変化層がＨＲ状態の場合が情報“０”に、ＬＲ状態の場合が情報“１”にそれぞれ割り当てられているものとする。また、説明の便宜上、メモリセルＭ２１１およびＭ２２２について情報の書き込みおよび読み出しをする場合について示す。
【０２２８】
図１０において、ＶＨは、抵抗変化素子の抵抗値をＨＲレベルへ変化させるために必要なパルス電圧（メモリセル両端の電圧）を示している。ＶＬは抵抗変化素子の抵抗値をＬＲレベルへ変化させるために必要なパルス電圧（メモリセル両端の電圧）を示している。ＶＨおよびＶＬは、電源制御回路００８が外部入力電源をもとに生成している。図１０において、ＶＨおよびＶＬはいずれも正の値とする。また、バイポーラ型抵抗変化素子において高抵抗化電圧と低抵抗化電圧との絶対値が概ね等しく、メモリセル両端の電圧は同じ電圧振幅にできる場合、すなわちＶＨ＝ＶＬである場合を例として説明する。
【０２２９】
さらに読み出し時には、書換え電圧（ＶＨおよびＶＬ）よりも絶対値の低い読み出し電圧であるＶＲがメモリセル両端に印加される。また、プレート線へは書き込み回路０１１から、印加方向に応じてＶＨ、ＶＬ、ＧＮＤのいずれかの電圧が供給される。書き込みや読み出しのモードの切り替わりの必要に応じて各ビット線、プレート線の電圧はＶＨ、ＶＬ、ＶＲのいずれかにチャージされ、または、ＧＮＤにディスチャージされる。
【０２３０】
図１０に示すように、メモリセルＭ２１１に対する書き込みサイクルにおいて、書き込み回路０１１によりビット線ＢＬ０とプレート線ＰＬ０の電圧はあらかじめＧＮＤレベルに設定される。そしてワード線ＷＬ０には、ＶＤＤが印加され、Ｍ２１１のトランジスタＴ１１は導通状態になる。パルス幅がＴＰＨであり電圧がＶＨである電気的パルスが、ビット線ＢＬ０に印加される。これにより、メモリセルＭ２１１に情報“０”を書き込む場合の高抵抗化電圧（ＶＨ）がパルス幅ＴＰＨだけ印加され、その結果メモリセルＭ２１１の抵抗変化素子１２０が高抵抗化（ＨＲ化）する。かかる動作により、メモリセルＭ２１１に情報“０”が書き込まれたことになる。このときの印加状態の模式図は印加状態Ａとして図１０にしめしてあり、第２電極層（第２電極１２８）から第１電極層（第１電極１２４）にむけて電流が流れていることがわかる。
【０２３１】
図１０に示すように、メモリセルＭ２２２に対する書き込みサイクルにおいて、書き込み回路０１１により、予めサイクル当初に全てのワード線が０Ｖとされ、非選択となるビット線およびプレート線も含め全てのビット線およびプレート線がＶＬ（＝ＶＨ）にチャージされる。その後に、ワード線ＷＬ１にはＶＤＤの電圧が印加され、トランジスタＴ２２がＯＮ状態となる。そして選択されるビット線はＶＬ→０Ｖ→ＶＬと変化するパルス幅ＴＰＬの電気的パルスが印加される。これにより、メモリセルＭ２２２に情報“１”を書き込む場合の低抵抗化電圧（−ＶＬ）がパルス幅ＴＰＬだけ印加され、その結果メモリセルＭ２２２の抵抗変化素子１２０が低抵抗化（ＬＲ化）する。かかる動作により、メモリセルＭ２２２に情報“１”が書き込まれたことになる。サイクル終了時に、ワード線がＶＤＤから０Ｖにディスチャージされ、選択トランジスタＴ２２がＯＦＦ状態になった後には、ＶＬにチャージされていた全てのビット線およびプレート線は０Ｖにディスチャージされる。このサイクルにおける印加状態の模式図は印加状態Ｂとして図１０にしめしてあり、第１電極層（第１電極１２４）から第２電極層（第２電極１２８）にむけて電流が流れていることがわかる。
【０２３２】
図１０に示すように、メモリセルＭ２１１に対する読み出しサイクルにおいて、トランジスタＴ１１をＯＮ状態にするためにＶＤＤがワード線ＷＬ０に印加され、列選択回路によってメモリセルＭ２１１はセンスアンプ０１２に接続される。そのタイミングに応じて、書き込みの際のパルスよりも振幅が小さくメモリセルの抵抗状態を変化させないような読み出し用の電圧ＶＲが、ビット線ＢＬ０に印加される。ＶＲの電圧を駆動するドライバ（図１１のドライバ１３１）が所定の期間だけ電圧を出力しハイインピーダンスに切り替わった後、メモリセルの抵抗値と負荷容量（配線およびトランジスタの拡散容量、キャパシタ等の容量の合計）などで決まる時定数に従い、ビット線ＢＬ０が有するＶＲの電圧がディスチャージされる。メモリセルＭ２１１の抵抗値は先の書き込みでＨＲにセットされているため、ディスチャージに比較的長い時間を要する。このため、ディスチャージに要する時間が所定の閾値より大きいと判定され、入出力制御回路００７からＨＲレベルを示す情報“０”が出力される。
【０２３３】
図１０に示すように、メモリセルＭ２２２に対する読み出しサイクルにおいて、トランジスタＴ２２をＯＮ状態にするためにＶＤＤがワード線ＷＬ１に印加され、列選択回路によってメモリセルＭ２２２はセンスアンプ０１２に接続される。そのタイミングに応じて、読み出し用の電圧ＶＲが、ビット線ＢＬ１に印加される。ＶＲの電圧を駆動するドライバが所定の期間で電圧を出力しハイインピーダンスに切り替わった後、メモリセルの抵抗値と負荷容量で決まる時定数に従い、ビット線ＢＬ１が有するＶＲの電圧がディスチャージされる。メモリセルＭ２２２の抵抗値は先の書き込みでＬＲにセットされているため、ディスチャージは比較的短い時間で完了する。このため、ディスチャージに要する時間が所定の閾値より小さいと判定され、入出力制御回路００７からＬＲレベルを示す情報“１”が出力される。
【０２３４】
なお、これら読み出しサイクルにおいては、書き込み回路０１１から全てのプレート線と非選択のビット線に０Ｖ（グランドレベル）が供給されている。
【０２３５】
不揮発性記憶装置０２０へと特殊書き込みコマンドが入力された場合には、例えば、書き込み時に書き込み回路０１０が出力する電気的ストレスの電圧、パルス幅、および累積印加時間の少なくともいずれかが通常の書き込みモードとは異なった設定になる。
【０２３６】
特殊書き込みモードにおいて、初期状態の素子をそのまま維持するために、電気的ストレスを全く印加しないようにマスクされる場合には、電気的ストレスの電圧をＶＨＳＰ（＝０Ｖ）とし、該電気的ストレスのパルス幅をＴＰＨＳＰ（＝０ｎｓ）とする。また、フォーミングストレスが単一の電気的パルスであると仮定し、フォーミングストレスの電圧をＶＬＳＰとし、フォーミングストレスのパルス幅をＴＰＬＳＰとする。ＶＨＳＰおよびＶＬＳＰは共に図９の電源制御回路００８により生成される。
【０２３７】
図７で説明したように、特殊書き込みコマンドが入力され、素子を初期状態に維持する場合は、ＶＨの電圧レベルをＶＨＳＰに変更すればよく、特殊書き込みコマンドが入力され、素子を可変状態に変化させる場合は、ＶＬの電圧レベルをＶＬＳＰに変更すればよい。なお、ＶＨＳＰ、ＴＰＨＳＰ、ＶＬＳＰ、ＴＰＬＳＰは、通常書き込みコマンドに対応するＶＨ、ＴＰＨ、ＶＬ、ＴＰＬと、互いに対応しており、これらの一部が互いに等しい値となってもよい。
【０２３８】
次に特殊読み出しモードおよび通常読み出しモードにおけるセンスアンプ０１２の具体的な構成と動作の一例を示す。
【０２３９】
図１１は、第１参考形態の第１参考例にかかる不揮発性記憶装置が備えるセンスアンプの概略構成の一例を示すブロック図である。図１２は、第１参考形態の第１参考例にかかる不揮発性記憶装置が備えるセンスアンプの主要箇所の動作例を示すタイミングチャートである。
【０２４０】
図１１において、破線で囲まれた列選択回路００４は、上述した通りであるので説明を省略する。図９の切替え回路０３７は図１１では省略したが、ＮＷＲがＬｏｗのときに書き込み回路側が選択され、Ｈｉｇｈのときに書き込み回路側でなくセンスアンプ側が選択されるものとする。
【０２４１】
図１１において、レファレンス電圧発生回路１３０は、論理制御回路０１０から入力Ａへと入力される指令に基づき、所定の基準電圧を出力する。レファレンス電圧発生回路１３０は、具体的には例えば、電源電圧ＶＤＤと設置電圧ＧＮＤとの電位差からラダー抵抗などを用いて分圧して複数の所定の電圧レベルを作成し、それらの複数の電圧レベルのいずれかを半導体スイッチ等で選択して、Ｖｒｅｆ１およびＶｒｅｆ２として出力する構成とすることができる。Ｖｒｅｆ１およびＶｒｅｆ２は、Ｖｒｅｆ１＞Ｖｒｅｆ２の関係を満たす。基準電圧を生成する回路は、多くの公知の構成が存在する。本参考例においても、これら公知の構成を適宜に採用することができる。Ｖｒｅｆ２（判定電圧）は、特殊読み出しモードおよび通常読み出しモードで異ならせてもよい。
【０２４２】
論理制御回路０１０から入力Ｂへとスイッチ制御信号が入力される。スイッチ３（ＳＷ３）は、スイッチ制御信号が‘Ｌ’のときにＯＦＦとなり、スイッチ制御信号が‘Ｈ’のときＯＮとなる。スイッチ３がＯＦＦとなると、レファレンス電圧発生回路１３０からノードＣへの入力状態が、ＨｉＺ（ハイインピーダンス）状態へと切り替わる。スイッチ３がＯＮとなると、ドライバ１３１によりＶｒｅｆ１の電位がノードＣに出力される。なお、実際にはドライバ１３１やその他の回路を構成するトランジスタや配線等の電圧降下によって、入出力の電圧値は多少異なりうるが、説明の簡単化のために電圧降下等の影響は無視できるものとして説明する。
【０２４３】
ノードＣは、メモリセルアレイ０２１（図９）に含まれる選択されたメモリセルに接続される。例えば、Ｍ２１１のメモリセルの抵抗値に基づく情報量を読み出すときを考える。まず、全てのビット線とワード線が０Ｖに設定される。論理制御回路０１０は図８のＮＷＲをローレベルからハイレベルにし、Ｙ０をハイレベルとし、Ｙ１〜Ｙｎをローレベルにすることで、ビット線ＢＬ０が選択される。さらに、選択ワード線ＷＬ０はハイレベルにされ、ＷＬ０を除く非選択ワード線はローレベルにされ、選択ビット線ＢＬ０が接続されるノードＣにはＶＲ＝Ｖｒｅｆ１の読み出し電圧が印加される。
【０２４４】
次にノードＣへの印加方法および抵抗値情報の読み出し方法について説明する。図１１に示すようにノードＣとグランド間にはコンデンサＣＣ２がメモリセルと並列に接続される。このコンデンサは配線容量およびトランジスタの拡散容量等で実現してもよいし、配線およびトランジスタとは別個に付加してもよい。
【０２４５】
一般的に、読み出し速度を高速にするために、コンデンサＣＣ２の容量を極力小さくしてもよい。前述したように、入力Ｂに入力されるスイッチ制御信号が‘Ｈ’のとき、ノードＣの電位はＶｒｅｆ１となる。その後、スイッチ制御信号が‘Ｌ’になるとＳＷ３はＯＦＦとなり、レファレンス電圧発生回路１３０からノードＣへの入力状態がハイインピーダンス（ＨｉＺ）になる。その後、コンデンサＣＣ２が放電を開始し、コンデンサＣＣ２の容量と、並列に接続される選択メモリセルの抵抗値より定まる時定数に従って、ノードＣの電位がＶｒｅｆ１から徐々に低下する。
【０２４６】
すなわち、選択されたメモリセルの抵抗値が低いと、流れる電流が多くなるため、電位の低下は速くなる。一方で、選択されたメモリセルの抵抗値が高いと、流れる電流が少なくなるため、電位の低下は遅くなる。この動作については、図１２を参照することで理解が容易となる。
【０２４７】
図１２は、（ａ）メモリセルの状態に示されるように、前半はメモリセルが低抵抗状態（ＬＲ状態）で、後半が高抵抗状態（ＨＲ状態）である場合を例示する。それぞれに対し、図１２の（ｂ）で示すようなタイミングで、入力Ｂが‘Ｈ’に変化し、その期間に、（ｃ）で示すようにノードＣにＶｒｅｆ１の電圧が印加される。
【０２４８】
入力Ｂが‘Ｈ’から‘Ｌ’に切り替わると、スイッチ回路ＳＷ３はＯＦＦとなり、レファレンス電圧発生回路１３０からノードＣへの入力状態がＨｉＺになるので、ノードＣの電位は徐々に低下する（ディスチャージ）。ノードＣの電位がＶｒｅｆ２よりも小さくなるまでの時間は、メモリセルがＬＲ状態のときは短く、メモリセルがＨＲ状態のときは遅くなる。
【０２４９】
図１１のレベル比較器１３２はレファレンス電圧発生回路１３０が出力する電位Ｖｒｅｆ２とノードＣの電位とを比較し、Ｖｒｅｆ２よりノードＣの電位が大きければ‘Ｌ’を出力し、小さければ‘Ｈ’を出力する。すなわち、スイッチ制御信号が‘Ｈ’から‘Ｌ’に切り替わった後、レベル比較器１３２の出力が‘Ｌ’から‘Ｈ’に変化するまでの時間は、メモリセルが低抵抗状態にあれば短くなり、メモリセルが高抵抗状態にあれば長くなる。
【０２５０】
カウンタ１３４は、入力Ｂの制御信号が‘Ｈ’の期間は、ゼロにリセットされており、スイッチ制御信号が‘Ｌ’でかつレベル比較器１３２からの入力が‘Ｌ’であるときカウンタ１３４に入力されるクロック(図示せず)の周期に従ってカウントアップされる。なお、カウンタ１３４は、カウント値がオーバフローしない様に、所定の上限値で制限されていてもよい。
【０２５１】
カウンタ１３４の動作は、図９の（ｅ）に示す。図９の（ｅ）に示すように、入力Ｂが‘Ｌ’に変化した直後から、カウンタ１３４のカウントアップが開始される。メモリセルが低抵抗状態にあるときはカウント値が１５に達するとカウントアップが停止し。メモリセルが高抵抗状態にあるときはカウント値が３５に達するとカウントアップが停止し、カウント値がそのときの値で固定される。
【０２５２】
図８の入力Ｃには、通常読み出しモードに対応した閾値が入力され、通常閾値レジスタ１３６にセットされる。入力Ｄには、特殊読み出しモードに対応した閾値が入力され、特殊閾値レジスタ１３７にセットされる。
【０２５３】
入力Ｅには特殊読み出しモードと通常読み出しモードとを切り替える切り替え信号が入力される。切り替え信号としてＨｉｇｈが入力されるとＳＷ５は‘Ｈ’端子側に接続される。切り替え信号としてＬｏｗが入力されるとＳＷ５は‘Ｌ’端子側に接続される。
【０２５４】
かかる切り替えにより、通常閾値レジスタ１３６および特殊閾値レジスタ１３７のいずれか適切な方に保持されている閾値が、比較器１３５の入力ｂへと入力される。通常読み出しモードの場合には、例えば図９に示されるように、高抵抗状態と低抵抗状態とを判別する閾値となるような、例えば２０という値が入力される。
【０２５５】
比較器１３５の入力ａにはカウンタ１３４が出力するカウント値が入力される。比較器１３５は、入力ａに入力されるカウント値と入力ｂに入力される閾値とを比較する。入力ａ≧入力ｂなら、選択されたメモリセルが高抵抗状態にあると判断され、出力Ａに‘Ｌ’（情報“０”）が出力される。入力ａ＜入力ｂなら、選択されたメモリセルが低抵抗状態にあると判断され、出力Ａに‘Ｈ’（情報“１”）が出力される。
【０２５６】
図１２で示したような閾値２０であれば、それに応じて出力Ａには、データレジスタ０３０のデータ取込みタイミング（ラッチタイミング）で、選択されたメモリセルがＬＲのときには‘Ｈ’が、選択されたメモリセルがＨＲのときには‘Ｌ’が出力される。出力された値は、データレジスタ０３０にラッチされる。
【０２５７】
以上のように、センスアンプ０１２は、読み出す対象となる選択メモリセルの抵抗値に応じて、ノードＣに印加された電圧の減衰時間が異なることを利用して、選択メモリセルの抵抗値情報を読み出す。その結果、メモリセルの抵抗状態に応じた２値のディジタル論理値が出力Ａに出力され、より詳細な抵抗値情報に相当するカウント値が、クロック周期の分解能で出力Ｂに出力される。
【０２５８】
かかる構成では、出力Ｂの値を参照することでメモリセルごとの抵抗値が容易に比較できる。すなわち出力Ｂは、メモリセルの抵抗値と相関をもつ値であり、物理量としてはメモリセルの両端電圧の放電時間を表す数値であるものの、メモリセルの抵抗値情報と等価である。出力Ｂは書き込み回路０１１および論理制御回路０１０へと入力され、ベリファイ（Ｖｅｒｉｆｙ）動作（第１から第４動作例のＳＴＥＰ６、第３動作例のＳＴＥＰ１３、または第４動作例のＳＴＥＰ１５参照）における処理フローに用いられうる。
【０２５９】
なお、入力Ｃの値やカウンタ１３４のホールド値は、図１２に例示された値に限定されるものでなく、カウンタ１３４のカウントクロック周波数、コンデンサＣＣ２の容量、Ｖｒｅｆ１およびＶｒｅｆ２の設定値、定電流源１４０の電流量（後述）およびＳＷ４の状態、およびメモリセルの抵抗値のバラツキ等に応じて変動しうる。
【０２６０】
次に、通常読み出しモードと特殊読み出しモードとで、読み出される抵抗値のレンジを変更する場合を例示する。
【０２６１】
図１１に示すように、センスアンプ０１２では、定電流源１４０がスイッチ４（ＳＷ４）を介してノードＣに接続されている。定電流源１４０としては、ｐチャネル型ＭＯＳＦＥＴを利用するものおよびカレントミラー回路を利用するものなど、多くの公知の構成が存在する。本参考例においても、これら公知の構成を適宜に採用することができる。
【０２６２】
ＳＷ４は、論理制御回路０１０からの入力ＥがＨｉｇｈの時にオンとなり、入力ＥがＬｏｗの時にオフとなる。ＳＷ４をオンとすることにより、ノードＣに一定の電流が供給される。このとき、前述した放電時間は長くなる。このような放電時間の差について図１３を用いて説明する。
【０２６３】
図１３は、第１参考形態の第１参考例にかかる不揮発性記憶装置における放電時間の差を示すグラフである。図１３において、横軸はカウンタ１３４のカウント値を示し、縦軸は規格化セル電流値を示す。規格化セル電流値とは、メモリセルに対して所定の電圧を印加したときに流れるＤＣ電流を規格化して標記したものであり、メモリセルの抵抗値の逆数に相当する値である。つまり、図１３は、センスアンプ０１２で読み出される抵抗値情報であるカウント値と、実際のセル電流量との相関関係を表す。
【０２６４】
該相関関係は、セル電流＝α×Ｔβ（Ｔ＝カウント値×クロック周期）の関数で概ねあらわされる。図１３において、破線はＳＷ４がオフの場合の特性であり、実線はＳＷ４がオンの場合の特性である。
【０２６５】
図に示すように、破線で示される特性では、カウント値が２０から１００までの範囲に対して、セル電流値は約１０から１までの範囲が対応している。また、実線で示される特性では、カウント値が２０から１００までの範囲に対して、セル電流値は約１５から５までの範囲が対応している。
【０２６６】
このようにカウント値の測定レンジを、相対的に抵抗値の低い側にするか、相対的に抵抗値の高い側にするかを、ＳＷ４により選択できる。すなわち、ＳＷ４をオンにすると実線で示される特性となり、セル電流が比較的大きい場合、すなわちメモリセルの抵抗値が比較的低い場合に対応させることができる。これは、メモリセルの特性が図３に例示されるものである場合には、第１抵抗値範囲と第２抵抗値範囲との間を判別する通常読み出しモード（第２読み出しモード）に対応する。
【０２６７】
一方、ＳＷ４をオフにすると破線で示される特性となり、セル電流が比較的小さい場合、すなわちメモリセルの抵抗値が比較的高い場合に対応させることができる。これは、メモリセルの特性が図３に例示されるものである場合には、初期抵抗値範囲と第１抵抗値範囲との間を判別する特殊読み出しモード（第１読み出しモード）に対応する。
【０２６８】
なお、読み出される抵抗値情報の分解能は、定電流源１４０からの電流供給の有無（ＳＷ４のオンオフ）のみだけでなく、定電流源１４０の電流量、カウンタ１３４に入力されるクロックの周波数、Ｖｒｅｆ１およびＶｒｅｆ２の大きさ、およびコンデンサＣＣ２の容量等によって調整できる。すなわち、クロックの周波数を増加させれば分解能が上昇する。
【０２６９】
高い抵抗値を短い時間で読み出せるように測定レンジをシフトさせる方法としては、Ｖｒｅｆ１およびＶｒｅｆ２を大きくすること、電流源１４０の電流を減らすこと、およびコンデンサＣＣ２の容量を減らすこと等が挙げられる。逆に、低い抵抗値が読み出せるように測定レンジをシフトさせる方法としては、Ｖｒｅｆ１およびＶｒｅｆ２を小さくすること、電流源１４０の電流を増やすこと、およびコンデンサＣＣ２の容量を増やすこと等が挙げられる。
【０２７０】
なお、Ｖｒｅｆ１はメモリセルに印加する読み出し電圧に当たるので、所定の電圧より大きくすると抵抗状態が変化する。Ｖｒｅｆ１を読み出しレンジの調整に用いる場合にはこの点に注意が必要である。
【０２７１】
［特殊書き込みモードの第１動作例］
以下、図３に示した抵抗変化素子を例に取り、特殊書き込みモードの動作例を説明する。不揮発性記憶装置の構成としては、第１参考例を想定して説明するが、他の装置構成においても同様の動作が可能である。
【０２７２】
特殊書き込みモードの動作は、例えば、行選択回路／ドライバ００３と、列選択回路００４と、アドレスレジスタ００９と、特殊／通常書き込み回路０１１と、特殊／通常センスアンプ０１２と、コントローラ０１３と、データレジスタ０３０と、Ｃａｓｈｅレジスタ０３１と、特殊データレジスタ０３２と、切替え回路０３７とにより実行されうる。これらの構成要素が相互に関連し合うことで、データ書き込み回路が構成されうる。以上の点は他の動作例でも同様である。
【０２７３】
第１電極１２４を基準として第２電極１２８に電圧が＋２．４Ｖ、パルス幅が５０ｎｓの電気的信号を印加すると抵抗変化素子１２０の抵抗値がＬＲレベル（第２抵抗値範囲）からＨＲレベル（第１抵抗値範囲）へと変化し、第１電極１２４を基準として第２電極１２８に電圧が−２．４Ｖ、パルス幅が５０ｎｓの電気的信号を印加すると抵抗変化素子１２０の抵抗値がＨＲレベルからＬＲレベルへと変化するものとする。このように、抵抗変化素子１２０が例えばバイポーラ型抵抗変化素子であって、±２．４Vの電気的信号を印加することで、ＨＲレベルとＬＲレベルとを可逆的に遷移する特性を持つ場合に、例えば、電圧の絶対値を２．４Ｖより大きい３Ｖとし、パルス幅が１μｓの電気的ストレスを印加する。かかる電気的ストレスの印加で抵抗変化素子が可変状態に変化しなければ、例えば、電圧の絶対値を０．１Ｖ上昇させ、パルス幅を５倍にした電気的ストレスを再度印加する。この処理を繰り返すことによって、各メモリセルについて必要な累積印加時間の電気的ストレスが印加されフォーミング処理が完了する。
【０２７４】
図１４は、第１参考形態における特殊書き込みモードの第１動作例を示すフローチャートである。なお、図１４は、後述するような全メモリセル９１が可変状態に変化する前に電気的ストレスの印加を停止してランダムデータを生成する例でなく、入力されたデータをメモリセル９１に書き込むことを想定したものである。
【０２７５】
まず、書き込みコマンドと、データを書き込むべきアドレス、書き込むべきデータが不揮発性記憶装置１００の外部から入力される（ＳＴＥＰ１）。
【０２７６】
その後、ＳＴＥＰ１で入力された書き込みコマンドが第１書き込みコマンドであるか否かが判定される（ＳＴＥＰ２）。ＳＴＥＰ２の判定結果がＮＯであれば処理が中止される。
【０２７７】
ＳＴＥＰ２の判定結果がＹＥＳであれば、ＳＴＥＰ１で入力されたアドレスのメモリセル９１が選択され、入力されたデータに合わせてＬｏｗ論理に書き込むメモリセル（書き込むべきデータが“０”であるメモリセル：初期状態のまま維持すべきメモリセル）に電気的ストレスが印加されないようにマスクが施される（ＳＴＥＰ３）。
【０２７８】
その後、選択されたメモリセルのうちマスクされていないメモリセル、つまりＨｉｇｈ論理に書き込むメモリセル（書き込むべきデータが“１”であるメモリセル：初期状態から可変状態へと変化させるべきメモリセル）に対して電気的ストレス（Ｆｏｒｍｉｎｇパルス）が印加される（ＳＴＥＰ４）。印加する電気的ストレスの電圧の初期値は３Ｖ、パルス幅の初期値は１μｓとする。
【０２７９】
その後、センスアンプ０１２をフォーミング判定レンジの読み出しモードへと設定する（ＳＴＥＰ５）。具体的には図１１のＳＷ４をオフとし、測定レンジを高抵抗側に設定する。
【０２８０】
その後、センスアンプ０１２のカウンタ１３４がホールドするカウント値が４０未満であるか否か、および電気的ストレス（Ｆｏｒｍｉｎｇパルス）の印加回数（書き込み回数）が５回を超えているか否かを判定する（ＳＴＥＰ６）。ＳＴＥＰ６の判定結果のいずれかがＹＥＳであれば処理を終了する（エンド）。
【０２８１】
ＳＴＥＰ６の判定結果のいずれもがＮＯであれば、直前に印加した電気的ストレス（Ｆｏｒｍｉｎｇパルス）に対し、電圧を０．１Ｖ増加し、パルス幅を５倍増加させて、ＳＴＥＰ４に戻って電気的ストレス（Ｆｏｒｍｉｎｇパルス）が印加される。Ｈｉｇｈ論理に書き込むメモリセルが可変状態へ変化するまでＳＴＥＰ４〜ＳＴＥＰ７を繰り返してもよいが、図１４に示す例では、メモリセルに不具合があった場合に無限ループになることを防止すべく、書き込み回数に上限を設けている。
【０２８２】
なお図示していないが、書き込み回数の上限を超えた不良が発生した場合に、エラーログが出力されて適切に処理されてもよい。また、複数ビットに対して並列で前記フローを実行する場合はビットごとにＳＴＥＰ６の判定結果がＹＥＳになるまでの電気的ストレスの印加回数が異なる。その場合は、ＳＴＥＰ６の判定結果がＹＥＳになったメモリセルについてはそれ以降の電気的ストレスの印加を禁止するマスクが施され、並列処理されるメモリセルの全てについてＳＴＥＰ６の判定結果がＹＥＳになったときにフローを終了させてもよい。
【０２８３】
図１５は、図１４に示す特殊書き込みモードで書き込まれたメモリセルを特殊読み出しモードで読み出した結果の一例を示す表である。図１６は、図１４に示す特殊書き込みモードで書き込まれたデータを通常読み出しモードで読み出した結果の一例を示す表である。
【０２８４】
図１５および図１６に示す例では、特殊読み出しモードと通常読み出しモードとの間でクロック周波数、読み出し電圧、判定電圧Ｖｒｅｆ２および判定時間を同一とし、図１１のＳＷ４を切り替え、定電流源の電流量のみを異ならせている。
【０２８５】
図１５では、初期状態にある各メモリセルに４ビットで表されるデータ（１６進数表記で０〜Ｆによりしめされる１６個の数値）が書き込まれたメモリセルを、特殊読み出しモードで読み出した結果を示す。図１６では、図１５と同じデータが特殊書き込みモードで書き込まれたメモリセルを、通常読み出しモードで読み出した結果を示す。
【０２８６】
図１５および図１６において各ビットの数値は、２値のディジタルデータに復号せず、図８のカウンタ１３４がホールドした値を示した。そして、１６進表記の項は、各値をフォーミング判定閾値の４０より大きいものを０に、小さいものを１に判定した結果を示した。なお、カウンタ１３４の最大値は２５５とし、それより大きな値は制限されているとする。
【０２８７】
図１５に示すように、メモリセル群を特殊読み出しモードで読み出した場合（第１閾値を用いた読み出し）、フォーミングが完了していないメモリセルは、全て２５５の最大値を示し、フォーミングが完了したメモリセルは９〜１０の値を示している。そして、１６進表記の項は、０からFまで所定の値に判別されていることが分かる。
【０２８８】
一方、図１６に示すように、同じメモリセル群を通常読み出しモードで読み出した場合（第２閾値を用いた読み出し）、正常な値に読み出せず、大部分のデータがゼロとなり、本来書き込まれたデータ（１６進数表記で０〜Ｆによりしめされる１６個の数値）とは全く異なるデータとして復号されている。フォーミングが完了したメモリセルでも数値が大きくばらついているのは、フォーミングが完了したメモリセルの抵抗値が、そのままでは大きくばらつき、ＨＲレベルになる場合もＬＲレベルになる場合もあるためである。このように特殊書き込みコマンドで書き込まれた情報は、特殊読み出しコマンドで読み出されない限り、正常な情報を得られない。つまり、特殊書き込みコマンドと特殊読み出しコマンドとを秘匿コマンドとすることで、特殊書き込みコマンドで記録された情報のセキュリティーを向上することが可能となる。
【０２８９】
上記説明では、初期状態のメモリセルの抵抗値が、可変状態のメモリセルの抵抗値よりも高い場合を例として説明したが、初期状態のメモリセルの抵抗値が可変状態のメモリセルの抵抗値よりも低い場合でも、判定の方法および印加するパルスの極性および電圧等を適宜に変更することで、同様の動作が可能である。
【０２９０】
［特殊書き込みモードの第２動作例］
図１７は、第１参考形態における特殊書き込みモードの第２動作例を示すフローチャートである。第２動作例では、特殊書き込みモードにおいて、初期状態から可変状態に変化したメモリセル全ての抵抗値をＨＲレベルに保持するのではなく、その一部の抵抗値をランダムにＬＲレベルに設定する。かかる方法では、特殊書き込みモードで書き込まれたメモリセルを第２読み出しコマンドで読み出したときに全てゼロとならず、何らかのデータが記憶されているかのように見せかけることができる。
【０２９１】
図１７において図１４（第１動作例）とＳＴＥＰの番号が等しいものは、第１動作例で説明した動作と同じとすることができるので説明を省略する。
【０２９２】
図１７において、ＳＴＥＰ６においてカウント値が４０より小さい値となり抵抗値がＨＲレベルに達すると、ＳＴＥＰ９が発生するランダム値がゼロであるか１であるかを判定する（ＳＴＥＰ１０）。ランダム値がゼロのときは、そのまま何もせずにＳＴＥＰ８に移行して処理を終了する。ランダム値が１のときは、低抵抗化パルス（第２電気的信号）を印加して抵抗値をＬＲレベルへと低下せしめ（ＳＴＥＰ１１）、ＳＴＥＰ８に移行して処理を終了する。
【０２９３】
かかる動作により、可変状態へ変化したメモリセルはランダムに抵抗値がＬＲレベルになる。よって、通常読み出しモードで読み出したとしても、全ビットがゼロとなるような固定のデータパターンに認識されることがなく、データの秘匿効果が更に向上できる。
【０２９４】
なお、入力データによっては、“１”を書き込むメモリセルが非常に少量の場合がある。この場合において、ＳＴＥＰ１１を実行すると、逆に秘匿データが盗み読みされるリスクが増加しうる。従って、“１”に書き込むメモリセルの数によってＳＴＥＰ１１の処理に制限をかけてもよい。
【０２９５】
上記説明では、初期状態のメモリセルの抵抗値が、可変状態のメモリセルの抵抗値よりも高い場合を例として説明したが、初期状態のメモリセルの抵抗値が可変状態のメモリセルの抵抗値よりも低い場合でも、判定の方法および印加するパルスの極性および電圧等を適宜に変更することで、同様の動作が可能である。
【０２９６】
［特殊書き込みモードの第３動作例］
図１８は、第１参考形態における特殊書き込みモードの第３動作例を示すフローチャートである。第３動作例は、書き込みデータの信頼性を向上させたものである。
【０２９７】
図１８において図１４（第１動作例）とＳＴＥＰの番号が等しいものは、第１動作例で説明した動作と同じとすることができるので説明を省略する。
【０２９８】
図１８のＳＴＥＰ６において、可変状態に変化したと判定されたメモリセルに対して、低抵抗化パルスよりも弱く（例えば、振幅の絶対値が小さく）、かつ低抵抗化パルスと極性が同じである電気的ストレス（補助ストレス）が印加される（ＳＴＥＰ１２）。具体的には低抵抗化パルスの振幅が−２．４Ｖであったとき、補助ストレスの振幅はその半分程度の−１．１Ｖとすることができる。補助ストレスの振幅の決定方法として、図５で説明したように電圧を徐々に増加させたときの抵抗変化を測定し、抵抗が変化する直前の電圧か、あるいは僅かに抵抗変化するような中間的な電圧としてもよい。
【０２９９】
このような補助ストレスを印加すると、抵抗変化素子の抵抗変化層には、酸素欠陥がやや多い状態がつくられ、還元しやすい状態となる。このことにより、長時間放置される場合および超高温環境下で抵抗が変化する場合等において、抵抗が低くなりやすいように、すなわち誤って抵抗値が初期抵抗値範囲に入ってしまわないように、予め変化に方向性をつけておくことができる。
【０３００】
非常に稀であるが、補助ストレスの印加によって異常な変化（抵抗値が極めて高くなる変化）をするメモリセルが発生しうる。第３動作例では、ＳＴＥＰ１２の後、抵抗値をセンスアンプで再度判定する（ＳＴＥＰ１３）。このときの閾値はＳＴＥＰ６よりも小さくし、４０のフォーミング判定閾値に対して余裕のある値としてもよい。
【０３０１】
ＳＴＥＰ１３の判定において異常な変化が発生したと判断されれば、低抵抗化パルスを印加して強制的に抵抗値をＬＲレベルに変化させる（ＳＴＥＰ１４）。なお、このような異常な変化をするメモリセルは、ランダムかつ極めて稀にしか発生しないため、抵抗値をＬＲレベルにセットしても、秘匿された情報が通常読み出しモードで読み出されることはない。
【０３０２】
なお、図１８のフローは一例であり多くの変形例が設計可能である。例えばＳＴＥＰ８でフローを終了する前に、図３に示した第２閾値での判定が可能となるようにセンスアンプを通常判定レンジの読み出しモードへと設定してデータを読み出し、秘匿された情報との差分のビット数が所定以上あるか検証し、不足があればＬＲレベルまで低下したメモリセルに対してＶＨのパルスを印加してＨＲレベルに再セットするフローを追加しても良い。
【０３０３】
上記説明では、初期状態のメモリセルの抵抗値が、可変状態のメモリセルの抵抗値よりも高い場合を例として説明したが、初期状態のメモリセルの抵抗値が可変状態のメモリセルの抵抗値よりも低い場合でも、判定の方法および印加するパルスの極性および電圧等を適宜に変更することで、同様の動作が可能である。
【０３０４】
［特殊書き込みモードの第４動作例］
図１９は、第１参考形態における特殊書き込みモードの第４動作例を示すフローチャートである。第４動作例では、ＳＴＥＰ１３、１４が、ＳＴＥＰ１５、１６、１７に置換されているが、図１９と図１８（第３動作例）とでＳＴＥＰの番号が等しいものは、第３動作例で説明した動作と同じとすることができるので説明を省略する。
【０３０５】
ＳＴＥＰ１２の実行後、ＳＴＥＰ１２による補助ストレスの印加によってメモリセルの抵抗値が所望のＨＲレベルにあることを判定している（ＳＴＥＰ１５）。つまり、ＳＴＥＰ１５においてカウント値が１２から１５の範囲に入っているか否かを判断することで、抵抗値がＬＲレベルでも初期抵抗値範囲でもなく、正しくＨＲレベルに設定されていることを確認する。判定結果がＮＯであればパルス幅５０ｎｓ、振幅−２．４Ｖの負パルス（低抵抗化パルス）を印加して抵抗値をＬＲレベルにする（ＳＴＥＰ１６）。その後、パルス幅５０ｎｓ、振幅＋２．４Ｖの正パルス（高抵抗化パルス）を印加して抵抗値をＨＲレベルにする（ＳＴＥＰ１７）。その後、ＳＴＥＰ１２に戻る。
【０３０６】
なお、図示していないが、ＳＴＥＰ１２、１５、１６、１７のフローが無限ループにならないようなエラー処理が施されてもよい。
【０３０７】
メモリセルが初期状態にあるか可変状態にあるかの違いを利用して情報を記録する方式は、データの誤検出が発生しにくいという利点がある。その理由として初期状態のメモリセルの抵抗値と、可変状態のメモリセルの抵抗値との間には非常に大きな抵抗差がある場合が多いことが挙げられる。
【０３０８】
更に、初期状態のメモリセルの抵抗変化素子は絶縁体と等しい特性を有し、熱的および経時劣化において極めて安定である。そして、初期抵抗値範囲と対をなすＨＲレベルにいったん変化したメモリセルは、第４動作例によれば、熱的に抵抗が変動しても常にＬＲレベルに近づくように変化する。よって、検出ウインドウが縮小せず、極めて信頼性の高いデータ保持を実現できる。
【０３０９】
このことは特にセキュリティーのキー情報や、認証に用いるシリアル番号情報など、読み出し時に誤りが発生すると多大な被害が発生するような重要度の高いデータの保存に適している。
【０３１０】
このような効果の根拠データとして図２０に示す。図２０は、第４動作例を用いてデータを記録したメモリセルについて、２１０℃で放置し、カウンタの値の推移をグラフ化したものである。素子の構成は、第１電極１２４の材料がＴａＮ、第２電極１２８の材料がＩｒ、抵抗変化層１２６の材料が積層構造のタンタル酸化物、抵抗変化層１２６の厚さが５０ｎｍ、第１電極１２４と抵抗変化層１２６との接触面および第２電極１２８と抵抗変化層１２６との接触面の面積が０．２５μｍ２以下である。抵抗変化層１２６をなす層のうち、第１電極１２４に接する層が酸素濃度の低い層であって、組成をＴａＯｘとすると０＜ｘ＜２．５である。一方、第２電極１２８に接する層が酸素濃度の高い層であって、組成をＴａＯｙとするとｙ≧２．１であり、厚さが５．５ｎｍ程度である。抵抗変化素子の選択素子として双方向ダイオード用いたメモリセル（図２１のメモリセルを参照）を用い、フォーミングストレスは、ダイオードのオン電圧が付加されて電圧が＋５．５Ｖ、パルス幅が１０μＳｅｃ以上である。低抵抗化パルス（素子の抵抗値を第１抵抗値範囲から第２抵抗値範囲へと変化させるためのパルス：第１電気的信号）は、電圧が−４．５Ｖ、パルス幅が５０ｎＳｅｃである。高抵抗化パルス（素子の抵抗値を第２抵抗値範囲から第１抵抗値範囲へと変化させるためのパルス：第２電気的信号）は、電圧が＋４．５Ｖ、パルス幅が５０ｎＳｅｃである。
【０３１１】
図２０では、横軸に経過時間、縦軸にカウント値を取っている。初期状態のメモリセル群を実線と■点で表示し、可変状態に変化した後のメモリセル群を破線と×点で示した。初期状態のメモリセルは、カウント値のばらつきはなく、全て上限の２５０で一定であった。一方、可変状態に変化した後のメモリセル群については、各点において最大値と最小値を縦バーで示している。図から分かるように、２１０度という非常に高温の環境下であってもほとんど検出ウインドウが縮小することがなく、極めて信頼性の高いデータ記憶が行える。この安定性は低温でも同様に得られる。
【０３１２】
上記説明では、初期状態のメモリセルの抵抗値が、可変状態のメモリセルの抵抗値よりも高い場合を例として説明したが、初期状態のメモリセルの抵抗値が可変状態のメモリセルの抵抗値よりも低い場合でも、判定の方法および印加するパルスの極性および電圧等を適宜に変更することで、同様の動作が可能である。
【０３１３】
［特殊書き込みモードのその他の動作例］
上述のように、例えば通常読み出しコマンドを広く公開しておき、特殊読み出しコマンドを秘匿する場合に、特殊書き込みモードで記憶されたデータが通常読み出しモードで読み出せないことを確認するステップを実行してもよい。具体的には、フォーミングを用いた特殊書き込みによってデータを記憶した後に、特殊読み出しモードで使用する第１閾値を用いてデータ（第１のデータ）を読み出し、通常読み出しモードで使用する第２の閾値を用いてデータ（第２のデータ）を読み出し、それらの読み出されたデータが類似または一致しないように、追加的に書き込みを行なってもよい。
【０３１４】
すなわち、初期抵抗値範囲が複数の可変抵抗値範囲よりも大きい場合には、フォーミングストレスを印加するステップを実行後に、初期抵抗値範囲の下限以下であり、かつ複数の可変抵抗値範囲のうち最大のものの上限以上である第１閾値を用いて読み出した第１データと、複数の可変抵抗値範囲のうち最大のものの下限以下であり、かつ最小のものの上限以上である第２閾値を用いて読み出した第２データとを比較するステップとを実行し、第１データと第２データとの間で値の異なるメモリセルの数が所定の数（例えば第１閾値より小さな抵抗値範囲に書き込む予定のメモリセルのうち少なくとも半数以上）よりも少ない場合に、第２閾値より小さい可変抵抗値範囲にあるメモリセルに、電気的信号を追加的に印加するステップを実行してもよい。追加的に印加される電気的信号は、第２閾値より小さい可変抵抗値範囲にあるメモリセルを、第２閾値より大きい可変抵抗値範囲に入るように推移させる。例えば、第１電気的信号（高抵抗化パルス）である。なお、この場合、第１電気的信号（高抵抗化パルス）に限定されない。第２閾値より大きい可変抵抗値範囲に入るように収束させる目的で印加される電気的信号として、第１電気的信号および第２電気的信号、さらに第２電気的信号より絶対値として電圧が小さな補助ストレスの任意の組合せが考えられる。このとき書き込みフローの最終に印加されるパルスは第１電気的信号または補助ストレスとなる。
【０３１５】
あるいは、初期抵抗値範囲が複数の可変抵抗値範囲よりも小さい場合には、フォーミングストレスを印加するステップを実行後に、初期抵抗値範囲の上限以上であり、かつ複数の可変抵抗値範囲のうち最小のものの下限以下である第１閾値を用いて読み出した第１データと、複数の可変抵抗値範囲のうち最小のものの上限以上であり、かつ最大のものの下限以下である第２閾値を用いて読み出した第２データとを比較するステップとを実行し、第１データと第２データとの間で値の異なるメモリセルの数が所定の数（例えば第１閾値より大きな抵抗値範囲に書き込む予定のメモリセルのうち少なくとも半数以上）よりも少ない場合に、第２閾値より大きい可変抵抗値範囲にあるメモリセルに、電気的信号を追加的に印加するステップを実行してもよい。追加的に印加される電気的信号は、第２閾値より大きい可変抵抗値範囲にあるメモリセルを、第２閾値より小さい可変抵抗値範囲に入るように推移させる。例えば、第２電気的信号（低抵抗化パルス）である。なお、この場合、第２電気的信号（低抵抗化パルス）に限定されない。第２閾値より小さい可変抵抗値範囲に入るように収束させる目的で印加される電気的信号として、第１電気的信号および第２電気的信号、さらに第１電気的信号より絶対値として電圧が小さな補助ストレスの任意の組合せが考えられる。このとき書き込みフローの最終に印加されるパルスは第２電気的信号または補助ストレスとなる。
【０３１６】
［第２参考例］
図２１は、第１参考形態の第２参考例にかかる不揮発性記憶装置の概略構成の一例を示すブロック図である。第２参考例は、メモリセルアレイの構成を除けば、第１参考例と同様の構成とすることができる。よって、図９と図２１とで共通する構成要素については、同一の符号および名称を付して、詳細な説明を省略する。
【０３１７】
第２参考例におけるメモリセルアレイ０２２では、メモリセルを選択するための素子を、トランジスタではなく、２端子型選択素子としている。この変更に伴って、第１参考例では設けられていたプレート線が省略されている。
【０３１８】
２端子選択素子Ｄ１１〜Ｄ３３は、例えばダイオードなどの非線形素子があげられる。２端子選択素子を用いたメモリセルＭ２１１〜Ｍ２３３をアレイ状に配置した半導体記憶装置はクロスポイント型メモリアレイとよび、フューズメモリなどで周知の技術である。従って詳細な説明は省略する。
【０３１９】
メモリセルＭ２１１〜Ｍ２３３が導通状態か非導通状態かの切換えはセル両端間の電圧レベルで切り替えられる。例えば、２端子型選択素子のオン電圧に、抵抗変化素子１２０の書き換え電圧を足し合わせた電圧レベルのパルスを印加することにより、抵抗変化素子１２０の抵抗状態が変化する。また、２端子型選択素子のオン電圧に、抵抗変化素子１２０の書き換え電圧より小さい読み出し電圧を足し合わせた電圧レベルのパルスを印加し、そのときの電流量などを検出することで抵抗変化素子１２０の抵抗状態が判定される。
【０３２０】
図２１で用いられる２端子選択素子は、一般に片方向（順方向）に電流が流れる図１２の特性がよく知られる。
【０３２１】
図２２は、第１参考形態の第２参考例で用いられる２端子選択素子の電圧−電流特性の一例を示す図である。図２２では、横軸が電圧を示し、縦軸が電流を示す。周知の内容なので詳細は省くが、例えば市販されている汎用のダイオード素子を例にとると、順バイアスの破線（ａ）の範囲では、微少ではあるが、０．２Ｖで約１００μＡ〜１ｍＡ程度の電流が流れる。これに対し、逆バイアスでは、ブレーク電圧に達するまでは電流がほぼ一定であって、破線（ｂ）の範囲で示されるように、電流は約１０ｎＡ〜１μＡ程度と極めて小さい。もちろん電流の絶対量は、ダイオード素子のサイズで変わるが、順方向バイアスと逆方向バイアスとにおける電圧−電流特性が示す傾向は同様である。図２１において、非選択ワードラインと非選択ビットラインとの電位差を同電位か、もしくは逆バイアスにすることで、選択メモリセル以外の非選択メモリセルにはほとんど電流が流れず、選択メモリセルだけを読み書きできる。図２２に示すようなダイオード特性を示す２端子選択素子は、例えば、ユニポーラ型抵抗変化素子を用いた不揮発性記憶装置に使用できる。
【０３２２】
図２３は、第１参考形態の第２参考例で用いられる２端子選択素子の電圧−電流特性の一例を示す図である。図２３では、横軸が電圧を示し、縦軸が電流を示す。図２３は、いわゆる双方向に電流を流せる電流制限素子（双方向ダイオードともいう）の特性を示すものである。かかる電流制限素子の構造および特性についても周知の内容なので詳細は省略する。かかる電流制限素子を用いて特定のメモリセルを選択する具体的な制御方法についても、多くの公知の態様が存在する。本参考例においても、これら公知の態様を適宜に採用することができる。
【０３２３】
本参考例でも、メモリセルの両端に印加する電圧が、２端子選択素子のオン電圧と抵抗変化素子１２０に印加されるべき電圧の和以上に設定されること以外は、第１参考例における書き込み方法および読み出し方法と同様とすることができる。第２参考例においても、第１参考例と同様の変形が可能である。
【０３２４】
（第１実施形態）
第１実施形態の暗号処理装置は、複数のメモリセルがアレイ状に配置されたメモリセルアレイと暗号制御回路とを備える暗号処理装置であって、複数のメモリセルは、異なる複数の電気的信号が印加されることによって、抵抗値が複数の可変抵抗値範囲の間を可逆的に遷移する、可変状態のメモリセルと、可変状態に変化させるような電気的ストレスであるフォーミングストレスが印加されない限り可変状態とならず、かつ、抵抗値が可変抵抗値範囲のいずれとも重複しない初期抵抗値範囲にある、初期状態のメモリセルと、を含み、メモリセルアレイにおいて、各メモリセルが初期状態にあるか可変状態にあるかの違いを利用してデータが記録されており、データには変換パラメータデータが含まれており、暗号制御回路は、変換パラメータデータを用いて、平文データの暗号化および暗号文データの復号化の少なくとも一方を実行する。
【０３２５】
かかる構成では、不揮発性記憶装置における従来にない新規なデータ記録方法を採用した、より安全な暗号技術を提供することができる。
【０３２６】
「各メモリセルが初期状態にあるか可変状態にあるかの違いを利用してデータが記録されており、データには変換パラメータデータが含まれており」とは、変換パラメータデータが、各メモリセルが初期状態にあるか可変状態にあるかの違いを利用して記録されていることを意味する（以下同様）。データの一部が初期状態にあるか可変状態にあるかの違いを利用して記録されている場合を含む（上述の参考形態および以下において同様）。変換パラメータデータの一部が初期状態にあるか可変状態にあるかの違いを利用して記録されている場合を含む（以下同様）。
【０３２７】
「変換パラメータデータ」とは、暗号化および復号化の少なくとも一方に用いられるパラメータを構成するデータ、または当該パラメータを生成するためのデータである。変換パラメータデータは、暗号化のみに用いられるパラメータデータであってもよいし、復号化のみに用いられるパラメータデータであってもよいし、暗号化と復号化の両方に用いられるパラメータデータであってもよい。例えば、変換パラメータデータは、暗号化するアルゴリズムまたは復号化するアルゴリズムにおいて、アルゴリズムの変換法則を決定付けるパラメータであってもよい。
【０３２８】
変換パラメータデータは、複数の変換パラメータデータを結合したものであってもよい。例えば、個々の顧客毎に異なる変換パラメータデータ（例えば、ＩＤデータ）と、個々の送受信毎に生成されて使用され捨てられる変換パラメータデータ（例えば、使い捨ての変換パラメータデータ）とを結合したものとすることができる。
【０３２９】
「変換パラメータデータを用いて」とは、変換パラメータデータを直接的に用いるものであってもよいし、間接的に用いるものであってもよい。例えば、変換パラメータデータを用いて生成したパラメータを用いて、平文データの暗号化および暗号文データの復号化の少なくとも一方が実行されてもよい。
【０３３０】
変換パラメータデータを用いた暗号化および復号化の方式は特に限定されない。具体的には例えば、共通鍵暗号方式であってもよいし、公開鍵暗号方式であってもよい。
【０３３１】
「暗号制御回路は、変換パラメータデータを用いて、平文データの暗号化および暗号文データの復号化の少なくとも一方を実行する」とは、暗号制御回路が、変換パラメータデータを用いて平文データの暗号化のみを実行してもよいし、変換パラメータデータを用いて暗号文データの復号化のみを実行してもよいし、変換パラメータデータを用いて平文データの暗号化および暗号文データの復号化の両方を実行してもよい。
【０３３２】
上記暗号処理装置において、初期抵抗値範囲の下限は、全ての可変抵抗値範囲の上限以上であってもよい。
【０３３３】
上記暗号処理装置において、初期抵抗値範囲の上限は、全ての可変抵抗値範囲の下限以下であってもよい。
【０３３４】
上記暗号処理装置において、可変抵抗値範囲は、メモリセルの高抵抗状態に対応するＨＲレベルと、メモリセルの低抵抗状態に対応するＬＲレベルとを含み、可変状態にある複数のメモリセルは、抵抗値がＨＲレベルにあるメモリセルと抵抗値がＬＲレベルにあるメモリセルとの両方を含んでもよい。
【０３３５】
上記暗号処理装置において、Ｎを３以上の整数とするとき、可変状態のメモリセルは、異なる電気的信号が印加されることによってＮ−１個の可変抵抗値範囲の間を遷移するものであり、メモリセルアレイにおいて、各メモリセルの抵抗値が、初期抵抗値範囲とＮ−１個の可変抵抗値範囲とから構成されたＮ個の抵抗値範囲のいずれに含まれるかの違いを利用して多値データが記録されていてもよい。
【０３３６】
上記暗号処理装置において、記録されたデータは、第１種データと第２種データとを含み、第１種データは、各メモリセルの抵抗値が初期抵抗値範囲にあるか否かの違いを利用して記録されており、第２種データは、各メモリセルの抵抗値が初期抵抗値範囲にあるか否かの違いを利用せずに、各メモリセルの抵抗値が少なくとも一つの可変抵抗値範囲にあるか否かの違いを利用して記録されていてもよい。
【０３３７】
上記暗号処理装置において、変換パラメータデータの一部が第１種データとして記録されており、変換パラメータデータの残部が第２種データとして記録されていてもよい。
【０３３８】
変換パラメータデータが、２種類の変換パラメータデータを結合したものである場合、一方が第２種データではなく第１種データのみとして記録され、他方が第１種データではなく第２種データのみとして記録されてもよい。例えば、個々の顧客毎に異なる変換パラメータデータ（例えば、ＩＤデータ）と、個々の送受信毎に生成されて使用され捨てられる変換パラメータデータ（例えば、使い捨ての変換パラメータデータ）とを結合したものである場合には、個々の顧客毎に異なる変換パラメータデータ（例えば、ＩＤデータ）が第２種データではなく第１種データのみとして記録され、個々の送受信毎に生成されて使用され捨てられる変換パラメータデータ（例えば、使い捨ての変換パラメータデータ）が第１種データではなく第２種データのみとしてとして記録されていてもよい。
【０３３９】
上記暗号処理装置において、メモリセルアレイは、第１書き込みアドレス領域と、第２書き込みアドレス領域とを備え、第１書き込みアドレス領域に第１種データが記録されており、第２書き込みアドレス領域に第２種データが記録されていてもよい。
【０３４０】
上記暗号処理装置において、メモリセルアレイは、初期状態から可変状態に変化させるような電気的ストレスが印加されたときに、初期状態から可変状態に変化するメモリセルと、初期状態のまま維持されるメモリセルとがランダムに発生する特性を有し、第１種データは、初期状態から可変状態へと変化するメモリセルがランダムに発生することにより生成されるデータであってもよい。
【０３４１】
上記暗号処理装置において、変換パラメータデータは複数の単位変換パラメータデータからなってもよい。
【０３４２】
上記暗号処理装置において、複数の単位変換パラメータデータのそれぞれにつき、単位変換パラメータデータの一部が第１種データとして記録され、かつ、単位変換パラメータデータの残部が第２種データとして記録され、複数の単位変換パラメータデータのそれぞれにつき、単位変換パラメータデータのどの部分を第１種データとして記録するかが互いに異なっていてもよい。
【０３４３】
上記暗号処理装置において、暗号制御回路は、平文データの入力を受け入れ可能に構成され、かつ、変換パラメータデータを用いて平文データを暗号化するものであり、かつ、乱数生成回路を備え、乱数生成回路は、乱数生成アルゴリズムと、単位変換パラメータデータから取得された乱数生成パラメータとに基づいて乱数を順次生成し、暗号制御回路は、暗号制御回路に順次入力される平文データから順次一部を切出して、切出された一部の平文データと生成された乱数との排他的論理和を出力するサイクルを繰り返すことで、平文データを暗号化してもよい。
【０３４４】
上記暗号処理装置において、乱数生成パラメータは、乱数生成アルゴリズムが用いる初期値および演算係数の少なくとも１つであり、乱数生成回路は、初期値および演算係数の少なくとも１つに基づいて、乱数生成アルゴリズムを繰り返し実行することによって、サイクル毎に異なる乱数を順次生成してもよい。
【０３４５】
上記暗号処理装置において、乱数生成回路は、所定期間毎に乱数生成パラメータを取得する元となる単位変換パラメータデータを変更してもよい。
【０３４６】
上記暗号処理装置において、乱数生成アルゴリズムは複数の関数式を備え、乱数生成回路は、サイクル毎に取得される乱数生成パラメータに基づいて複数の関数式から１つの関数式を選択し、選択された関数式を実行することによって、サイクル毎に異なる乱数を順次生成してもよい。
【０３４７】
上記暗号処理装置において、単位変換パラメータデータのどの部分を第１種データとして記録するかを定める規則を特定するデータがメモリセルアレイに記録されていてもよい。
【０３４８】
上記暗号処理装置において、規則を特定するデータの少なくとも一部が第１種データとして記録されていてもよい。
【０３４９】
上記暗号処理装置は、消去コマンドの入力を受け入れ可能に構成され、かつ、消去コマンドが入力されると変換パラメータデータのうち第２種データとして記録されている部分を書き換える、第２書き換え回路をさらに備えてもよい。
【０３５０】
上記暗号処理装置は、消去コマンドの入力を受け入れ可能に構成され、かつ、消去コマンドが入力されると変換パラメータデータのうち第１種データとして記録されている部分を書き換える、第１書き換え回路をさらに備えてもよい。
【０３５１】
上記暗号処理装置において、暗号制御回路は、平文データの入力を受け入れ可能に構成され、かつ、変換パラメータデータを用いて平文データを暗号化するものであり、さらに、暗号制御回路が直前に平文データの暗号化を実行してからの経過時間を検出するタイマ回路と、経過時間が予め設定された時間を超えた場合に、変換パラメータデータの少なくとも一部を書き換える、第３書き換え回路と、を備えてもよい。
【０３５２】
上記暗号処理装置において、暗号制御回路は、変換パラメータデータを用いて暗号化された暗号文データを復号化するものであり、タイマ回路は、暗号制御回路が平文データの暗号化を実行した時の時刻情報を記録し、暗号制御回路が次回に暗号文データを復号化するときに、記憶された時刻情報に基づいて経過時間を検出してもよい。
【０３５３】
上記暗号処理装置において、暗号制御回路は、平文データの入力を受け入れ可能に構成され、かつ、変換パラメータデータを用いて平文データを暗号化し、かつ、暗号化により得られた暗号文データをメモリセルアレイに記録してもよい。
【０３５４】
上記暗号処理装置において、記録されたデータは、第１種データと第２種データとを含み、第１種データは、各メモリセルの抵抗値が初期抵抗値範囲にあるか否かの違いを利用して記録されており、第２種データは、各メモリセルの抵抗値が初期抵抗値範囲にあるか否かの違いを利用せずに、各メモリセルの抵抗値が少なくとも一つの可変抵抗値範囲にあるか否かの違いを利用して記録されており、変換パラメータデータの少なくとも一部が第１種データとして記録されており、暗号制御回路は、暗号文データを第２種データとして記録してもよい。
【０３５５】
上記暗号処理装置において、変換パラメータデータは複数の単位変換パラメータデータからなり、メモリセルアレイには、複数のアドレスのそれぞれに対応して、アドレス変換データと単位変換パラメータデータとが第１種データとして記録されており、暗号制御回路は、アドレスの入力を受け入れ可能に構成され、かつ、入力されたアドレスとアドレス変換データとに基づいて決定される変換後アドレスを取得し、かつ、変換後アドレスに記録されている第１種データから単位変換パラメータデータを取得し、かつ、取得された単位変換パラメータデータを用いて平文データを暗号化してもよい。
【０３５６】
上記暗号処理装置において、メモリセルアレイには、複数のアドレスのそれぞれに対応して、ランダムに配置された変換後アドレスが、アドレス変換データとして記録されており、暗号制御回路は、アドレス変換データから、入力されたアドレスに対応して記録されている変換後アドレスを取得してもよい。
【０３５７】
上記暗号処理装置において、メモリセルアレイには、入力されたアドレスに基づいて変換後アドレスを決定するための変換規則が、アドレス変換データとして記録されていてもよい。
【０３５８】
［装置構成］
図２４は、第１実施形態にかかる暗号処理装置の概略構成の一例を示すブロック図である。以下、第１実施形態の暗号処理装置２００について、図面を参照しつつ説明する。なお、参考形態において説明した用語等については、本実施形態においても同じ意味で用いる（以下、他の実施形態においても同様）。
【０３５９】
図２４に示す例では、本実施形態の暗号処理装置２００は、暗号制御回路１１２と、メモリセルアレイ９０とを備えている。
【０３６０】
暗号制御回路１１２は、変換パラメータデータ１１１を用いて、平文データの暗号化および暗号文データの復号化の少なくとも一方を実行する。すなわち、暗号制御回路１１２は、平文データの暗号化のみを実行するものであってもよいし、暗号文データの復号化のみを実行するものであってもよいし、平文データの暗号化および暗号文データの復号化の両方を実行するものであってもよい。
【０３６１】
「平文データ」には、例えば、平文鍵データおよび平文コンテンツデータ等が含まれる。
【０３６２】
「暗号文データ」には、例えば、暗号文鍵データおよび暗号文コンテンツデータ等が含まれる。
【０３６３】
暗号制御回路１１２は、制御機能を有するものであればよく、演算処理部（図示せず）と、制御プログラムを記憶する記憶部（図示せず）とを備えていてもよい。演算処理部としては、ＭＰＵ、ＣＰＵが例示される。記憶部としては、予めプログラムコードを記憶する不揮発性メモリ（例えばＥＥＰＲＯＭ）と前記プログラムコードを展開して実行するための揮発メモリ（例えばＳＲＡＭやＤＲＡＭ）が例示される。暗号制御回路１１２は、集中制御を行う単独の制御回路で構成されていてもよく、互いに協働して分散制御を行う複数の制御回路で構成されていてもよい。暗号制御回路１１２は、暗号化を実行する制御回路と復号化を実行する制御回路とを、それぞれ独立に備えていてもよい。「回路」とは、部品としてのユニットでもよいし、チップでもよいし、ＣＰＵとメモリとを組み合わせた機能的なユニットであってもよい（参考形態においても同様）。
【０３６４】
メモリセルアレイ９０は、各メモリセルが初期状態にあるか可変状態にあるかの違いを利用して記憶されているデータに変換パラメータデータ１１１が含まれていることを除けば、第１参考形態で説明した構成と同様とすることができる。よって、詳細な説明を省略する。
【０３６５】
変換パラメータデータ１１１は、例えば、複数の単位変換パラメータデータを並べて一つのデータとしたものにできる。あるいは、変換パラメータデータは、例えば、複数の単位変換パラメータデータを並べて一つのデータとしたものを所定の規則に従って変換したデータとすることができる。複数の単位変換パラメータデータのそれぞれは、例えば、暗号文データが記憶される装置（暗号処理装置または暗号文コンテンツ記憶装置）の書き込みブロック（記憶ブロック単位）毎に対応して、メモリセルアレイ９０に記憶されていてもよい。
【０３６６】
変換パラメータデータ１１１の一部が第１種データとして記録されており、変換パラメータデータの残部が第２種データとして記録されていてもよい。
【０３６７】
変換パラメータデータ１１１は複数の単位変換パラメータデータ１１３からなっていてもよい。この場合において、複数の単位変換パラメータデータ１１３のそれぞれにつき、単位変換パラメータデータ１１３の一部が第１種データ１１４として記録され、かつ、単位変換パラメータデータ１１３の残部が第２種データ１１５として記録され、複数の単位変換パラメータデータ１１３のそれぞれにつき、単位変換パラメータデータ１１３のどの部分を第１種データ１１４として記録するかが互いに異なっていてもよい。
【０３６８】
この場合には、どのビットが第１種データで、どのビットが第２種データであるかの約束事項を予め知ったものにしか正常に読み出すことができないように暗号文データを記録できる。また、該約束事項自体が単位変換パラメータデータ毎に異なるため、約束事項を知らない者が読み出すことはさらに困難となる。つまり盗み読みすることが非常に困難な仕組みを導入できる。
【０３６９】
単位変換パラメータデータ１１３とは、例えば、１まとまりの平文データを暗号化するために必要な１組の暗号化パラメータを表すデータとすることができる。変換パラメータデータ１１１は、例えば、複数の単位変換パラメータデータ１１３をまとめて一つのデータとしたものとすることができる。１まとまりの平文データとは、平文データ全体であってもよいし、平文データを複数の単位平文データに分割して得られる各単位平文データであってもよい。単位平文データは、複数バイト（ブロック）単位、または複数のビットが連なるストリーム単位で構成されていてもよいし、ビット単位またはバイト単位で構成されていてもよい。複数の単位変換パラメータデータのそれぞれは、例えば、１まとまりの平文データが暗号化されてなる１まとまりの暗号文データ毎に対応していてもよい。
【０３７０】
図２５は、第１実施形態における変換パラメータデータ、単位変換パラメータデータ、第１種データ、および第２種データの関係の一例を示す概念図である。
【０３７１】
図２５に示す例では、変換パラメータデータ１１１は、５個の単位変換パラメータデータ１１３から構成されている。それぞれの単位変換パラメータデータ１１３は、一部が第１種データ１１４として記録されており、残部が第２種データ１１５として記録されている。図に示す通り、個々の単位変換パラメータデータ１１３において、どの部分を第１種データ１１４として記録し、どの部分を第２種データ１１５として記録するかは異なっている。
【０３７２】
図２５に示す例では、それぞれの単位変換パラメータデータ１１３の先頭から所定数のビット列を第１種データ１１４とし、残りのビット列を第２種データ１１５としている。しかしながら、かかる態様に限定されず、例えば、先頭部分を第２種データ１１５として記録してもよいし、単位変換パラメータデータを３以上の部分に分割して、各部分を第１種データ１１４と第２種データ１１５とに割り当ててもよい。
【０３７３】
単位変換パラメータデータ１１３のどの部分を第１種データ１１４として記録するかを定める規則を特定するデータがメモリセルアレイ９０に記録されていてもよい。該規則を特定するデータの少なくとも一部が第１種データ１１４として記録されていてもよい。
【０３７４】
暗号制御回路１１２は、平文データの入力を受け入れ可能に構成され、かつ、変換パラメータデータ１１１を用いて平文データを暗号化し、かつ、暗号化により得られた暗号文データをメモリセルアレイ９０に記録してもよい。暗号制御回路１１２は、暗号文データを第２種データ１１５として記録してもよい。
【０３７５】
第１実施形態においても、参考形態において説明した変形が適用可能である。
【０３７６】
［第１変形例］
第１変形例は、いわゆるストリーム暗号を用いて平文データを暗号化するものである。以下、本変形例の説明に先立ち、ストリーム暗号について概説する。
【０３７７】
ストリーム暗号は、共通鍵暗号方式（暗号化と復号化とに共通の秘密鍵とアルゴリズムを用いる暗号方式）の一種である。共通鍵暗号方式と異なる暗号方式として、暗号化と復号化に異なる鍵を用いる公開鍵暗号方式がある。共通鍵暗号方式は、公開鍵暗号方式と異なり、事前に同一の秘密鍵を送信側と受信側とで共有する必要があるため、いわゆる鍵配送問題の解決が課題となる。しかしながら、共通鍵暗号方式は、処理速度が公開鍵暗号方式よりも速いという利点がある。
【０３７８】
共通鍵暗号は、“ブロック暗号”と“ストリーム暗号”の二つに分類できる。ブロック暗号では、平文データ（暗号化前のデータ）を６４ビットや１２８ビット単位のブロックに分割し、それぞれのブロックを暗号化する。ストリーム暗号では、平文データをデータストリームとして扱い、ビット単位およびバイト単位等で逐次暗号化する。ブロック暗号もストリーム暗号も共に、変換パラメータデータ（共通鍵、擬似乱数生成アルゴリズムが用いる初期値、鍵のビット長、および、暗号化されるブロックのブロック長等）が異なると、これを用いて得られる暗号文データが異なる。変換パラメータデータを秘匿することで、暗号文データを復号化することは事実上困難となる。
【０３７９】
ストリーム暗号では、平文データと同じ長さの乱数系列を利用者間で共有する。平文データと乱数系列の排他的論理和を取ることで、暗号化および復号化を行う。平分データは非常に長くなりうるため、平文データと同じ長さの乱数系列を予め生データとして共有しておくことは合理的でない。従って一般には初期化ベクトル（ＩＶ：Initialization Vector）および秘密鍵等をシードとしてキーストリームと呼ばれる任意長の擬似乱数系列を生成する。得られたキーストリームＺと平文データＭの排他的論理和を取ることで暗号文データＣを導出する（Ｃ＝Ｍ  ｘｏｒ  Ｚ）。また、復号の際には暗号文ＣとキーストリームＺの排他的論理和を取ることで元の平文Ｍを導出する（Ｃ  ｘｏｒ  Ｚ＝Ｍ  ｘｏｒ  Ｚ  ｘｏｒ  Ｚ＝Ｍ）。
【０３８０】
ストリーム暗号では、前述の擬似乱数生成アルゴリズムが、得られる暗号文データとその安全性を決定するポイントとなる。例えば、擬似乱数生成アルゴリズムに、前回の演算の出力値を次回の演算の入力値として演算を行う巡回型関数が用いられる場合、得られる乱数の生成パターンが周期性を持つのが一般的である。このような場合に、その周期が短い場合には既知の平文データを用いて暗号文データと比較することで擬似乱数生成アルゴリズムが推察され、暗号が解読される恐れがある。そのため、擬似乱数生成アルゴリズムは、例えば、平文データとそれに対応する暗号データとから推察される可能性が低いものが採用される。
【０３８１】
擬似乱数生成アルゴリズムは大きく二つの段階に区別できる。第１は、秘密鍵またはＩＶ等を用いて擬似乱数生成回路の内部状態を初期化する段階である。第２は、内部状態を更新しながらキーストリームを生成する段階である。前者は鍵スケジューリングアルゴリズム（ＫＳＡ：Key Scheduling Algorithm）、後者は擬似乱数生成アルゴリズム（ＰＲＧＡ：Pseudo-Random Generation Algorithm）と呼ばれる。ＰＲＧＡの方式は、内部状態の違いに基づいて、線形フィードバックシフトレジスタ（ＬＦＳＲ：Linear Feedback Shift Register）型および状態遷移型の２つに区別される。ＬＦＳＲ型は、ＬＦＳＲから得られるビット列を非線形関数に通すことでキーストリームを生成する手法である。状態遷移型はレジスタ内の情報を所定の規則でスワップ等することにより撹拌し、得られた情報自体をキーストリームとして出力する手法である。
【０３８２】
本変形例では、変換パラメータデータを、メモリセルアレイ９０に第１種データとして記録する。変換パラメータデータとしては、秘密鍵、ＩＶ、非線形関数の係数や次数、スワップする周期および長さ等、多様な選択肢があり、いずれを採用してもよい。変換パラメータデータは、平文データを暗号化して暗号文データを取得するために必要な情報、および、暗号文データを復号化して平文データを取得するために必要な情報、の少なくともいずれかであればよい。
【０３８３】
本変形例におけるストリーム暗号として、Alleged ＲＣ４（Arcfour）を採用してもよい。ArcfourはインターネットのプロトコルであるＳＳＬ（Secure Sockets Layer）および無線ＬＡＮ用のプロトコルであるＷＥＰ（Wired Equivalent Privacy）等、様々な標準規格に採用されている。
【０３８４】
Arcfourは、秘密鍵の鍵長のビット数を８ビットから２０４８ビットの間から選択でき、該秘密鍵を用いて８ビット単位でキーストリームを出力する。安全性の観点から、１２８ビット以上の鍵長のビット数を採用することが推奨されている。Arcfourの内部状態は、２α個の要素を持つ配列と２個のポインタから構成されており、要素とポインタとは、それぞれαビットの変数である。ここでαは可変な値であり、一般にα＝８が採用される。変更することによって暗号のアルゴリズムが変化する。Arcfourのアルゴリズムはスワップ処理を中心としたアルゴリズムである。非常に短いコードで記述できることが特徴で、広く利用される理由でもある。
【０３８５】
以下にアルゴリズム例を示す。
【０３８６】
配列Ｓ（ｉ）  ０≦ｉ≦２５５の各変数に適当な初期値を代入する。ここでは、一例として、０〜２５５の値を代入する。
【０３８７】
Ｓ（ｉ）＝（ａ＋ｉ）ｍｏｄ  ２５６・・・・・・・・・・・・（１）
（ｉ＝０，１，２，３，・・・２５５）、（ａ＝０）
Ａ  ｍｏｄ  ＢはＡをＢで割ったときの余りを意味する。ここで、割り算の分母であるＢは前述の鍵長のビット数αの値で決定される。今回の例では２８＝２５６となる。
【０３８８】
次に、配列Ｋ（ｉ）  ０≦ｉ≦２５５の各変数に、秘密鍵の値を、順次に代入する。例えば、秘密鍵が“ｈｅｌｌｏ”であるとすると、これをアスキーコードで変換すれば、１６進表示で６８ｈ，６５ｈ，６Ｃｈ，６Ｃｈ，８Ｄｈとなる。そこで、Ｋ（０），Ｋ（１），Ｋ（２），Ｋ（３），Ｋ（４），Ｋ（５），・・・に、６８ｈ，６５ｈ，６Ｃｈ，６Ｃｈ，８Ｄｈ，６８ｈ，・・・と順次に代入する。
【０３８９】
Ｋ（ｉ）＝秘密鍵を順次代入・・・・・・・・・・・・・・・（２）
さらに、
ｊ＝（ｊ＋Ｓ（ｉ）＋Ｋ（ｉ））ｍｏｄ  ２５６・・・・・・・（３）
ｊの初期値は０とする。数式（３）の計算を、ｉ＝０について行い、得られたｉとｊとを用いて、Ｓ（ｉ）とＳ（ｊ）の値を入れ替える。この処理を、ｉの値を１ずつ増やしながら、ｉ＝２５５に至るまで順次行う。
【０３９０】
さらに、暗号化の対象となる平文データの文字数（バイト数）をＸとするとき、以下の数式の計算をＸ回実施する。具体的には、ｉ，ｊの初期値をゼロとし、ｎが１からＸになるまで、（４）から（９）の演算を繰り返す。
【０３９１】
Ｍ（ｎ）＝平文データ中のｎ番目の文字のアスキー値（バイト）・・・・・・・・（４）
ｉ＝（ｉ＋１）ｍｏｄ  ２５６・・・・・・・・・・・・・・・・（５）
ｊ＝（ｊ＋Ｓ（ｉ））ｍｏｄ  ２５６・・・・・・・・・・・・・（６）
Ｓ（ｉ）とＳ（ｊ）の値を交換・・・・・・・・・・・・・・・・（７）
Ｔ＝（Ｓ（ｉ）＋（Ｓ（ｊ）ｍｏｄ  ２５６））ｍｏｄ  ２５６・・・・・・・・（８）
Ｃ（ｎ）＝Ｍ（ｎ）  ｘｏｒ  Ｓ（Ｔ）・・・・・・・・・・・・（９）
式（９）の結果で出力されるＣ（ｎ）が暗号文データということになる。
【０３９２】
このようなアルゴリズムを採用したストリーム暗号において、例えば式（１）で示した初期値（オフセット量）であるａ、式（２）で代入される秘密鍵、鍵長を決めるαの値等が変更されると、平文データが同じでも、得られる暗号文データは異なる。また、一般に暗号アルゴリズムと秘密鍵のハッキングは、複数の短い既知の平文データを故意に暗号化させ、その結果である暗号文データの差分や変化を解析する事で行われる。そのため、式（３）で実行される秘密鍵の交換周期が長い場合や、式（７）による交換周期が長い場合には、解析に必要な暗号文データの長さが充分に長くなり、現実的な時間で解析を完了することを極めて困難にすることができる。
【０３９３】
更に、後述のとおり、変換パラメータデータ１１１（前述したArcfourの例では秘密鍵、オフセット量ａ、鍵長のビット数αが例示される）を第１種データ１１４と第２種データ１１５の組合せによって記憶する場合には、当該変換パラメータデータ１１１を容易に読み出せないように隠蔽することができる。そして、変換パラメータデータ１１１が複数の単位変換パラメータデータ１１３を含む場合、これらの複数の単位変換パラメータデータ１１３の中から選択的に暗号化に採用することにより、暗号文データの暗号規則を任意の単位で変更することができる。これにより暗号アルゴリズムに多くの派生が生成され、さらにアルゴリズムの解析が困難となるため、暗号文データのセキュリティーを大きく向上せしめる。
【０３９４】
なお、以上に説明したストリーム暗号の方式はあくまで一例であり、他の公知の方式が採用されてもよい。
【０３９５】
以上の点を踏まえ、第１変形例にかかる暗号処理装置について説明する。
【０３９６】
第１変形例において、変換パラメータデータ１１１は複数の単位変換パラメータデータ１１３からなる。複数の単位変換パラメータデータ１１３のそれぞれにつき、単位変換パラメータデータ１１３の一部が第１種データ１１４として記録され、かつ、単位変換パラメータデータ１１３の残部が第２種データ１１５として記録されている。さらに、複数の単位変換パラメータデータ１１３のそれぞれにつき、単位変換パラメータデータ１１３のどの部分を第１種データ１１４として記録するかが互いに異なっている。
【０３９７】
図２６は、第１実施形態の第１変形例にかかる暗号処理装置の概略構成の一例を示すブロック図である。
【０３９８】
図２６に示す例では、第１変形例の暗号処理装置２１０は、擬似乱数生成回路１１６を備えている。擬似乱数生成回路１１６は、擬似乱数生成アルゴリズムと、単位変換パラメータデータ１１３から取得された擬似乱数生成パラメータとに基づいて擬似乱数を順次生成し、暗号制御回路１１２へと出力する。単位変換パラメータデータ１１３は、擬似乱数生成回路１１６がメモリセルアレイ９０から直接取得してもよいし、擬似乱数生成回路１１６が暗号制御回路１１２を介して間接的に取得してもよい。
【０３９９】
暗号制御回路１１２は、平文データ１７１の入力を受け入れ可能に構成され、かつ、変換パラメータデータ１１１を用いて平文データ１７１を暗号化する。より具体的には、暗号制御回路１１２は、暗号制御回路１１２に順次入力される平文データ１７１から順次一部を切出す。さらに暗号制御回路１１２は、切出された一部の平文データと、擬似乱数生成回路１１６から入力された擬似乱数との排他的論理和を出力するサイクルを繰り返すことで、平文データ１７１を暗号化する。かかる暗号化により、暗号制御回路１１２から暗号文データ１７２が出力される。すなわち、暗号制御回路１１２は、ストリーム暗号を用いて平文データ１７１を暗号化する。
【０４００】
擬似乱数生成パラメータは、擬似乱数生成アルゴリズムが用いる初期値（例えば、Arcfourにおけるオフセット量ａ）および演算係数（例えば、Arcfourにおける秘密鍵および鍵長のビット数α等）の少なくとも１つであり、擬似乱数生成回路１１６は、初期値および演算係数の少なくとも１つに基づいて、擬似乱数生成アルゴリズムを繰り返し実行することによって、サイクル毎に異なる擬似乱数を順次生成してもよい。なお、初期値としてオフセット量ａのパラメータを例示したが、これに限定されない。例えば初期値の値や代入規則を決定するものなど、初期値を決定する様々な変形例が用いられる。
【０４０１】
擬似乱数生成回路１１６は、所定期間毎に擬似乱数生成パラメータを取得する元となる単位変換パラメータデータ１１３を変更してもよい。「所定期間」とは、個々のサイクルであってもよいし、暗号化および復号化の対象となる平文データ毎に区切られた期間であってもよいし、平文データを所定のビット長毎に区切った期間であってもよい。いずれの単位変換パラメータデータ１１３を用いるかを定めるデータが、平文データおよび暗号文データに付加されていてもよい。
【０４０２】
例えば、暗号文データを記憶する単位（記憶ブロック単位ともいう）ごとに、単位変換パラメータデータ１１３を変えてもよい。これにより、仮に、記憶された暗号文データを盗み読みされた場合であっても、記憶ブロック単位に暗号アルゴリズムの暗号規則が異なるため、ハッキングすることが極めて困難となる。また、万が一、１つの記憶ブロックの暗号文データがハッキングされ解読された場合であっても、別のブロックは異なる暗号規則で暗号化されているため、ハッキングが成功したブロックと同じ方式で復号しても解読されない。つまり、前述の単位変換パラメータデータ１１３を変える記憶ブロック単位を小さくすればするほど、暗号アルゴリズムに派生が増えて、ハッキングに対する堅牢性が増加する。また、１つ暗号文データが解読されたときの被害を低減できる。各ブロックにおける単位変換パラメータデータ１１３の選択肢を増やすために、単位変換パラメータデータ１１３は、極力多くの種類を記憶しておき、平文データを多くの異なるパラメータで細分化して暗号化してもよい。しかし、変換パラメータデータ１１１が記憶されるメモリセルアレイ９０の記憶容量の制限上、単位変換パラメータの種類数と記憶容量とはトレードオフの関係にあり、暗号文データが記憶される装置における記憶ブロック単位の大きさは適宜選択されうる。
【０４０３】
擬似乱数生成アルゴリズムは複数の関数式を備え、擬似乱数生成回路１１６は、サイクル毎に擬似乱数生成パラメータを取得し、取得された擬似乱数生成パラメータに基づいて複数の関数式から１つの関数式を選択し、選択された関数式を実行することによって、サイクル毎に異なる擬似乱数を順次生成してもよい。
【０４０４】
複数の関数式は、具体的には例えば、上記式（５）の他に、式（５）の（ｉ＋１）の項を、（ｉ＋１）  ｘｏｒ  ｛（ｉ＋１）＞＞１｝に変更した式（５）’を用意することによって得られる。これにより、式（５）と式（５）’とから選択的に変更することができる。
【０４０５】
ｉ＝（ｉ＋１）  ｘｏｒ  ｛（ｉ＋１）＞＞１｝  ｍｏｄ  ２５６・・・・・・（５）’
上記＞＞１は、（ｉ＋１）の値を２進数表記したときに、減算する方向に１ビットシフトすることを表す。上記（ｉ＋１）  ｘｏｒ  ｛（ｉ＋１）＞＞１｝によって生成されるコードを一般にグレイコードと呼ぶ。つまり、上記式（５）’は、入れ替える順序を単純増加順に行うか、グレイコード順に行うかの変化を与え、暗号規則に変化を与えている。
【０４０６】
以上の点を除き、第１変形例にかかる暗号処理装置２１０（図２６）は、第１実施形態の暗号処理装置２００（図２４）と同様の構成とすることができる。よって、図２６と図２４とで共通する構成要素については、同一の符号および名称を付して、詳細な説明を省略する。
【０４０７】
なお、上記では、擬似乱数生成回路において、擬似乱数生成パラメータを擬似乱数生成アルゴリズムに入力して擬似乱数を生成していたが、当該処理は、擬似乱数に限定されず、真の乱数であってもよい。本明細書における「乱数」には、擬似乱数および真の乱数の両方が含まれる。
【０４０８】
本変形例においても、参考形態および第１実施形態で説明した変形が適用可能である。
【０４０９】
本変形例によれば、変換パラメータデータ１１１が複数の単位変換パラメータデータ１１３から構成されることにより、暗号化の際の暗号規則を任意の単位で変更することができる。これにより、暗号化アルゴリズムに多くの派生が生成され、アルゴリズムの解析を極めて困難にさせるため、暗号文データのセキュリティーを大きく向上させることができる。
【０４１０】
第１種データ１１４と第２種データ１１５の組合せにより単位変換パラメータデータ１１３（前述したArcfourの例では秘密鍵、オフセット量ａ、鍵長のビット数αが例示される）が記憶される場合、容易に読み出せないように単位変換パラメータデータ１１３を隠蔽できる。具体的には、各メモリセルの抵抗値が初期抵抗値範囲にあるか否かの違いを利用して記録された第１種データ１１４と、各メモリセルの抵抗値が初期抵抗値範囲にあるか否かの違いを利用せずに、各メモリセルの抵抗値が少なくとも一つの可変抵抗値範囲にあるか否かの違いを利用して記録され閾値が異なる第２種データ１１５とを組み合わせて用いることができる。これにより、どのビットが第１種データで、どのビットが第２種データであるかの約束事項を予め知ったものにしか正常に読み出すことができないように暗号文データを記録できる。つまり盗み読みすることが非常に困難な仕組みを導入できる。
【０４１１】
［第２変形例］
第２変形例は、消去コマンドが入力されると、変換パラメータデータのうち第２種データとして記録されている部分が書き換えられるものである。
【０４１２】
図２７は、第１実施形態の第２変形例にかかる暗号処理装置の概略構成の一例を示すブロック図である。変換パラメータデータ１１１の一部が第１種データ１１４として記録されており、変換パラメータデータ１１１の残部が第２種データ１１５として記録されている。
【０４１３】
図２７に示す例では、第２変形例の暗号処理装置２２０は、第２書き換え回路１６０を備えている。
【０４１４】
暗号処理装置２２０は、消去コマンド１７３の入力を受け入れ可能に構成されている。
【０４１５】
第２書き換え回路１６０は、暗号処理装置２２０に消去コマンド１７３が入力されると、変換パラメータデータ１１１のうち第２種データ１１５として記録されている部分を書き換える。
【０４１６】
かかる動作により、変換パラメータデータ１１１が変更され、暗号文データの復号化ができなくなる。その結果、例えば、変換パラメータデータ１１１を書き換えるだけで、暗号文データを消去した場合と同様の効果が得られる。よって、蓄積されたデータを迅速に使用不能にできる。
【０４１７】
例えば、暗号文データを、所定の記憶ブロック単位に分割されたブロックごとに記憶する場合、記憶ブロック単位ごとに変換パラメータデータ１１１を変更してもよい。暗号文データのうち所定の記憶ブロックを消去したい場合に、その記憶ブロックに対応した変換パラメータデータ１１１の第２種データ１１５を書き換えることにより、その記憶ブロックのデータを迅速に使用不能にできる。このような機能は、暗号文データを保存する装置のデータ消去単位が、前記記憶ブロック単位よりも大きなデータ容量であるとき、記憶ブロック単位でデータを使用不能にしたいときに有効である。
【０４１８】
第２書き換え回路１６０は、具体的には例えば、メモリセルアレイ９０にデータを書き込む書き込み回路とすることができる。第２書き換え回路１６０は、暗号制御回路１１２と同一の回路であってもよい。
【０４１９】
第２書き換え回路１６０は、変換パラメータデータ１１１のうち第２種データ１１５として記録されている部分が書き込まれているアドレスと記憶ブロックのアドレス情報の対応を記憶していてもよい。この場合において、第２書き換え回路１６０は、消去コマンド１７３と消去する記憶ブロックアドレス情報が入力されると、例えば、自身が記憶しているアドレスに対応するメモリセル９１の全部に“１”または“０”を書き込んで初期化してもよいし、消去前の第２種データを読み出して所定の規則で変更したものをオーバーライトしてもよい。
【０４２０】
第２書き換え回路１６０は暗号制御回路１１２を介して消去コマンド１７３を受け取ってもよい。暗号制御回路１１２が、変換パラメータデータ１１１のうち第２種データ１１５として記録されている部分が書き込まれているアドレスを記憶していてもよい。この場合において、第２書き換え回路１６０は、例えば、暗号制御回路１１２から消去コマンド１７３とアドレスの情報とを受け取り、当該アドレスに対応するメモリセル９１を書き換えてもよい。
【０４２１】
書き換えられるのは、第２種データ１１５として記録されている部分のみである。メモリセルアレイ９０に記録されている第１種データ１１４は繰り返し使用することができる。新たに第２種データ１１５として変換パラメータデータ１１１の残部を書き込むことで、暗号処理装置２２０を繰り返し使用することができる。
【０４２２】
以上の点を除き、第２変形例にかかる暗号処理装置２２０（図２７）は、第１実施形態の暗号処理装置２００（図２４）と同様の構成とすることができる。よって、図２７と図２４とで共通する構成要素については、同一の符号および名称を付して、詳細な説明を省略する。
【０４２３】
本変形例においても、参考形態および第１実施形態で説明した変形が適用可能である。第１変形例と第２変形例とを組み合わせてもよい。
【０４２４】
本変形例によれば、変換パラメータデータを書き換えるだけで、暗号文データを消去した場合と同様の効果が得られる。よって、蓄積されたデータを迅速に使用不能にできる。
【０４２５】
また、暗号文データが記憶ブロック単位ごとに記憶されている場合、変換パラメータデータを書き換えるだけで、暗号文データを記憶ブロック単位ごとに個別にオーバーライトして消去した場合と同様の効果が得られる。よって、データを１つずつオーバーライトして消去するような動作が必要なく、蓄積されたデータを迅速に使用不能にできる。
【０４２６】
特に、暗号文データが記憶された装置が、記憶ブロック単位よりも大きなデータ容量の消去単位で消去される場合、消去単位内に、消去したい記憶ブロックと消去しない記憶ブロックとが混在する場合がある。この場合、従来の方法であれば、消去単位内の消去しない記憶ブロックのみを別のエリアにコピーし、消去したい記憶ブロックを含む消去単位を消去する必要があり、全ての処理が完了するために大幅な時間が必要であった。しかし、上記本変形例の方法を用いれば、消去したい記憶ブロックに対応した第２種データを書き換えれば、その記憶ブロックに記憶された暗号文データを使用不能とさせることができる。また、書き換えられた新たな第２種データを、次回の変換パラメータデータの一部として使用することができる。これにより、暗号処理装置を繰り返し使用することができる。
【０４２７】
［第３変形例］
第３変形例は、消去コマンドが入力されると、変換パラメータデータのうち第１種データとして記録されている部分が書き換えられるものである。
【０４２８】
図２８は、第１実施形態の第３変形例にかかる暗号処理装置の概略構成の一例を示すブロック図である。変換パラメータデータ１１１の一部が第１種データ１１４として記録されており、変換パラメータデータ１１１の残部が第２種データ１１５として記録されている。
【０４２９】
図２８に示す例では、第２変形例の暗号処理装置２３０は、第１書き換え回路１６１を備えている。
【０４３０】
暗号処理装置２３０は、消去コマンド１７３の入力を受け入れ可能に構成されている。
【０４３１】
第１書き換え回路１６１は、暗号処理装置２３０に消去コマンド１７３が入力されると、変換パラメータデータ１１１のうち第１種データ１１４として記録されている部分を書き換える。
【０４３２】
かかる動作により、変換パラメータデータ１１１が変更され、暗号文データの復号化ができなくなる。その結果、例えば、変換パラメータデータ１１１を書き換えるだけで、暗号文データを消去したのと同様の効果が得られる。よって、蓄積されたデータを迅速に使用不能にできる。
【０４３３】
例えば、暗号文データを、所定の記憶ブロック単位に分割されたブロックごとに記憶する場合、記憶ブロック単位ごとに変換パラメータデータ１１１を変更してもよい。暗号文データのうち所定の記憶ブロックを消去したい場合に、その記憶ブロックに対応した変換パラメータデータ１１１の第１種データ１１４を書き換えることにより、その記憶ブロックのデータを迅速に使用不能にできる。このような機能は、暗号文データを保存する装置のデータ消去単位が、記憶ブロック単位よりも大きなデータ容量であるとき、記憶ブロック単位でデータを使用不能にしたいときに有効である。
【０４３４】
第１書き換え回路１６１は、具体的には例えば、メモリセルアレイ９０にデータを書き込む書き込み回路とすることができる。第１書き換え回路１６１は、暗号制御回路１１２と同一の回路であってもよい。
【０４３５】
第１書き換え回路１６１は、変換パラメータデータ１１１のうち第１種データ１１４として記録されている部分が書き込まれているアドレスと記憶ブロックのアドレス情報の対応を記憶していてもよい。この場合において、第１書き換え回路１６１は、消去コマンド１７３と消去する記憶ブロックのアドレス情報が入力されると、例えば、自身が記憶しているアドレスに対応するメモリセル９１の全部に“１”を書き込んでもよい。すなわち、対応する全てのメモリセル９１を初期状態でない状態に変更してもよい。
【０４３６】
第１書き換え回路１６１は暗号制御回路１１２を介して消去コマンド１７３を受け取ってもよい。暗号制御回路１１２が、変換パラメータデータ１１１のうち第１種データ１１４として記録されている部分が書き込まれているアドレスを記憶していてもよい。この場合において、第１書き換え回路１６１は、例えば、暗号制御回路１１２から消去コマンド１７３とアドレスの情報とを受け取り、当該アドレスに対応するメモリセル９１を書き換えてもよい。
【０４３７】
書き換えられるのは、第１種データ１１４として記録されている部分である。第１種データ１１４が変更されるが、該変更は不可逆的である。よって、暗号処理装置を廃棄する際にかかる変更を行えば、廃棄に伴う情報漏えいの危険性を低減できる。
【０４３８】
その他に、所定の機能を許可または禁止することを示すパターンを、第１種データ１１４に予め設定しておくことにより、これを変更することで、当該機能の許可または禁止の状態を変更することができる。例えば、第１種データ１１４に予め決められた特異なパターン（例えば全てのビットが１）が記憶されている場合に、暗号制御回路１１２が、所定の記憶ブロックにアクセスすることを禁止する、もしくは平文データを暗号化することを禁止する、または、暗号文データを復号化することを禁止するように設定してもよい。これにより、重要なデータを記憶ブロックごとに保護した安全な廃棄が可能となる。すなわち、本変形例によれば、例えば、廃棄時に第１種データを消去することで、廃棄に伴う情報漏えいの危険性を低減できる。
【０４３９】
以上の点を除き、第３変形例にかかる暗号処理装置２３０（図２８）は、第１実施形態の暗号処理装置２００（図２４）と同様の構成とすることができる。よって、図２８と図２４とで共通する構成要素については、同一の符号および名称を付して、詳細な説明を省略する。
【０４４０】
本変形例においても、参考形態および第１実施形態で説明した変形が適用可能である。第１変形例と第２変形例と第３変形例とを任意に組み合わせてもよい。
【０４４１】
第２変形例と第３変形例とを組み合わせる場合、第１書き換え回路１６１と第２書き換え回路１６０とは同一の回路であってもよい（以下同様）。
【０４４２】
［第４変形例］
第４変形例は、平文データの暗号化を実行してからの経過時間に基づいて、変換パラメータデータを書き換えるものである。
【０４４３】
図２９は、第１実施形態の第４変形例にかかる暗号処理装置の概略構成の一例を示すブロック図である。
【０４４４】
図２９に示す例では、第４変形例の暗号処理装置２４０は、暗号制御回路１１２と、タイマ回路１６２と、第３書き換え回路１６３とを備えている。
【０４４５】
暗号制御回路１１２は、平文データ１７１の入力を受け入れ可能に構成され、かつ、変換パラメータデータ１１１を用いて平文データ１７１を暗号化する。かかる暗号化により、暗号制御回路１１２から暗号文データ１７２が出力される。
【０４４６】
タイマ回路１６２は、暗号制御回路１１２が直前に平文データ１７１の暗号化を実行してからの経過時間を検出する。ここで、「直前」とは、過去に暗号制御回路１１２が複数回に亘って平文データ１７１の暗号化処理を実行している場合には、最後の暗号化処理を行った時刻を指す。タイマ回路１６２は、検出された経過時間が予め設定された時間を超えた場合には、その旨の信号を第３書き換え回路１６３へ出力してもよい。
【０４４７】
タイマ回路１６２は、暗号制御回路１１２が平文データ１７１の暗号化を実行した時の時刻情報を記録し、暗号制御回路１１２が次回に暗号文データを復号化するときに、記憶された時刻情報に基づいて経過時間を検出してもよい。
【０４４８】
第３書き換え回路１６３は、タイマ回路１６２が検出する経過時間が予め設定された時間を超えた場合に、変換パラメータデータ１１１の少なくとも一部を書き換える。第３書き換え回路１６３は、変換パラメータデータ１１１が書き込まれているアドレスと対応する記憶ブロックのアドレス情報と、その記憶ブロックに記憶した暗号文データの暗号を実行した時の時刻情報との対応を記憶していてもよい。また、暗号制御回路１１２が、変換パラメータデータ１１１が書き込まれているアドレスを記憶していてもよく、第３書き換え回路１６３は暗号制御回路１１２からアドレスを取得してもよい。第３書き換え回路１６３は、タイマ回路１６２から、定期的に経過時間を取得してもよい。
【０４４９】
タイマ回路１６２は、暗号制御回路１１２と同一の回路であってもよい。暗号制御回路１１２がタイマ回路１６２の一部の機能を有していてもよい。例えば、タイマ回路１６２が時刻情報を出力し、暗号制御回路１１２が入力された時刻情報と前回取得した時刻情報との差分から経過時間を算出してもよい。
【０４５０】
変換パラメータデータ１１１の一部を第１種データ１１４として記録し、残部を第２種データ１１５として記録し、第３書き換え回路１６３が、タイマ回路１６２が検出する経過時間が予め設定された時間を超えた場合に、変換パラメータデータ１１１のうちの第２種データ１１５として記録されている部分を書き換えてもよい。
【０４５１】
以上の点を除き、第４変形例にかかる暗号処理装置２４０（図２９）は、第１実施形態の暗号処理装置２００（図２４）と同様の構成とすることができる。よって、図２９と図２４とで共通する構成要素については、同一の符号および名称を付して、詳細な説明を省略する。
【０４５２】
本変形例においても、参考形態および第１実施形態で説明した変形が適用可能である。第１変形例と第２変形例と第３変形例と第４変形例とを任意に組み合わせてもよい。
【０４５３】
第２変形例と第３変形例と第４変形例とを任意に組み合わせる場合、各書き換え回路は同一の回路であってもよいし、任意の組合せ毎に一の回路として構成されてもよい（以下同様）。
【０４５４】
本変形例によれば、例えば、コンテンツデータ利用に時間制限を与える運用を、容易に実現できる。さらに、時間制限を超えた場合に、変換パラメータデータ１１１のうち第２種データ１１５を書き換えることによってコンテンツデータを使用不能にできる。そのため、コンテンツデータを逐一オーバーライトする行為が不要であるため、瞬時に実行できる。コンテンツデータの使用不能化が、瞬時にできることから、例えばオーバーライト中に電源を切ることにより消去行為を強制的に中断させて、消去を妨害するような不正な行為を防止しやすくなる。
【０４５５】
［第５変形例］
第５変形例は、メモリセルアレイ上に、変換パラメータデータとアドレス変換データとを記録し、該アドレス変換データを用いてアドレスをシャフリングした上で、平文データの暗号化を行うものである。
【０４５６】
変換パラメータデータとアドレス変換データとは、第１種データとして記録されていてもよい。また、変換パラメータデータとアドレス変換データとは、ランダムデータとして記憶されていてもよい。
【０４５７】
図３０は、第１実施形態の第５変形例にかかる暗号処理装置に記録される第１種データの一例を示す図である。
【０４５８】
図３０に示す例では、変換パラメータデータは複数の単位変換パラメータデータからなる。メモリセルアレイ９０には、複数のアドレスのそれぞれに対応して、ランダムに決定されたランダムデータが、変換後アドレスと単位変換パラメータデータとを含む第１種データとして記録されている。ランダムデータは、フォーミング発生のランダム性を利用して作成されるランダムデータであってもよい。ランダムデータのうち、アドレス変換データは、ランダム性を利用して作成され、重複の無い一連のアドレス（変換後アドレス）が、各アドレスにランダムに対応付けて配置されたデータであってもよい。なお、変換後アドレスには重複があってもよい。
【０４５９】
暗号制御回路１１２は、アドレスの入力を受け入れ可能に構成されている。さらに暗号制御回路１１２は、入力されたアドレスに記録されているランダムデータから変換後アドレスを取得する。さらに暗号制御回路１１２は、変換後アドレスに記録されているランダムデータから単位変換パラメータデータを取得する。さらに暗号制御回路１１２は、取得された単位変換パラメータデータを用いて平文データ１７１を暗号化する。
【０４６０】
図３０に示す例に則して説明すると、暗号制御回路１１２に入力されるアドレスが００００であった場合、当該アドレスに対応する変換後アドレスは、ＦＦＦＤであることが分かる。暗号制御回路１１２は、アドレス００００から変換後アドレスＦＦＦＤを読み出し、アドレスＦＦＦＤにある単位変換パラメータデータ（００−１１２３２ＡＢ３９）を読み出す。さらに暗号制御回路１１２は、読み出した単位変換パラメータデータを用いて、平文データ１７１を暗号化する。具体的には例えば、“００−１１２３２ＡＢ３９”のうちの“００”の部分を、式（１）のａ（オフセット量）として用い、“１１２３２ＡＢ３９”の部分を、式（２）の秘密鍵として用いることができる。暗号制御回路１１２は、ａ（オフセット量）と秘密鍵とから生成した擬似乱数系列を用いたストリーム暗号により、平文データ１７１を暗号化し、暗号文データ１７２を出力する。
【０４６１】
図３０では、メモリセルアレイ９０にアドレス変換データとして変換後アドレスが記録されている例を用いて説明したが、メモリセルアレイ９０にアドレス変換データとして、入力されたアドレスに基づいて変換後アドレスを決定するための変換規則が記録されていてもよい。暗号制御回路１１２は、該変換規則を用いて入力されたアドレスを変換することにより、変換後アドレスを取得できる。入力されるアドレスと変換後アドレスとは１対１対応に関連付けられるような変換規則であってもよい。アドレス変換データは複数の変換規則が記録されていてもよい。暗号制御回路１１２は、複数の変換規則から１つの変換規則を選択することができる。
【０４６２】
アドレス変換データは、第２種データとして記録されていてもよい。この場合、アドレス変換データを書き換えることができるため、変換規則を変更することができる。
【０４６３】
以上の点を除き、第５変形例にかかる暗号処理装置は、第１実施形態の暗号処理装置２００（図２４）と同様の構成とすることができる。よって、両者で共通する構成要素については、同一の符号および名称を付して、詳細な説明を省略する。
【０４６４】
本変形例においても、参考形態および第１実施形態で説明した変形が適用可能である。第１変形例と第２変形例と第３変形例と第４変形例と第５変形例とを任意に組み合わせてもよい。
【０４６５】
例えば、第２変形例と第５変形例とを組み合わせる場合であって、かつアドレス変換データが第２種データとして記録されている場合に、アドレス変換データを第２書き換え回路１６０によって書き換えることができる。第２書き換え回路１６０は、第２種データを書き換えることによって、アドレス変換データと変換パラメータデータ１１１の一部とを変更してもよい。
【０４６６】
本変形例によれば、アドレスがシャフリングされ、平文データが暗号化される。よって、安全性をさらに向上できる（第６変形例および第８変形例および第１実施例参照）。アドレスをシャフリングする変換規則として、抵抗変化素子の特性により得られる予測不能なランダムデータを用いる場合、より解析が困難なシャフリングを行なうことができる。
【０４６７】
（第２実施形態）
第２実施形態の暗号処理装置は、第１実施形態の暗号処理装置であって、暗号文コンテンツデータが記録されている暗号文コンテンツ記憶装置と通信可能に構成され、暗号文コンテンツデータは、平文鍵データを用いて平文コンテンツデータを暗号化して得られたものであり、メモリセルアレイには、変換パラメータデータを用いて平文鍵データを暗号化して得られた暗号文鍵データが記録されており、暗号制御回路は、メモリセルアレイから暗号文鍵データと変換パラメータデータとを取得し、かつ、変換パラメータデータを用いて暗号文鍵データを復号化して平文鍵データを取得し、かつ、平文鍵データを用いて暗号文コンテンツ記憶装置から取得した暗号文コンテンツデータを復号化する。
【０４６８】
第２実施形態の暗号処理装置は、第１実施形態の暗号処理装置であって、暗号文コンテンツデータが記録されている暗号文コンテンツ記憶装置を備え、暗号文コンテンツデータは、平文鍵データを用いて平文コンテンツデータを暗号化して得られたものであり、メモリセルアレイには、変換パラメータデータを用いて平文鍵データを暗号化して得られた暗号文鍵データが記録されており、暗号制御回路は、メモリセルアレイから暗号文鍵データと変換パラメータデータとを取得し、かつ、変換パラメータデータを用いて暗号文鍵データを復号化して平文鍵データを取得し、かつ、平文鍵データを用いて暗号文コンテンツ記憶装置から取得した暗号文コンテンツデータを復号化してもよい。
【０４６９】
かかる構成では、仮に、暗号制御回路とメモリアレイとの通信信号が読み取られて、暗号文鍵データと変換パラメータデータが盗み読みされたとしても、暗号制御回路に組み込まれている当該暗号文鍵データを復号するためのアルゴリズムが不明な限り、暗号文鍵データを平文鍵データに復号することができない。そして、平文鍵データを入手できない以上、暗号文コンテンツデータを平文コンテンツデータに復号することができない。
【０４７０】
さらに、メモリセルアレイに記憶されている変換パラメータデータの内容を、暗号処理装置毎に異なるように構成した場合、たとえ元々同じ平文鍵データであったとしても、異なる変換パラメータデータで暗号化することにより、当該平文鍵データを、異なるデータ列を成す暗号文鍵データに変換できる。そのため、暗号処理装置毎に暗号文鍵データのデータパターンの変化を複雑化することができ、ハッキングなどの不正な解析を防止し、暗号文コンテンツデータの適正な利用を、より効果的に確保できる。
【０４７１】
上記暗号処理装置において、記録されたデータは、第１種データと第２種データとを含み、第１種データは、各メモリセルの抵抗値が初期抵抗値範囲にあるか否かの違いを利用して記録されており、第２種データは、各メモリセルの抵抗値が初期抵抗値範囲にあるか否かの違いを利用せずに、各メモリセルの抵抗値が少なくとも一つの可変抵抗値範囲にあるか否かの違いを利用して記録されており、変換パラメータデータの少なくとも一部が第１種データとして記録されており、暗号文鍵データが第２種データとして記録されていてもよい。
【０４７２】
上記暗号処理装置において、変換パラメータデータは複数の単位変換パラメータデータからなり、メモリセルアレイには、複数のアドレスのそれぞれに対応して、アドレス変換データと単位変換パラメータデータとが第１種データとして記録されており、暗号制御回路は、アドレスの入力を受け入れ可能に構成され、かつ、入力されたアドレスとアドレス変換データとに基づいて決定される変換後アドレスを取得し、かつ、変換後アドレスに記録されている第１種データから単位変換パラメータデータを取得し、かつ、取得された単位変換パラメータデータを用いて暗号文鍵データを復号化して平文鍵データを取得してもよい。
【０４７３】
上記暗号処理装置において、メモリセルアレイには、複数のアドレスのそれぞれに対応して、ランダムに配置された変換後アドレスが、アドレス変換データとして記録されており、暗号制御回路は、アドレス変換データから、入力されたアドレスに対応して記録されている変換後アドレスを取得してもよい。
【０４７４】
上記暗号処理装置において、メモリセルアレイには、入力されたアドレスに基づいて変換後アドレスを決定するための変換規則が、アドレス変換データとして記録されていてもよい。
【０４７５】
上記暗号処理装置は、第１認証データを生成する認証データ生成回路をさらに備え、暗号制御回路は、第１暗号制御回路と、第２暗号制御回路とを備え、第１暗号制御回路と認証データ生成回路は第１チップ上に形成され、第２暗号制御回路とメモリセルアレイは第１チップと異なる第２チップ上に形成され、第１暗号制御回路は、第１認証データを認証データ生成回路から受け取って記憶すると共に第２暗号制御回路に出力し、第２暗号制御回路は、第１認証データを暗号化して暗号文認証データを取得し、かつ、暗号文鍵データと変換パラメータデータとをメモリセルアレイから取得し、かつ、暗号文鍵データと変換パラメータデータと暗号文認証データとを第１暗号制御回路に出力し、第１暗号制御回路は、変換パラメータデータを用いて暗号文鍵データを復号化して平文鍵データを取得し、かつ、暗号文認証データを復号化して第２認証データを取得し、かつ、第１認証データと第２認証データとの一致度が所定の条件を満たす場合にのみ、平文鍵データを用いて暗号文コンテンツ記憶装置から取得した暗号文コンテンツデータを復号化してもよい。
【０４７６】
なお、上記態様は、第１認証データと第２認証データとの一致度が所定の条件を満たす場合にのみ第１暗号制御回路が平文鍵データを取得する場合を含む。
【０４７７】
上記暗号制御装置において、第２暗号制御回路は、変換パラメータデータを用いて第１認証データを暗号化して暗号文認証データを取得し、第１暗号制御回路は、変換パラメータデータを用いて暗号文認証データを復号化して第２認証データを取得してもよい。
【０４７８】
上記暗号制御装置において、暗号文コンテンツ記憶装置は、ハードディスク、ＣＤ、ＤＶＤ、ＢＤなどのディスクメディアや、フラッシュメモリ、ＦｅＲＡＭ（Ferroelectric Random Access Memory）、ＭＲＡＭ（Magnetoresistive Random Access Memory）、ＰＣＲＡＭ（Phase-change Random Access Memory）、ＲｅＲＡＭなどの不揮発性メモリデバイスからなる群より選ばれた少なくとも一つを備えてもよい。
【０４７９】
上記暗号制御装置において、第１種データおよび第２種データの少なくともいずれか一方は、暗号文コンテンツ記憶装置に記録されるデータに基づいて演算されるハッシュ値データを含んでもよい。
【０４８０】
上記暗号制御装置において、メモリセルアレイと暗号制御回路とが同一のチップ上に形成されていてもよい。
【０４８１】
［装置構成］
図３１は、第２実施形態にかかる暗号処理装置の概略構成の一例を示すブロック図である。以下、第２実施形態の暗号処理装置２５０について、図面を参照しつつ説明する。
【０４８２】
図３１に示す例では、本実施形態の暗号処理装置２５０は、暗号制御回路１１２とメモリセルアレイ９０とを備え、暗号文コンテンツ記憶装置１６４と通信可能に構成されている。なお、暗号処理装置２５０が暗号文コンテンツ記憶装置１６４を備えていてもよい。すなわち、暗号文コンテンツ記憶装置１６４が暗号処理装置２５０の一部であってもよい。
【０４８３】
暗号文コンテンツ記憶装置１６４は、具体的には例えば、ハードディスク、ＣＤ、ＤＶＤ、ＢＤ、フラッシュメモリ、ＦｅＲＡＭ、ＭＲＡＭ、ＰＣＲＡＭ、ＲｅＲＡＭからなる群より選ばれた少なくとも一つを備えていてもよい。
【０４８４】
暗号文コンテンツ記憶装置１６４には、暗号文コンテンツデータ１７５が記録されている。暗号文コンテンツデータ１７５は、平文鍵データ１７６を用いて平文コンテンツデータ１７４を暗号化して得られたものである。暗号化の具体的な方法は特に限定されず、例えば、共通鍵暗号方式が用いられてもよいし、公開鍵暗号方式が用いられてもよい。
【０４８５】
平文コンテンツデータ１７４としては、例えば、動画データ、および、ゲームデータ等が例示される。
【０４８６】
メモリセルアレイ９０には、暗号文鍵データ１７７が記録されている。暗号文鍵データ１７７は、変換パラメータデータ１１１を用いて平文鍵データ１７６を暗号化して得られたデータである。暗号化の具体的な方法は特に限定されず、例えば、共通鍵暗号方式が用いられてもよいし、公開鍵暗号方式が用いられてもよい。
【０４８７】
メモリセルアレイ９０と暗号制御回路１１２とが同一のチップ上に形成されていてもよい。
【０４８８】
暗号文鍵データ１７７は、その全部が第１種データ１１４として記録されていてもよいし、その全部が第２種データ１１５として記録されていてもよい。暗号文鍵データ１７７は、その一部が第１種データ１１４として記録され、残部が第２種データ１１５として記録されていてもよい。
【０４８９】
暗号制御回路１１２は、メモリセルアレイ９０から暗号文鍵データ１７７と変換パラメータデータ１１１とを取得する。さらに暗号制御回路１１２は、変換パラメータデータ１１１を用いて暗号文鍵データ１７７を復号化して平文鍵データ１７６を取得する。さらに暗号制御回路１１２は、平文鍵データ１７６を用いて暗号文コンテンツ記憶装置１６４から取得した暗号文コンテンツデータ１７５を復号化する。かかる復号化により、暗号制御回路１１２から平文コンテンツデータ１７４が出力される。
【０４９０】
第１種データ１１４および第２種データ１１５の少なくともいずれか一方は、暗号文コンテンツ記憶装置１６４に記録されるデータに基づいて演算されるハッシュ値データを含んでもよい。
【０４９１】
この場合、第１種データ１１４が暗号文コンテンツ記憶装置１６４に記録されるデータに基づいて演算されるハッシュ値データを含んでもよいし、第２種データ１１５が暗号文コンテンツ記憶装置１６４に記録されるデータに基づいて演算されるハッシュ値データを含んでもよいし、第１種データ１１４および第２種データ１１５の両方が暗号文コンテンツ記憶装置１６４に記録されるデータに基づいて演算されるハッシュ値データを含んでもよい。
【０４９２】
第２実施形態においても、参考形態、および、第１実施形態（第１〜５変形例を含む）において説明した変形が適用可能である。
【０４９３】
［第６変形例］
第６変形例は、メモリセルアレイ上に、変換パラメータデータとアドレス変換データを記録し、該アドレス変換データを用いてアドレスをシャフリングした上で、暗号文鍵データの復号化を行うものである。
【０４９４】
変換パラメータデータとアドレス変換データとは、第１種データとして記録されていてもよい。また、ランダムデータとして記憶されていてもよい。ランダムデータは、ランダム性を利用して作成され、重複の無い一連のアドレス（変換後アドレス）が、各アドレスにランダムに対応付けて配置されたデータであってもよい。メモリセルアレイ９０にアドレス変換データとして、入力されたアドレスに基づいて変換後アドレスを決定するための変換規則が記録されていてもよい。
【０４９５】
本変形例の暗号処理装置に記録される第１種データは、第５変形例において例示したもの（図３０）と同様とすることができるので、図示および詳細な説明を省略する。
【０４９６】
暗号制御回路１１２は、アドレスの入力を受け入れ可能に構成されている。さらに暗号制御回路１１２は、入力されたアドレスに記録されているランダムデータから変換後アドレスを取得する。さらに暗号制御回路１１２は、変換後アドレスに記録されているランダムデータから単位変換パラメータデータを取得する。さらに暗号制御回路１１２は、取得された単位変換パラメータデータを用いて暗号文鍵データ１７７を復号化する。
【０４９７】
図３０に示す例に則して説明すると、暗号制御回路１１２に入力されるアドレスが００００であった場合、当該アドレスに対応する変換後アドレスは、ＦＦＦＤであることが分かる。暗号制御回路１１２は、アドレス００００から変換後アドレスＦＦＦＤを読み出し、アドレスＦＦＦＤにある単位変換パラメータデータ（００−１１２３２ＡＢ３９）を読み出す。さらに暗号制御回路１１２は、読み出した単位変換パラメータデータを用いて、暗号文鍵データ１７７を暗号化する。具体的には例えば、“００−１１２３２ＡＢ３９”のうちの“００”の部分を、式（１）のａ（オフセット量）として用い、“１１２３２ＡＢ３９”の部分を、式（２）の秘密鍵として用いることができる。暗号制御回路１１２は、ａ（オフセット量）と秘密鍵とから生成した擬似乱数系列を用いたストリーム暗号により、暗号文鍵データ１７７を復号化し、平文鍵データ１７６を取得する。
【０４９８】
以上の点を除き、第６変形例にかかる暗号処理装置は、第２実施形態の暗号処理装置２５０（図３１）と同様の構成とすることができる。よって、両者で共通する構成要素については、同一の符号および名称を付して、詳細な説明を省略する。
【０４９９】
本変形例においても、参考形態、第１実施形態（第１〜５変形例を含む）、および、第２実施形態で説明した変形が適用可能である。
【０５００】
本変形例によれば、アドレスがシャフリングされ、鍵データが復号化される。よって、安全性をさらに向上できる（第５変形例および第８変形例および第１実施例を参照）。アドレスをシャフリングする変換規則として、抵抗変化素子の特性により得られる予測不能なランダムデータを用いる場合、より解析が困難なシャフリングを行なうことができる。
【０５０１】
［第７変形例］
第７変形例は、暗号制御回路の一部とメモリセルアレイとが異なるチップ上に形成されている場合において、チップ間で認証を行うことで、セキュリティーを向上させるものである。
【０５０２】
図３２は、第２実施形態の第７変形例にかかる暗号処理装置の概略構成の一例を示すブロック図である。
【０５０３】
図３２に示す例では、第７変形例の暗号処理装置２６０は、暗号制御回路１１２の代わりに第１暗号制御回路１６５と第２暗号制御回路１６６とを備え、さらに認証データ生成回路１５０を備えている。
【０５０４】
第１暗号制御回路１６５と認証データ生成回路１５０とは、第１チップ１５１上に形成されている。第２暗号制御回路１６６とメモリセルアレイ９０とは、第１チップ１５１と異なる第２チップ１５２上に形成されている。
【０５０５】
認証データ生成回路１５０は、第１認証データを生成する。
【０５０６】
第１暗号制御回路１６５は、第１認証データを認証データ生成回路１５０から受け取って記憶すると共に第２暗号制御回路１６６に出力する。
【０５０７】
第１暗号制御回路１６５は、制御機能を有するものであればよく、演算処理部（図示せず）と、制御プログラムを記憶する記憶部（図示せず）とを備えていてもよい。演算処理部としては、ＭＰＵ、ＣＰＵが例示される。記憶部としては、メモリが例示される。第１暗号制御回路１６５は、集中制御を行う単独の制御回路で構成されていてもよく、互いに協働して分散制御を行う複数の制御回路で構成されていてもよい。第１暗号制御回路１６５は、暗号化を実行する制御回路と復号化を実行する制御回路とを、それぞれ独立に備えていてもよい。
【０５０８】
第２暗号制御回路１６６は、第１認証データを暗号化して暗号文認証データを取得する。さらに第２暗号制御回路１６６は、暗号文鍵データ１７７と変換パラメータデータ１１１とをメモリセルアレイ９０から取得する。さらに第２暗号制御回路１６６は、暗号文鍵データ１７７と変換パラメータデータ１１１と暗号文認証データとを第１暗号制御回路１６５に出力する。
【０５０９】
第２暗号制御回路１６６は、制御機能を有するものであればよく、演算処理部（図示せず）と、制御プログラムを記憶する記憶部（図示せず）とを備えていてもよい。演算処理部としては、ＭＰＵ、ＣＰＵが例示される。記憶部としては、メモリが例示される。第２暗号制御回路１６６は、集中制御を行う単独の制御回路で構成されていてもよく、互いに協働して分散制御を行う複数の制御回路で構成されていてもよい。第２暗号制御回路１６６は、暗号化を実行する制御回路と復号化を実行する制御回路とを、それぞれ独立に備えていてもよい。
【０５１０】
第１暗号制御回路１６５は、変換パラメータデータ１１１を用いて暗号文鍵データ１７７を復号化して平文鍵データ１７６を取得する。さらに第１暗号制御回路１６５は、暗号文認証データを復号化して第２認証データを取得する。さらに第１暗号制御回路１６５は、第１認証データと第２認証データとの一致度が所定の条件を満たす場合にのみ、平文鍵データ１７６を用いて暗号文コンテンツ記憶装置１６４から取得した暗号文コンテンツデータ１７５を復号化する。
【０５１１】
第２暗号制御回路１６６は、変換パラメータデータ１１１を用いて第１認証データを暗号化して暗号文認証データを取得し、第１暗号制御回路１６５は、変換パラメータデータ１１１を用いて暗号文認証データを復号化して第２認証データを取得してもよい。
【０５１２】
以上の点を除き、第７変形例にかかる暗号処理装置（図３２）は、第２実施形態の暗号処理装置２５０（図３１）と同様の構成とすることができる。よって、図３２と図２４とで両者で共通する構成要素については、同一の符号および名称を付して、詳細な説明を省略する。
【０５１３】
本変形例においても、参考形態、第１実施形態（第１〜５変形例を含む）、および、第２実施形態で説明した変形が適用可能である。
【０５１４】
第６変形例と第７変形例とを組み合わせてもよい。
【０５１５】
本変形例によれば、暗号制御回路とメモリセルアレイとが異なるチップ上に形成されている場合でも、チップ間で認証を行うことで、例えば、メモリセルアレイ（不揮発性記憶装置）の成りすましが発生する可能性を低減できる。
【０５１６】
［第１実施例］
第１実施例は、第２実施形態において第６変形例と第７変形例とを組み合わせたものである。
【０５１７】
図３３は、第２実施形態の第１実施例にかかる暗号処理装置の概略構成の一例を示すブロック図である。
【０５１８】
図３３に示す例では、本実施例の暗号処理装置２７０（不揮発性メモリモジュール）は、ホストコンピュータ１５５と通信可能に接続されている。本実施例の暗号処理装置２７０は、暗号制御装置１５７（不揮発性メモリコントローラ）と、第１不揮発性記憶装置１００と、第２不揮発性記憶装置１５６（ＲＯＭ）とを備えている。第１実施例において、ホストコンピュータ１５５は、第２不揮発性記憶装置１５６のデータを読み出すことはあるが、第２不揮発性記憶装置１５６へデータを書き込むことはない。
【０５１９】
ホストコンピュータ１５５は、具体的には例えば、ＤＶＤ等のメディア再生装置、インターネットに接続されたパーソナルコンピュータ、携帯端末、電化製品に組み込まれたプロセッサーユニットおよびマイクロコントローラ等とすることができる。
【０５２０】
暗号制御装置１５７は、第１チップ１５１（図示せず）上に形成されており、第１暗号制御回路１６５（モジュール制御回路と第１メモリＩ／Ｆ回路とマルチ復号回路とを備える）と、認証データ生成回路１５０（ランダム値生成回路）と、第１入出力回路１５３（ホストＩ／Ｆ回路）と、第２入出力回路１５４（ＲＯＭＩ／Ｆ回路）とを備えている。暗号制御装置１５７は、ホストコンピュータ１５５と通信可能に接続されている。暗号制御装置１５７は、例えば、半導体プロセスで製造されるロジック回路からなるＳＯＣ（Ｓｙｓｔｅｍ  Ｏｎ  Ｃｈｉｐ）として構成されている。
【０５２１】
第１入出力回路１５３は、ホストコンピュータ１５５と第１暗号制御回路１６５との間でのデータの送受信を仲介する。第２入出力回路１５４は、第１暗号制御回路１６５と第２不揮発性記憶装置１５６との間でのデータの送受信を仲介する。
【０５２２】
認証データ生成回路１５０は、所定のアルゴリズムを用いて、第１認証データとしてのランダムデータ（ビット列）を生成し、第１暗号制御回路１６５へと出力する。
【０５２３】
第１不揮発性記憶装置１００は、第２暗号制御回路１６６（マルチ暗号制御回路）と、メモリセルアレイ９０とを備える。メモリセルアレイ９０は、第１書き込みアドレス領域１１８（フォーミング有無データエリア）と、第２書き込みアドレス領域１１９（ＨＲ／ＬＲレベルデータエリア）とを備えている。第１不揮発性記憶装置１００は、参考形態で例示したように、半導体プロセスで製造される抵抗変化型のメモリセルアレイを搭載したメモリチップとして構成されうる。
【０５２４】
第２暗号制御回路１６６は、変換パラメータデータと、これに基づいて設定される暗号化アルゴリズムとを用いて、第１暗号制御回路１６５から入力されるデータを暗号化する。変換パラメータデータはメモリセルアレイ９０の第１書き込みアドレス領域１１８を用いて記録されており、変換パラメータデータによって暗号化アルゴリズムが変更されうる。
【０５２５】
第２不揮発性記憶装置１５６は、暗号文コンテンツ記憶装置１６４に相当する。第２不揮発性記憶装置１５６は、汎用のリードオンリーメモリーデバイスチップを用いることができる。本実施例において、第２不揮発性記憶装置１５６は、フラッシュメモリにより構成されている。
【０５２６】
暗号処理装置２７０は、暗号制御装置１５７と第１不揮発性記憶装置１００と第２不揮発性記憶装置１５６とのそれぞれに対応する３つのチップが同じプリント基板上に配置されることで構成される。暗号制御装置１５７と第１不揮発性記憶装置１００と第２不揮発性記憶装置１５６との間には、信号線が適切に接続される。なお、電源配線等の図示は省略している。
【０５２７】
第１実施例においては、上記の点を除き、暗号処理装置の装置構成は、第２実施形態（図３１）と同様とすることができるので、図３３と図３１とで共通する構成要素については同一の符号および名称を付して、詳細な説明を省略する。
【０５２８】
以下、本実施例における暗号処理装置２７０の動作（暗号処理方法）について、詳細に説明する。
【０５２９】
本実施例の装置構成（図３３）においては、暗号制御装置１５７と第１不揮発性記憶装置１００とが別チップで構成されているため、両者をつなぐ信号線上の信号が盗み読みされる危険性がある。
【０５３０】
暗号制御装置１５７が平文鍵データを暗号化し、得られた暗号文鍵データを第１不揮発性記憶装置１００に記憶する場合を考える。書き込み動作を信頼のおける管理者の監視下で行うこととすれば、書き込み動作時においては、正当な権限なき第三者（以下、単に「第三者」という）に暗号文鍵データが漏洩することはない。しかし、暗号文鍵データを第１不揮発性記憶装置１００から読み出す際には、第三者に盗み読みされる可能性がある。信号線上の信号のパターンを模倣すれば、適正な第１不揮発性記憶装置１００に成りすますことができる。かかる成りすましによれば、適正でない暗号処理装置２７０を用いて、適正な暗号処理装置２７０と等価な動作ができる複製品を作成できる。本実施例によれば、かかる不正が発生する可能性を低減できる。
【０５３１】
本実施例の暗号処理に先立ち、その前提として、下記の処理が行われているものとする。
【０５３２】
図３４は、第２実施形態の第１実施例にかかる暗号処理装置に記録される第１種データの一例を示す図である。
【０５３３】
図３４に示す例では、００００からＦＦＦＦまでの夫々のアドレスに対応して、第１書き込みアドレス領域１１８と第２書き込みアドレス領域１１９とが設定されている。なお、各アドレス領域は、図９で示したような行選択回路および列選択回路に対応した物理的なアドレスに応じて切り分けられていてもよいし、それとは無関係に任意に定められた論理的な方法で切り分けられていてもよい。
【０５３４】
変換パラメータデータは複数の単位変換パラメータデータからなる。メモリセルアレイ９０には、複数のアドレスのそれぞれに対応して、ランダムに決定されたランダムデータが、変換後アドレスと単位変換パラメータデータとを含む第１種データとして、第１書き込みアドレス領域に記録されている。
【０５３５】
第１書き込みアドレス領域１１８には、各アドレスにランダムに対応するように、００００からＦＦＦＦまでの変換後アドレスが書込まれている。
【０５３６】
ここで、変換後アドレスを得る方法の一例について説明する。まず、変換後アドレスの各データの最上位ビットにあたるメモリセルについてフォーミングを行い、図８の規格化累積印加時間が５０となった時点でいったんフォーミングストレスの印加を中止する。これにより、最上位ビットのメモリセルがフォーミング済みであるビット群と、フォーミング未完了であるビット群が形成される。次いで、フォーミング未完了のビット群のうち半数に対して、監視しながら追加的にフォーミングストレスを印加する。これにより、フォーミング未完了のビット群に属するメモリセルの一部が、フォーミング済みのビット群へと変化する。このように、常に残っているフォーミング未完了のビット群の１／２に対してのみ追加のストレスを印加する操作を、最上位ビットのうち０であるビット数と１であるビット数が半数ずつになるまで、繰り返し実行する。その結果、最上位ビットの１と０のビット数が半数ずつとなる。以上の操作を、今度は、最上位ビットが０のグループ、１のグループのそれぞれにおいて、上位から２ビット目に当たるメモリセルに対して同様に行い、１と０のビット数が半数ずつとなるように行う。このように上位ビットから半数ずつ探査的にフォーミングストレスを印加することで、重複がない００００からＦＦＦＦまでの連続するデータがランダムに配置された変換後アドレスが得られる。この変換後アドレスは、デバイス固有のランダム配置のデータとなる。
【０５３７】
単位変換パラメータデータは、図８の規格化累積時間が１５０になるようにフォーミングストレスを印加し、可変状態へと変化したメモリセルをメモリセルアレイ９０中にランダムに約５０％の確率で発生させて生成することができる。単位変換パラメータデータも、デバイス固有のランダムデータとなる。
【０５３８】
すなわち、変換後アドレスも、単位変換パラメータデータも、個々の暗号処理装置２７０に固有の、予測不能なデータとなる。
【０５３９】
第２不揮発性記憶装置１５６には、読み出しアドレス（後述）と、暗号文コンテンツデータとが記録されている。暗号文コンテンツデータは、平文鍵データを用いて平文コンテンツデータを暗号化することで取得されるデータである。
【０５４０】
上記処理が完了している状態で、ホストコンピュータ１５５は、第１不揮発性記憶装置１００に鍵データを記録させると共に、第２不揮発性記憶装置１５６に記録されている暗号文コンテンツデータを、第１不揮発性記憶装置１００に記録されている鍵データを用いて復号化して利用する。
【０５４１】
まず、鍵データを第１不揮発性記憶装置１００の第２書き込みアドレス領域１１９に記憶する動作について説明する。
【０５４２】
まず、ホストコンピュータ１５５は、暗号制御装置１５７へ、書き込みコマンドと、平文鍵データ（ユーザデータ）とを送る。
【０５４３】
次に、第１暗号制御回路１６５は、書き込みアドレスを設定し、通常書き込みコマンドと共に、書き込みアドレスと、平文鍵データとを、第２暗号制御回路１６６へと送る。
【０５４４】
第２書き込みアドレス領域１１９は、図３４に示すように、各アドレスに対して固定長のデータ容量を持つように構成されている。第２暗号制御回路１６６は、第１暗号制御回路１６５から入力される書き込みアドレスに対応する変換後アドレスを読み出す。例えば入力された書き込みアドレスが０００２である場合、第２暗号制御回路１６６は、アドレス“０００２”の変換後アドレスを読み出し、そこに記録されている“０００１”の値を変換後アドレスとする。
【０５４５】
そこで、第２暗号制御回路１６６は、変換後アドレスであるアドレス“０００１”に対応する単位変換パラメータデータ“０１−Ｄ７２Ｂ３４Ａ９”を読み出す。“０１−Ｄ７２Ｂ３４Ａ９”の内の“０１”は、数式（１）のオフセット量ａとなる。“Ｄ７２Ｂ３４Ａ９”は、数式（２）で代入される秘密鍵となる。
【０５４６】
次に、第２暗号制御回路１６６は、単位変換パラメータデータから読み出したオフセット量ａと秘密鍵とを用いて、入力された平文鍵データを、数式（３）から数式（９）のアルゴリズムにより暗号化することで、暗号文鍵データ“ＹＹＹＹＹＹＹＹＹＹＹ”（Ｙはそれぞれ異なる任意の値である）を取得する。
【０５４７】
最後に、第２暗号制御回路１６６は、通常書き込みモードを用いて、暗号文鍵データを、変換後アドレス“０００１”に対応する第２書き込みアドレス領域１１９に記録する。
【０５４８】
変換後アドレスおよび単位変換パラメータデータは、いずれも暗号処理装置毎に固有のランダムデータとなる。このため、第１暗号制御回路１６５から入力される書き込みアドレスが同一でも、メモリセルアレイ９０において実際に書き込まれる物理的なメモリセルの位置は暗号処理装置ごとに異なる。さらに、暗号化アルゴリズムは同一であっても、ランダムデータを初期値と秘密鍵とに用いるため、平文鍵データが同じでも、メモリセルアレイ９０に記録される暗号文鍵データは暗号処理装置毎に異なる。すなわち、暗号処理装置毎に暗号化アルゴリズムを変更したことと等価となる。
【０５４９】
次に、第２不揮発性記憶装置１５６に記録されている暗号文コンテンツデータを、第１不揮発性記憶装置１００に記録されている鍵データを用いて復号化して利用する動作について説明する。
【０５５０】
まず、ホストコンピュータ１５５は、読み出しコマンドを、暗号処理装置２７０に入力する。
【０５５１】
次に、第１暗号制御回路１６５は、第２不揮発性記憶装置１５６から読み出しアドレスを受け取り、認証データ生成回路１５０から、第１認証データ（所定長のランダムデータ）を受け取り、特殊読み出しコマンドおよび通常読み出しコマンドと共に、読み出しアドレスと第１認証データとを第２暗号制御回路１６６へと送信する。
【０５５２】
次に、第２暗号制御回路１６６は、読み出しアドレスに対応する変換後アドレスを読み出す。第２暗号制御回路１６６は、例えば、読み出しアドレスとして“０００２”が入力された場合、アドレス“０００２”に対応する変換後アドレス“０００１”を読み出す。
【０５５３】
次に、第２暗号制御回路１６６は、特殊読み出しモードで、アドレス“０００１”に対応する第１書き込みアドレス領域１１８から、単位変換パラメータデータ“０１−Ｄ７２Ｂ３４Ａ９”を読み出す。
【０５５４】
次に、第２暗号制御回路１６６は、通常読み出しモードで、アドレス“０００１”に対応する第２書き込みアドレス領域１１９から、暗号文鍵データ“ＹＹＹＹＹＹＹＹＹＹＹ”を読み出す。
【０５５５】
次に、第２暗号制御回路１６６は、第１認証データを、単位変換パラメータデータ“０１−Ｄ７２Ｂ３４Ａ９”で変更される暗号化アルゴリズムを用いて暗号化し、暗号文認証データを取得する。
【０５５６】
次に、第２暗号制御回路１６６は、単位変換パラメータデータ“０１−Ｄ７２Ｂ３４Ａ９”と、暗号文鍵データ“ＹＹＹＹＹＹＹＹＹＹＹ”と、暗号文認証データとを合体させて合成データを取得し、該合成データを第１暗号制御回路１６５へと送信する。
【０５５７】
次に、第１暗号制御回路１６５は、第２暗号制御回路１６６から入力された合成データから、単位変換パラメータデータ“０１−Ｄ７２Ｂ３４Ａ９”を取り出し、さらに、数式（１）のオフセット量ａと、数式（２）で代入される秘密鍵とを取得する。
【０５５８】
次に、第１暗号制御回路１６５は、合成データから、暗号文鍵データ“ＹＹＹＹＹＹＹＹＹＹＹ”と、暗号文認証データとを取り出し、数式（１）のオフセット量ａと、数式（２）で代入される秘密鍵とを用いて復号化する。これにより、第１暗号制御回路１６５は、平文鍵データと、第２認証データ（第２暗号制御回路１６６により暗号化された後、さらに第１暗号制御回路１６５により復号化された、第１認証データ）とを取得する。
【０５５９】
次に、第１暗号制御回路１６５は、第２認証データが、第１認証データと一致していれば、第１不揮発性記憶装置１００が適正であると判定し、ホストコンピュータ１５５による暗号文コンテンツデータの復号化と利用とを許可する。
【０５６０】
次に、第１暗号制御回路１６５は、第２不揮発性記憶装置１５６から、第２入出力回路１５４を介して、暗号文コンテンツデータを取得する。暗号文コンテンツデータは、第１暗号制御回路１６５により、平文鍵データを用いて復号化される。復号化により取得された平文コンテンツデータは、第１暗号制御回路１６５から第１入出力回路１５３を介してホストコンピュータ１５５へと出力される。なお、第１暗号制御回路１６５は、第２不揮発性記憶装置１５６から読み出しアドレスを受け取る際に、暗号文コンテンツデータを併せて取得してもよい。
【０５６１】
以上の手順により、ホストコンピュータ１５５は、入力された平文コンテンツデータを利用することができる。
【０５６２】
本実施例では、以上のような動作により、暗号制御装置１５７と第１不揮発性記憶装置１００との間で、暗号化アルゴリズムを共有化し、セキュリティーを向上させている。例えば、暗号化アルゴリズムを知らない不正な第三者が、暗号制御装置１５７と第１不揮発性記憶装置１００との間の信号線上の信号のパターンを模倣したとしても、第１認証データが毎回異なるため、認証を通過できない。よって、不正な第三者が第１不揮発性記憶装置１００に成りすますことは困難となる。
【０５６３】
さらに具体的に説明すれば以下の通りである。例えば、第２不揮発性記憶装置１５６には、暗号化されたゲームコンテンツデータが保存されているとする。第１不揮発性記憶装置１００には、暗号化されたゲームコンテンツデータを平文のゲームコンテンツデータに復号するための鍵データが保存されている。
【０５６４】
第２不揮発性記憶装置１５６は、仕様が公開された汎用部品としうる。このとき、第三者が、単独で第２不揮発性記憶装置１５６からデータを読み出し、暗号化されたゲームコンテンツデータを複製して別の不揮発性記憶装置に記録することは比較的容易である。更に、暗号制御装置１５７も入手可能な汎用部品としうる。このとき、鍵データを読み出した際の、第１不揮発性記憶装置１００から暗号制御装置１５７に送信される信号パターンを模倣する信号発生回路を用いれば、暗号処理装置２７０の複製品を容易に作成できてしまう。かかる行為を第三者が自由に行えるとすると、コンテンツデータ管理者は大きな損害を被る。
【０５６５】
本実施例の暗号処理装置を用いた場合、読み出しコマンドと一緒に暗号制御装置１５７から第１不揮発性記憶装置１００に送信された第１認証データ（ランダムデータ）が、第１の不揮発性記憶装置１００から暗号制御装置１５７に返信される際に、鍵データを暗号化する際と同じ単位変換パラメータデータ及び暗号化アルゴリズムで暗号化されていなければ、認証を通過できない。これは、読み出し時の信号パターンを模倣するだけでは実現できない。
【０５６６】
更に、第１不揮発性記憶装置１００から第１暗号制御回路１６５へと出力される合成データは、装置固有のランダムデータ（抵抗変化型素子を採用したメモリセルアレイ９０において第１種データとして記録されているデータ）を反映して、装置毎に相違する。よって、現実的な時間で暗号化アルゴリズムを特定することは極めて困難となる。
【０５６７】
また、アドレス変換データがランダムデータである場合、第１不揮発性記憶装置１００に入力される書き込みアドレスおよび読み出しアドレスと、メモリ装置内部の物理的なアドレスとが、第１種データとして記録されている装置固有のランダムデータを反映して、不規則に置換（シャフリング）される。置換のパターンは装置固有であって、一つとして同じものはない。このため、第１不揮発性記憶装置１００内部の信号線をプロービングなどにより電気的に解析することも困難となる。従って解析困難な暗号処理装置が実現できる。
【０５６８】
このように、本実施例の構成によれば、複製品を製造することが困難であり、かつ、内部データの内容を盗み読みすることも困難な、セキュリティー性に優れた暗号処理装置を実現できる。
【０５６９】
（第３実施形態）
第３実施形態の暗号処理装置は、第１実施形態の暗号処理装置であって、暗号文コンテンツ記憶装置と通信可能に構成され、かつ、暗号制御回路が、以下の（Ａ）および（Ｂ）の少なくとも一方を満たす。
【０５７０】
（Ａ）平文データである平文コンテンツデータの入力を受け入れ可能に構成され、かつ、変換パラメータデータを用いて平文コンテンツデータを暗号化し、かつ、暗号化により得られた暗号文コンテンツデータを、暗号文コンテンツ記憶装置に記録する。
【０５７１】
（Ｂ）暗号文コンテンツ記憶装置から暗号文データである暗号文コンテンツデータを取得し、かつ、変換パラメータデータを用いて暗号文コンテンツデータを復号化し、かつ、復号化により得られた平文コンテンツデータを外部に出力する。
【０５７２】
第３実施形態の暗号処理装置は、第１実施形態の暗号処理装置であって、暗号文コンテンツ記憶装置を備え、暗号制御回路が、以下の（Ａ）および（Ｂ）の少なくとも一方を満たしてもよい。
【０５７３】
（Ａ）平文データである平文コンテンツデータの入力を受け入れ可能に構成され、かつ、変換パラメータデータを用いて平文コンテンツデータを暗号化し、かつ、暗号化により得られた暗号文コンテンツデータを、暗号文コンテンツ記憶装置に記録する。
【０５７４】
（Ｂ）暗号文コンテンツ記憶装置から暗号文データである暗号文コンテンツデータを取得し、かつ、変換パラメータデータを用いて暗号文コンテンツデータを復号化し、かつ、復号化により得られた平文コンテンツデータを外部に出力する。
【０５７５】
かかる構成では、暗号制御回路が（Ａ）を満たす場合には、変換パラメータデータが記録されている暗号制御回路と、当該変換パラメータデータで暗号化された暗号文コンテンツデータが記録されている暗号文コンテンツ記憶装置とを、共通の変換パラメータデータを介して対応付けることができる。
【０５７６】
これにより、暗号文コンテンツデータを、暗号処理装置と対応付けて保護することができる。例えば、変換パラメータデータが暗号処理装置毎に異なる場合、暗号文コンテンツデータが記憶された暗号文コンテンツ記憶装置が直接的に複製されたとしても、暗号に用いられた変換パラメータデータを利用できる装置でなければ、複製された暗号文コンテンツデータを復号することができない。すなわち、暗号制御回路が（Ａ）を満たすことにより、暗号化されたコンテンツデータは安全に保管できる。
【０５７７】
また、暗号制御回路が（Ｂ）を満たす場合には、暗号文コンテンツ記憶装置に記憶された暗号文コンテンツデータは、当該暗号文コンテンツデータを復号しうる変換パラメータデータを持つ暗号制御回路だけが、暗号文コンテンツデータを復号化して利用することができる。
【０５７８】
さらに、暗号制御回路が（Ａ）と（Ｂ）の両方を満たす場合には、暗号制御回路がコンテンツデータの暗号化および復号化の両方を行うことで、コンテンツデータの不正な利用を防止することができる。
【０５７９】
暗号制御回路が（Ａ）を満たし、かつ（Ｂ）を満たさない暗号処理装置である場合、当該暗号処理装置によって暗号化された暗号文コンテンツデータは、上記暗号処理装置とは別の装置であって、かつ、その変換パラメータに基づいて復号化を行なえる装置を用いて復号化してもよい。当該別の装置は、例えば、当該暗号化に用いられた変換パラメータデータの情報を予め知っている正当な権限を有する者によって管理される。
【０５８０】
暗号制御回路が（Ａ）を満たさず、かつ（Ｂ）を満たす場合、暗号文コンテンツ記憶装置に記憶されている暗号文コンテンツデータは、上記暗号処理装置とは別の装置であって、かつ、その変換パラメータに基づいて暗号化を行なえる装置を用いて暗号化されたものであってもよい。
【０５８１】
当該別の装置は、例えば、暗号処理装置に記憶される変換パラメータデータの情報を予め知っている正当な権限を有する者によって管理される。暗号処理装置毎に変換パラメータデータが異なる場合、上記正当な権限を有する者は、暗号処理装置と変換パラメータデータとの対応を示すテーブル等を全て入手していてもよい。
【０５８２】
例えば、正当な権限を有する者がコンテンツデータを提供する事業者である場合、当該コンテンツ事業者は、自身が提供するコンテンツデータを上記テーブルに基づいて暗号化することにより、暗号文コンテンツデータと、提供先の暗号処理装置とを対応付けることができる。
【０５８３】
このとき、提供される夫々の暗号文コンテンツデータは、対応する暗号処理装置毎に固有のデータとなるため、対応する暗号処理装置を持つ利用者のみが当該暗号文コンテンツデータを利用することができる。そのため、例えば、各暗号処理装置に対応付けられた複数の暗号文コンテンツデータをセキュリティーが低い共有サーバに一括で保管しても、当該暗号文コンテンツデータが不正利用されることを防止することができる。
【０５８４】
このように、暗号処理と復号処理を分離することで、種々の運用が可能であり、暗号処理と復号処理のタイミングや実行場所を任意に選択することができる。
【０５８５】
「暗号制御回路が、以下の（Ａ）および（Ｂ）の少なくとも一方を満たす」とは、暗号制御回路が（Ａ）のみを満たす場合でもよいし、暗号制御回路が（Ｂ）のみを満たす場合でもよいし、暗号制御回路が（Ａ）および（Ｂ）の両方を満たす場合でもよい。
【０５８６】
上記暗号処理装置において、記録されたデータは、第１種データと第２種データとを含み、第１種データは、各メモリセルの抵抗値が初期抵抗値範囲にあるか否かの違いを利用して記録されており、第２種データは、各メモリセルの抵抗値が初期抵抗値範囲にあるか否かの違いを利用せずに、各メモリセルの抵抗値が少なくとも一つの可変抵抗値範囲にあるか否かの違いを利用して記録されており、変換パラメータデータの少なくとも一部が第１種データとして記録されていてもよい。
【０５８７】
上記暗号処理装置において、変換パラメータデータは複数の単位変換パラメータデータからなり、メモリセルアレイには、複数のアドレスのそれぞれに対応して、アドレス変換データと単位変換パラメータデータとが第１種データとして記録されており、暗号制御回路は、アドレスの入力を受け入れ可能に構成され、かつ、入力されたアドレスとアドレス変換データとに基づいて決定される変換後アドレスを取得し、かつ、変換後アドレスに記録されている第１種データから単位変換パラメータデータを取得し、かつ、暗号制御回路が上記（Ａ）を満たす場合には暗号制御回路が取得した単位変換パラメータデータを用いて平文コンテンツデータを暗号化し、かつ、暗号制御回路が上記（Ｂ）を満たす場合には暗号制御回路が取得した単位変換パラメータデータを用いて暗号文コンテンツデータを復号化してもよい。
【０５８８】
上記暗号処理装置において、メモリセルアレイには、複数のアドレスのそれぞれに対応して、ランダムに配置された変換後アドレスが、アドレス変換データとして記録されており、暗号制御回路は、アドレス変換データから、入力されたアドレスに対応して記録されている変換後アドレスを取得してもよい。
【０５８９】
上記暗号処理装置において、メモリセルアレイには、入力されたアドレスに基づいて変換後アドレスを決定するための変換規則が、アドレス変換データとして記録されていてもよい。
【０５９０】
上記暗号処理装置は、第１認証データを生成する認証データ生成回路をさらに備え、暗号制御回路は、第１暗号制御回路と、第２暗号制御回路とを備え、第１暗号制御回路と認証データ生成回路は第１チップ上に形成され、第２暗号制御回路とメモリセルアレイは第１チップと異なる第２チップ上に形成され、第１暗号制御回路は、第１認証データを認証データ生成回路から受け取って記憶すると共に第２暗号制御回路に出力し、第２暗号制御回路は、第１認証データを暗号化して暗号文認証データを取得し、かつ、変換パラメータデータをメモリセルアレイから取得し、かつ、変換パラメータデータと暗号文認証データとを第１暗号制御回路に出力し、第１暗号制御回路は、暗号文認証データを復号化して第２認証データを取得し、かつ、第１認証データと第２認証データとの一致度が所定の条件を満たす場合にのみ、暗号制御回路が以下の（Ｃ）および（Ｄ）を実行してもよい。
【０５９１】
（Ｃ）暗号制御回路が上記（Ａ）を満たす場合には、取得された変換パラメータデータを用いて平文コンテンツデータを暗号化する。
【０５９２】
（Ｄ）暗号制御回路が上記（Ｂ）を満たす場合には、取得された変換パラメータデータを用いて暗号文コンテンツデータを復号化する。
【０５９３】
上記暗号制御装置において、第２暗号制御回路は、変換パラメータデータを用いて第１認証データを暗号化して暗号文認証データを取得し、第１暗号制御回路は、変換パラメータデータを用いて暗号文認証データを復号化して第２認証データを取得してもよい。
【０５９４】
上記暗号制御装置において、暗号文コンテンツ記憶装置は、フラッシュメモリ、ＦｅＲＡＭ、ＭＲＡＭ、ＰＣＲＡＭ、ＲｅＲＡＭ、ハードディスク、ＣＤ、ＤＶＤ、ＢＤからなる群より選ばれた少なくとも一つを備えてもよい。
【０５９５】
上記暗号制御装置において、第１種データおよび第２種データの少なくともいずれか一方は、暗号文コンテンツ記憶装置に記録されるデータに基づいて演算されるハッシュ値データを含んでもよい。
【０５９６】
上記暗号制御装置において、メモリセルアレイと暗号制御回路とが同一のチップ上に形成されていてもよい。
【０５９７】
［装置構成］
図３５は、第３実施形態にかかる暗号処理装置の概略構成の一例を示すブロック図である。以下、第３実施形態の暗号処理装置２８０について、図面を参照しつつ説明する。
【０５９８】
図３５に示す例では、本実施形態の暗号処理装置２８０は、暗号制御回路１１２とメモリセルアレイ９０とを備え、暗号文コンテンツ記憶装置１６４と通信可能に構成されている。なお、暗号処理装置２８０が暗号文コンテンツ記憶装置１６４を備えていてもよい。すなわち、暗号文コンテンツ記憶装置１６４が暗号処理装置２８０の一部であってもよい。
【０５９９】
暗号文コンテンツ記憶装置１６４は、具体的には例えば、ハードディスク、ＣＤ、ＤＶＤ、ＢＤ、フラッシュメモリ、ＦｅＲＡＭ、ＭＲＡＭ、ＰＣＲＡＭ、ＲｅＲＡＭからなる群より選ばれた少なくとも一つを備えていてもよい。
【０６００】
暗号文コンテンツ記憶装置１６４には、暗号文コンテンツデータ１７５が記録されている。暗号文コンテンツデータ１７５は、変換パラメータデータ１１１を用いて、平文コンテンツデータ１７４を暗号化して取得したデータであってもよい。暗号文コンテンツデータ１７５は、変換パラメータデータ１１１を用いて、平文コンテンツデータ１７４へと復号化可能なデータであってもよい。暗号化および復号化の具体的な方法は特に限定されず、例えば、共通鍵暗号方式が用いられてもよいし、公開鍵暗号方式が用いられてもよい。
【０６０１】
平文コンテンツデータ１７４としては、例えば、動画データ、および、ゲームデータ等が例示される。
【０６０２】
メモリセルアレイ９０と暗号制御回路１１２とが同一のチップ上に形成されていてもよい。
【０６０３】
暗号制御回路１１２は、平文データである平文コンテンツデータ１７４の入力を受け入れ可能に構成され、かつ、変換パラメータデータ１１１を用いて平文コンテンツデータ１７４を暗号化し、かつ、暗号化により得られた暗号文コンテンツデータ１７５を、暗号文コンテンツ記憶装置１６４に記録してもよい。
【０６０４】
暗号制御回路１１２は、暗号文コンテンツ記憶装置１６４から暗号文データである暗号文コンテンツデータ１７５を取得し、かつ、変換パラメータデータ１１１を用いて暗号文コンテンツデータ１７５を復号化し、かつ、復号化により得られた平文コンテンツデータ１７４を暗号処理装置２８０の外部に出力してもよい。
【０６０５】
変換パラメータデータ１１１の少なくとも一部が第１種データとして記録されていてもよい。
【０６０６】
第１種データは、暗号文コンテンツ記憶装置１６４に記録されるデータに基づいて演算されるハッシュ値データを含んでもよい。
【０６０７】
第３実施形態においても、参考形態および第１実施形態（第１〜５変形例を含む）において説明した変形が適用可能である。
【０６０８】
［第８変形例］
第８変形例は、メモリセルアレイ上に、変換パラメータデータとアドレス変換データとを記録し、該アドレス変換データを用いてアドレスのシャフリングした上で、コンテンツデータの暗号化／復号化を行うものである。
【０６０９】
変換パラメータデータとアドレス変換データとは、第１種データとして記録されていてもよい。また、変換パラメータデータとアドレス変換データとは、ランダムデータとして記憶されていてもよい。ランダムデータは、ランダム性を利用して作成され、重複の無い一連のアドレス（変換後アドレス）が、各アドレスにランダムに対応付けて配置されたデータであってもよい。メモリセルアレイ９０にアドレス変換データとして、入力されたアドレスに基づいて変換後アドレスを決定するための変換規則が記録されていてもよい。
【０６１０】
本変形例の暗号処理装置に記録される第１種データは、第５変形例において例示したもの（図３０）と同様とすることができるので、図示および詳細な説明を省略する。
【０６１１】
暗号制御回路１１２は、アドレスの入力を受け入れ可能に構成されている。さらに暗号制御回路１１２は、入力されたアドレスに記録されているランダムデータから変換後アドレスを取得する。さらに暗号制御回路１１２は、変換後アドレスに記録されているランダムデータから単位変換パラメータデータを取得する。
【０６１２】
暗号制御回路１１２は、平文データである平文コンテンツデータ１７４の入力を受け入れ可能に構成され、かつ、暗号制御回路１１２が取得した単位変換パラメータデータを用いて平文コンテンツデータ１７４を暗号化し、かつ、暗号化により得られた暗号文コンテンツデータ１７５を、暗号文コンテンツ記憶装置１６４に記録してもよい。
【０６１３】
暗号制御回路１１２は、暗号文コンテンツ記憶装置１６４から暗号文データである暗号文コンテンツデータ１７５を取得し、かつ、暗号制御回路が取得した単位変換パラメータデータを用いて暗号文コンテンツデータ１７５を復号化し、かつ、復号化により得られた平文コンテンツデータ１７４を暗号処理装置の外部に出力してもよい。
【０６１４】
図３０に示す例に則して説明すると、暗号制御回路１１２に入力されるアドレスが００００であった場合、当該アドレスに対応する変換後アドレスは、ＦＦＦＤであることが分かる。暗号制御回路１１２は、アドレス００００から変換後アドレスＦＦＦＤを読み出し、アドレスＦＦＦＤにある単位変換パラメータデータ（００−１１２３２ＡＢ３９）を読み出す。さらに暗号制御回路１１２は、読み出した単位変換パラメータデータを用いて、暗号文鍵データ１７７を暗号化する。具体的には例えば、“００−１１２３２ＡＢ３９”のうちの“００”の部分を、式（１）のａ（オフセット量）として用い、“１１２３２ＡＢ３９”の部分を、式（２）の秘密鍵として用いることができる。
【０６１５】
暗号制御回路１１２は、上記オフセット量と秘密鍵とを用いたストリーム暗号により、平文コンテンツデータ１７４を暗号化して暗号文コンテンツデータ１７５を取得し、これを暗号文コンテンツ記憶装置１６４に記録しうる。
【０６１６】
暗号制御回路１１２は、上記オフセット量と秘密鍵とを用いたストリーム暗号により、暗号文コンテンツデータ１７５を復号化して平文コンテンツデータ１７４を取得し、これを暗号処理装置の外部へと出力しうる。
【０６１７】
以上の点を除き、第８変形例にかかる暗号処理装置は、第３実施形態の暗号処理装置２８０（図３５）と同様の構成とすることができる。よって、両者で共通する構成要素については、同一の符号および名称を付して、詳細な説明を省略する。
【０６１８】
本変形例においても、参考形態、第１実施形態（第１〜５変形例を含む）で説明した変形が適用可能である。
【０６１９】
本変形例によれば、抵抗変化素子の特性により得られる、予測不能なランダムデータを用いてアドレスがシャフリングされ、変換パラメータデータが復号化される。これにより、メモリアレイ上の物理的なデータ保存場所と、外部から信号線などで指定される論理的なアドレスとがデバイスごとに異なる固有の関係になっている。このため、仮にデバイス内部に直接プローブなど当てて電気的にメモリセルの抵抗を読むことによって記憶されたデータがハッキングされる場合であっても、記憶されたデータを読み取られるリスクを軽減できる。また、1つのデバイスで論理的なアドレスと、物理的なメモリセル位置との対応関係が解析されたとしても、別のデバイスでは配置が異なるため、同じ解析が必要となり堅牢性および安全性をさらに向上できる（第５変形例および第６変形例および第１実施例を参照）。
【０６２０】
［第９変形例］
第９変形例は、暗号制御回路の一部とメモリセルアレイとが異なるチップ上に形成されている場合において、チップ間で認証を行うことで、セキュリティーを向上させるものである。
【０６２１】
図３６は、第３実施形態の第９変形例にかかる暗号処理装置の概略構成の一例を示すブロック図である。
【０６２２】
図３６に示す例では、第９変形例の暗号処理装置２９０は、暗号制御回路１１２の代わりに第１暗号制御回路１６５と第２暗号制御回路１６６とを備え、さらに認証データ生成回路１５０を備えている。
【０６２３】
第１暗号制御回路１６５と認証データ生成回路１５０とは、第１チップ１５１上に形成されている。第２暗号制御回路１６６とメモリセルアレイ９０とは、第１チップ１５１と異なる第２チップ１５２上に形成されている。
【０６２４】
認証データ生成回路１５０は、第１認証データを生成する。
【０６２５】
第１暗号制御回路１６５は、第１認証データを認証データ生成回路１５０から受け取って記憶すると共に第２暗号制御回路１６６に出力する。
【０６２６】
第２暗号制御回路１６６は、第１認証データを暗号化して暗号文認証データを取得する。さらに第２暗号制御回路１６６は、変換パラメータデータ１１１をメモリセルアレイ９０から取得する。さらに第２暗号制御回路１６６は、変換パラメータデータ１１１と暗号文認証データとを第１暗号制御回路１６５に出力する。
【０６２７】
第１暗号制御回路１６５は、暗号文認証データを復号化して第２認証データを取得する。
【０６２８】
第１暗号制御回路１６５は、平文データである平文コンテンツデータ１７４の入力を受け入れ可能に構成され、第１認証データと第２認証データとの一致度が所定の条件を満たす場合にのみ、第１暗号制御回路１６５が取得した変換パラメータデータを用いて平文コンテンツデータ１７４を暗号化し、かつ、該暗号化により得られた暗号文コンテンツデータ１７５を、暗号文コンテンツ記憶装置１６４に記録してもよい。
【０６２９】
第１暗号制御回路１６５は、暗号文コンテンツ記憶装置１６４から暗号文データである暗号文コンテンツデータ１７５を取得し、かつ、第１暗号制御回路１６５が取得した変換パラメータデータを用いて暗号文コンテンツデータ１７５を復号化し、かつ、復号化により得られた平文コンテンツデータ１７４を暗号処理装置の外部に出力してもよい。
【０６３０】
第２暗号制御回路１６６は、変換パラメータデータ１１１を用いて第１認証データを暗号化して暗号文認証データを取得し、第１暗号制御回路１６５は、変換パラメータデータ１１１を用いて暗号文認証データを復号化して第２認証データを取得してもよい。
【０６３１】
以上の点を除き、第９変形例にかかる暗号処理装置（図３６）は、第３実施形態の暗号処理装置２８０（図３５）と同様の構成とすることができる。よって、図３６と図３５とで両者で共通する構成要素については、同一の符号および名称を付して、詳細な説明を省略する。
【０６３２】
本変形例においても、参考形態、第１実施形態（第１〜５変形例を含む）で説明した変形が適用可能である。
【０６３３】
第８変形例と第９変形例とを組み合わせてもよい。
【０６３４】
本変形例によれば、暗号制御回路とメモリセルアレイとが異なるチップ上に形成されている場合でも、チップ間で認証を行うことで、例えば、メモリセルアレイ（不揮発性記憶装置）の成りすましが発生する可能性を低減できる。
【０６３５】
［第２実施例］
第２実施例は、第３実施形態において第８変形例を採用し、暗号処理装置がコンテンツデータの暗号化と復号化の両方を実行するものである。
【０６３６】
図３７は、第３実施形態の第２実施例にかかる暗号処理装置の概略構成の一例を示すブロック図である。
【０６３７】
図３７に示す例では、本実施例の暗号処理装置３００（不揮発性メモリモジュール）は、ホストコンピュータ１５５と通信可能に接続されている。本実施例の暗号処理装置３００は、暗号制御装置１５８（不揮発性メモリコントローラ）と、第２不揮発性記憶装置１５６とを備えている。
【０６３８】
ホストコンピュータ１５５は、具体的には例えば、ＤＶＤ等のメディア再生装置、インターネットに接続されたパーソナルコンピュータ、携帯端末、家電製品に組み込まれたプロセッサーユニットおよびマイクロコントローラ等とすることができる。
【０６３９】
暗号制御装置１５８は、暗号制御回路１１２（ストリーミング暗号／復号回路）と、第１入出力回路１５３（ホストＩ／Ｆ回路）と、第２入出力回路１５４（メモリＩ／Ｆ回路）と、第１不揮発性記憶装置１００とを備えている。暗号制御装置１５７は、ホストコンピュータ１５５と通信可能に接続されている。暗号制御装置１５７は、例えば、半導体プロセスで製造されるＣ−ＭＯＳのロジック回路チップとして構成されている。
【０６４０】
本実施例では、暗号制御回路１１２と、第１入出力回路１５３と、第２入出力回路１５４と、第１不揮発性記憶装置１００とが、同一チップ上に形成されている。同一の半導体チップ上に暗号制御回路１１２と第１不揮発性記憶装置１００とを混載することにより、信号線をプロービングすることが物理的に困難になる。よって、耐タンパー性（tamper resistant）が高まる等によりセキュリティーが向上する。
【０６４１】
特に抵抗変化型素子のメモリセルを用いた記憶装置は、抵抗変化層である金属酸化物層を低温で容易に形成できる。よって、メモリセルの製造プロセスがトランジスタの特性に影響を与えにくい。かかる理由から、抵抗変化型素子を用いたメモリセルアレイは、Ｃ−ＭＯＳ型トランジスタを形成する半導体プロセスとも親和性が高い。抵抗変化型素子のメモリセルを用いることにより、従来のフラッシュメモリよりも容易に、暗号制御回路と不揮発性記憶装置とを同一チップ上に混載できる。
【０６４２】
第１入出力回路１５３は、ホストコンピュータ１５５と暗号制御回路１１２との間でのデータの送受信を仲介する。第２入出力回路１５４は、暗号制御回路１１２と第２不揮発性記憶装置１５６との間でのデータの送受信を仲介する。
【０６４３】
第１不揮発性記憶装置１００は、メモリセルアレイ９０を備える。メモリセルアレイ９０は、第１書き込みアドレス領域１１８と、第２書き込みアドレス領域１１９とを備えている。第１不揮発性記憶装置１００は、参考形態で例示したように半導体プロセスで製造される抵抗変化型のメモリセルアレイを搭載したメモリチップとして構成されている。
【０６４４】
第２不揮発性記憶装置１５６は、暗号文コンテンツ記憶装置１６４に相当する。第２不揮発性記憶装置１５６は、汎用のリードオンリーメモリーデバイスチップを用いることができる。本実施例において、第２不揮発性記憶装置１５６は、フラッシュメモリにより構成されている。
【０６４５】
なお、本実施例において、暗号制御回路１１２と第１不揮発性記憶装置１００とが同一チップ上に混載されていなくてもよいことは言うまでもない。この場合には、第９変形例を採用することで、耐タンパー性が高まる等によりセキュリティーを向上できる。あるいは、信号線を含めチップ全体を樹脂でモールドしてもよい。あるいは、通信に用いるプロトコルを暗号化してもよい。
【０６４６】
第１不揮発性記憶装置１００と第２不揮発性記憶装置１５６とを同一装置としてもよい。この場合、第２不揮発性記憶装置１５６は、抵抗変化型素子をメモリセルに用いた記憶装置となる。第１不揮発性記憶装置１００と第２不揮発性記憶装置１５６とを別個の装置とする場合には、第２不揮発性記憶装置１５６として、例えばフラッシュメモリ、強誘電体メモリ（ＦｅＲＡＭ）、磁気抵抗変化型メモリ（ＭＲＡＭ）、相変化型メモリ（ＰＣＲＡＭ）などを用いることができる。
【０６４７】
図３７で例示するように第１不揮発性記憶装置１００のメモリセルアレイ９０には、第１書き込みアドレス領域１１８と、第２書き込みアドレス領域１１９とが存在するようにしてもよい。第１書き込みアドレス領域１１８は、特別書き込みコマンドでのみ書き込み可能であり、かつ、特別読み出しコマンドでのみ読み出し可能なメモリ領域となる。第２書き込みアドレス領域１１９は、通常書き込みコマンドでのみ書き込み可能であり、かつ、通常読み出しコマンドでのみ読み出し可能なメモリ領域となる。この二つのメモリ領域は、必ずしも物理的な領域として分割されていなくてもよい。所定の規則によって、アドレス毎に、メモリセル９１が、第１書き込みアドレス領域１１８と、第２書き込みアドレス領域１１９へと割り振られていてもよい。また、図のように必ず２つのエリアに分ける必要もなく、第１書き込みアドレス領域１１８のみとしてもよい。
【０６４８】
第２実施例においては、上記の点を除き、暗号処理装置の装置構成は、第３実施形態（図３５）と同様とすることができるので、図３７と図３５とで共通する構成要素については同一の符号および名称を付して、詳細な説明を省略する。
【０６４９】
以下、本実施例における暗号処理装置３００の動作（暗号処理方法）について、詳細に説明する。
【０６５０】
本実施例の暗号処理に先立ち、その前提として、下記の処理が行われているものとする。
【０６５１】
コンテンツデータの暗号化／復号化に用いる変換パラメータデータ（秘密鍵、暗号化アルゴリズムが用いるパラメータ等）の全部または一部を、第１種データとして、メモリセルアレイ９０の第１書き込みアドレス領域１１８に記録する。
【０６５２】
第１種データは、参考形態で説明したように、特別書き込みコマンドを用いなければ書き込むことができず、かつ、特別読み出しコマンドを用いなければ読み出すことができない。特別書き込みコマンドおよび特別読み出しコマンドを秘匿しておくことで、セキュアな状態を維持できる。
【０６５３】
更に抵抗変化型素子の特徴を活かし、最先端の微細な半導体プロセスで、暗号制御回路１１２と第１不揮発性記憶装置１００とが同一チップ上に混載されている。かかる構成では、コマンドを与える信号線を物理的に解析することも困難である。よって、特別書き込みコマンドおよび特別読み出しコマンドを秘匿しておく上でのセキュリティー性も高い暗号処理装置が提供できる。
【０６５４】
上記処理が完了している状態で、暗号制御回路１１２は、ホストコンピュータ１５５から入力される平文コンテンツデータを暗号化し、得られた暗号文コンテンツデータを第２不揮発性記憶装置１５６に記録する。また、暗号制御回路１１２は、第２不揮発性記憶装置１５６から読み出した暗号文コンテンツデータを復号化し、得られた平文コンテンツデータをホストコンピュータ１５５へと出力する。以下、具体的な動作について詳述する。
【０６５５】
なお、以下では具体的な一つの公開鍵暗号方式を用いた動作例を示すが、暗号方式には公知の多様な方法が存在する。本実施例においても、かかる公知の暗号方式を適宜に採用することができる。暗号化アルゴリズム、および、第１種データとして記録されるデータの種類等は、以下に例示する内容に限定されるものではない。
【０６５６】
説明を簡単にするため、秘密鍵を、第２不揮発性記憶装置１５６に記録されている暗号文コンテンツデータと関連付けて、第１不揮発性記憶装置１００に記録する動作（暗号処理方法）を例示する。
【０６５７】
まず、ホストコンピュータ１５５から暗号処理装置３００に、コンテンツデータを第２不揮発性記憶装置１５６に記録するように、書き込み指令（ホスト用書き込みコマンド）と平文コンテンツデータとが入力される。
【０６５８】
ここで、暗号制御回路１１２は、ランダムデータからなる秘密鍵を生成する秘密鍵生成ブロック（図示せず）を備えている。すなわち、第１変形例では、数式（２）の例において、秘密鍵は“ｈｅｌｌｏ”という文字列であったが、本実施例での秘密鍵はランダムな値となる。そこで、暗号制御回路１１２は、得られた秘密鍵を用いて、平文コンテンツデータを暗号化することで、暗号文コンテンツデータを取得する。
【０６５９】
次に、暗号制御回路１１２は、秘密鍵を構成するビット列の一部または全部を、特殊書き込みコマンドにより、メモリセルアレイ９０の第１書き込みアドレス領域１１８に、第１種データとして記録する。
【０６６０】
最後に、暗号制御回路１１２は、秘密鍵を書き込んだメモリセルアレイ９０上のアドレス（秘密鍵のアドレス）を、暗号化コンテンツデータに付加し、得られた合成データを、第２入出力回路１５４を介して第２不揮発性記憶装置１５６に記録する。
【０６６１】
以上により、第２不揮発性記憶装置１５６へのコンテンツデータの書き込み動作が完了する。
【０６６２】
次に、第２不揮発性記憶装置１５６に記録されている暗号文コンテンツデータを読み出して利用する動作（暗号処理方法）について説明する。
【０６６３】
まず、ホストコンピュータ１５５から暗号処理装置３００に、コンテンツデータを第２不揮発性記憶装置１５６から読み出すように、読み出し指令（ホスト用読み出しコマンド）が入力される。
【０６６４】
次に、暗号制御回路１１２は、第２入出力回路１５４を介して、第２不揮発性記憶装置１５６から、暗号文コンテンツデータと付加されたアドレス（秘密鍵のアドレス）とを読み出す。
【０６６５】
次に、暗号制御回路１１２は、アドレス（秘密鍵のアドレス）に対応する第１書き込みアドレス領域から、特殊読み出しコマンドを用いて、秘密鍵を読み出す。
【０６６６】
次に、暗号制御回路１１２は、読み出した秘密鍵を用いて、暗号文コンテンツデータを復号化して、平文コンテンツデータを取得する。
【０６６７】
最後に、暗号制御回路１１２は、平文コンテンツデータを、第１入出力回路１５３を介してホストコンピュータ１５５へと送信する。
【０６６８】
第２不揮発性記憶装置１５６に記憶されているコンテンツデータは暗号化されているため、容易に盗み読みすることは困難である。第１不揮発性記憶装置１００に記憶されている秘密鍵も、一般には公開されない記録方式（特殊書き込みモード）で書き込まれており、一般には公開されない記録方式（特殊読み出しモード）でしか読み出すことができない。よって、一般の利用者が秘密鍵を読み出して暗号文コンテンツデータを解読することも困難である。よって、第２実施例の構成によれば、コンテンツデータのセキュリティーを向上させた暗号制御装置を提供できる。
【０６６９】
なお、変換パラメータデータの内で、第１種データとして記録されるものは、秘密鍵に限定されない。例えば各剰余計算における分母（例では２５６）をコンテンツデータごとに変更し、変更内容を暗号文コンテンツデータと関連付けて、第１不揮発性記憶装置１００に第１種データとして記録してもよい。Ｓ（ｉ）配列の初期値をコンテンツデータごとに変更し、変更内容を暗号文コンテンツデータと関連付けて、第１不揮発性記憶装置１００に第１種データとして記録してもよい。関連付けは、例えば、各データをメモリセルアレイ９０上に第１種データとして記録したアドレスを、暗号文コンテンツデータと共に、第２不揮発性記憶装置１５６に記録したり、予め第２不揮発性記憶装置の記録ブロック単位のアドレスごとにメモリセルアレイ９０のアドレスとの対応関係を決めておくことで実現できる。
【０６７０】
なお、第１書き込みアドレス領域１１８を用いた書き込みは、不可逆な処理であるため、各メモリセルに対して、１回のみ書き込み可能となる。従って、変換パラメータデータを予めメモリセルアレイ９０にランダムに書き込んでから、暗号処理装置３００をコンテンツデータ管理者に提供してもよい。これにより、コンテンツデータ管理者は、特殊読み出しコマンドを暗号処理装置３００に入力する処理を行うだけで、暗号制御回路１１２に秘密鍵等の変換パラメータデータを取得させ、該変換パラメータデータを利用させることができる。そのため、例えば、暗号処理装置３００製造者が変換パラメータデータを書き込む場合に、暗号処理装置３００製造者は、コンテンツデータ管理者に該変換パラメータデータを公開することなく、暗号処理装置３００をコンテンツデータ管理者に利用させることができる。
【０６７１】
このとき、変換パラメータデータを、暗号処理装置毎に固有のランダムデータとすることで、第２不揮発性記憶装置１５６に記録されるデータの安全性が向上される。ある暗号処理装置が記憶している変換パラメータデータが、セキュリティー事故等により解読されたとしても、その変換パラメータデータは別の暗号処理装置に対しては有効でないためである。
【０６７２】
＜コンテンツデータ瞬間消去応用＞
次に、本実施例において、第１実施形態の第２変形例および第３変形例を採用した場合について説明する。具体的には、コンテンツデータを、例えば記録ブロック単位で瞬間消去する例について説明する。
【０６７３】
図３７において、第１不揮発性記憶装置１００内に、第１書き込みアドレス領域１１８と、第２書き込みアドレス領域１１９とが形成されている構成を例示した。このような２つの領域を持つことの有用性について説明する。
【０６７４】
例えば、第１種データとして書き込まれるデータを６４ビットとし、第２種データとして書き込まれるデータを６４ビットとし、合計１２８ビットを１つのデータワードとして、秘密鍵に割り当てる。つまり、変換パラメータデータを、第１種データとして記録されるビット列と、第２種データとして記録されるビット列とを合成したビット列によって構成する。
【０６７５】
かかる構成では、秘密鍵のような変換パラメータデータが、ホストコンピュータ１５５から認識できない第１種データと、それ以外の第２種データとで構成されることになる。暗号処理装置内で扱われる変換パラメータデータの絶対値は、ホストコンピュータ１５５からは認識できないが、例えば、ホストコンピュータ１５５は、変換パラメータデータのうち、第２種データとして記録されている部分を書き換えることで、変換パラメータデータを変更することが可能となる。これにより、特殊書き込みコマンドおよび特殊読み出しコマンドを利用者に公開することなく、かつ、変換パラメータデータの全てを外部に漏洩させることなく、一般の利用者が暗号化アルゴリズムを容易に変更できるようになる。
【０６７６】
このような機能は、記録データを不揮発性記憶装置に一時的に記憶し、不慮の漏洩を防ぐために所定時間が経過した後に消去したい場合に有用である。このようなコンテンツデータとしては、例えば、コピー機やスキャナー機といった機器が、書面をスキャンすることで取得したデータが考えられる。
【０６７７】
かかる態様において、第１実施形態の第２変形例を採用し、コンテンツデータを、例えば、第１種データと第２種データとを混合した秘密鍵で暗号化された暗号文コンテンツデータとして第２不揮発性記憶装置１５６に保存する。ホストコンピュータ１５５は、必要に応じて、暗号制御回路１１２を介して、暗号文コンテンツデータを復号化して読み出すことが可能である。
【０６７８】
一方、秘密鍵は、暗号文コンテンツデータに関連付けされて、第１不揮発性記憶装置１００内に記録されている。具体的には、暗号文コンテンツデータが第２不揮発性記憶装置１５６に記憶ブロック単位で記憶されている場合、秘密鍵は、当該記憶ブロックのアドレスと関連付けされている。ここで、ホストコンピュータ１５５が秘密鍵のうち第２種データとして記録されている部分を変更すると、当該秘密鍵に関連づけられている記憶ブロックの暗号文コンテンツデータは復号化できなくなる。
【０６７９】
つまり、秘密鍵（変換パラメータデータ）の一部を書き換えることは、当該秘密鍵に対応する暗号文コンテンツデータの一部または全てを記憶ブロック単位ごとに消去したことと等価である。例えば、暗号文コンテンツデータの全部を消去する作業には長時間がかかる場合でも、変換パラメータデータの書き換え（消去）は短時間で完了する。よって、暗号文コンテンツデータを短時間で利用不能にすることが可能となる。
【０６８０】
なお、かかる態様において、ユニークな秘密鍵が、第２不揮発性記憶装置１５６の所定の記憶ブロックに関連付けられ、該秘密鍵が当該記憶ブロックに対応付けられた暗号文コンテンツデータと関連付けられて、第１不揮発性記憶装置１００に保存されうることはいうまでもない。なお、複数の記憶ブロックに対して１つの共通の秘密鍵を関連付けて、第２不揮発性記憶装置１５６の容量に対して秘密鍵の数を調整しても良い。このような応用を用いれば以下のような問題点を解決する優れた暗号処理装置を提供できる。
【０６８１】
従来の手法では、コンテンツデータを個別に消去する場合、確実な手法として、別のデータでオーバーライトする方法が採用されていた。しかしながらオーバーライトするには処理時間が多くかかり効率的でない。
【０６８２】
さらに、例えばオーバーライト中に新たな取り込み動作が発生すると、オーバーライトを一時的に停止し、取り込み動作が終了した時点から再開する必要がある。この場合、オーバーライトを停止したアドレスを一時的に記憶しておく、といった余分な処理も必要となる。
【０６８３】
また、一般に不揮発性記憶装置として利用されているＮＡＮＤ型フラッシュメモリでは、数キロバイトのブロック単位で記録が実行される。このため、例えば消去対象となるデータのサイズが比較的小さい場合であっても、それよりも大きなブロック単位でオーバーライトするために、フラッシュメモリへの書込み回数が増加する。かかる現象は、フラッシュメモリの書き換え寿命の低下や、処理速度の低下といった悪影響を及ぼしうる。
【０６８４】
第１実施形態の第２変形例を採用すれば、第２不揮発性記憶装置１５６に記憶されたデータそのものを書き換える必要がないため、以上のような課題を一挙に解決することができる。また、上記参考形態の第１不揮発性記憶装置１００を採用することにより、第１不揮発性記憶装置１００の変換パラメータデータの書き換え処理を、所望のメモリセル毎に、高速かつ低消費電力で実行することができる。
【０６８５】
なお、第３変形例のように第１種データおよび第２種データの両方を用いて記録したビット列を変換パラメータデータに使用し、第１種データを書き換えることにすると、別途以下のような効果が得られる。
【０６８６】
すなわち、第１種データの書き込みは、事実上、各メモリセルに対して１回のみの書き込みである。よって、暗号制御装置を搭載した商品を廃棄するに当り、第１書き込みアドレス領域において初期状態にあるメモリセルを全て可変状態へと変化させることにより、暗号制御装置の不正な再利用や第２不揮発性記憶装置１５６内のデータの不正な流用を、短時間の作業で防止できる。
【０６８７】
＜時限消去応用＞
次に、本実施例において、第１実施形態の第４変形例（タイマ回路）を採用した場合について説明する。
【０６８８】
上述のように、第１種データとして書き込まれるデータが６４ビットあり、第２種データとして書き込まれるデータが６４ビットあり、合計１２８ビットを１つのデータワードとして、秘密鍵に割り当てる。
【０６８９】
さらに第２不揮発性記憶装置１５６にコンテンツデータを保存するに当り、その時点でタイマ回路が示す時刻を、コンテンツデータと関連させて、第１不揮発性記憶装置１００に第２種データとして保存する。ホストコンピュータ１５５は、必要に応じて、暗号制御回路１１２を介して、暗号文コンテンツデータを復号化して読み出すことが可能である。
【０６９０】
一方、ホストコンピュータ１５５が、コンテンツデータを読み出す際に、コンテンツデータと関連付けて記録されている時刻（コンテンツデータの書き込み時刻）と、読み出す時点でタイマ回路が示す時刻（コンテンツデータの読み出し時刻）との差分が、所定時間以上の場合、秘密鍵のうち第２種データとして記録されている部分を書き換える。これにより、ホストコンピュータ１５５は、所定時間が経過したコンテンツデータを読み出すことができなくなる。かかる態様によれば、コンテンツデータ利用に時間制限を与える運用を、容易に実現できる。
【０６９１】
なお、かかる態様において、コンテンツデータ毎に、１つずつ関連付けられたユニークな秘密鍵が、各コンテンツデータに関連付けられて、第１不揮発性記憶装置１００に保存されうることはいうまでもない。
【０６９２】
＜その他の変形：ＥＣＣパリティー付加）
本実施例の構成において、誤り訂正用のパリティービットを付加する方法について説明する。
【０６９３】
本実施例の構成において、特に第１種データのように、一般の利用者には読み出しおよび書き込みを許可しないデータを記録する場合、ホストコンピュータ１５５から入力される第２種データに加え、第１種データを含めて、誤り訂正用のパリティービットを付加してもよい。
【０６９４】
図３８は、第３実施形態の第２実施例において、誤り訂正用のパリティービットを付加する場合の暗号処理装置の概略構成の一例を示すブロック図である。
【０６９５】
本変形では、ＥＣＣ１６７が第１不揮発性記憶装置１００に追加されていること以外は図３７と同じ構成である。図３８において、第１書き込みアドレス領域１１８に参考形態で説明した方法により、第１種データとしてランダムデータを書き込む。このときＥＣＣ１６７は、ＥＣＣブロックをバイパスされ、冗長なデータは付加されない。
【０６９６】
変換パラメータデータの一部である第２種データを、第２書き込みアドレス領域１１９へ書き込むように、ホストコンピュータ１５５または暗号制御回路１１２から指示が入力されると、ＥＣＣ１６７は、変換パラメータデータのうち第１種データとして記録されている部分を第１書き込みアドレス領域１１８から読み出す。
【０６９７】
さらにＥＣＣ１６７は、それぞれ変換パラメータデータの一部をなす第１種データと第２種データとをマージして、完全な変換パラメータデータを作成し、パリティービットを第２書き込みアドレス領域１１９の所定のアドレスに記録する。
【０６９８】
逆に暗号制御回路１１２から、変換パラメータデータの読み出し指示が入力されると、ＥＣＣ１６７は、第２種データとパリティービットとを第２書き込みアドレス領域１１９の所定のアドレスから読出す。さらに、ＥＣＣ１６７は、変換パラメータデータの一部である第１種データを第１書き込みアドレス領域１１８から読出し、第１種データと第２種データとをマージして、付随するパリティービットを用いて誤り訂正を行うことで、高い信頼性で、変換パラメータデータを暗号制御回路１１２に出力する。
【０６９９】
当然ながら、一般的な手法として、第１種データと第２種データのそれぞれについて、個別にパリティービットを付加して独立に誤り訂正処理を行ってもよい。しかし、前述したとおり、第１書き込みアドレス領域１１８は、抵抗変化型素子の特性上、データの信頼性が高い。このため、共通のエラー訂正回路を用いると第１書き込みアドレス領域１１８のデータに対してはオーバースペックとなり経済的でない。データの信頼性が異なるアドレス領域を統合して共通の誤り訂正回路を用いることで、回路の効率化と簡素化を図ることができる。
【０７００】
（他の形態）
他の形態の暗号処理装置は、初期状態と可変状態との違いを利用する態様に限定せず、上記実施形態を、一般的な多値メモリに拡張するものである。本形態でも、使用する抵抗値範囲の組合せに応じて、読み出しモードおよび書き込みモードを異ならせた上で、一部のモードを秘匿することとすれば、セキュリティーを確保することが可能となる。
【０７０１】
他の形態の暗号処理装置は、複数のメモリセルがアレイ状に配置されたメモリセルアレイと暗号制御回路とを備える暗号処理装置であって、Ｎを３以上の整数とし、Ｍ１をＮ以下の正の整数とし、Ｍ２をＮ以下の正の整数とするとき、複数のメモリセルは、異なる複数の電気的信号が印加されることによって、抵抗値がＮ個の抵抗値範囲の間を可逆的に遷移し、メモリセルアレイにおいて、各メモリセルの抵抗値が互いに重複しないＭ１個の抵抗値範囲のいずれに含まれるかの違いを利用して第１種データが記録されており、各メモリセルの抵抗値が互いに重複しないＭ２個の抵抗値範囲のいずれに含まれるかの違いを利用して第２種データが記録されており、第１種データの記憶に用いられるＭ１個の抵抗値範囲の少なくともいずれかは、第２種データの記録に用いられるＭ２個の抵抗値範囲と異なり、第１種データとして変換パラメータデータの少なくとも一部が記録されており、暗号制御回路は、変換パラメータデータを用いて、平文データの暗号化および暗号文データの復号化の少なくとも一方を実行する。
【０７０２】
上記暗号処理装置において、Ｍ１はＮ未満の正の整数でもよい。
【０７０３】
上記暗号処理装置において、Ｍ２はＮ未満の正の整数でもよい。
【０７０４】
上記暗号処理装置において、変換パラメータデータの一部が第１種データとして記録され、変換パラメータデータの残部が第２種データとして記録されていてもよい。
【０７０５】
本形態においても、参考形態および実施形態で述べた変形を適宜に適用可能である。
【０７０６】
上記説明から、当業者にとっては、本発明の多くの改良や他の参考形態が明らかである。従って、上記説明は、例示としてのみ解釈されるべきであり、本発明を実行する最良の態様を当業者に教示する目的で提供されたものである。本発明の精神を逸脱することなく、その構造および／又は機能の詳細を実質的に変更できる。
【産業上の利用可能性】
【０７０７】
本発明の一態様は、不揮発性記憶装置における従来にない新規なデータ記録方法を採用した、より安全な暗号技術を提供することができる暗号処理装置として有用である。
【符号の説明】
【０７０８】
００１  メモリ本体部
００３  行選択回路／ドライバ
００４  列選択回路
００７  入出力制御回路
００８  電源制御回路
００９  アドレスレジスタ
０１０  論理制御回路
０１１  特殊／通常書き込み回路
０１２  特殊／通常センスアンプ
０１３  コントローラ
０２０  不揮発性記憶装置
０２１  メモリセルアレイ
０２２  メモリセルアレイ
０３０  データレジスタ
０３１  Ｃａｓｈｅレジスタ
０３２  特殊データレジスタ
０３３  コマンドレジスタ
０３４  ステータスレジスタ
０３５  特殊コマンドレジスタ
０３７  切替え回路
９０  メモリセルアレイ
９１  メモリセル
９２  書き込み回路
９４  読み出し回路
１００  不揮発性記憶装置
１１１  変換パラメータデータ
１１２  暗号制御回路
１１３  単位変換パラメータデータ
１１４  第１種データ
１１５  第２種データ
１１６  擬似乱数生成回路
１１８  第１書き込みアドレス領域
１１９  第２書き込みアドレス領域
１２０  抵抗変化素子
１２２  下地層
１２４  第１電極
１２６  抵抗変化層
１２８  第２電極
１３０  レファレンス電圧発生回路
１３１  ドライバ
１３２  レベル比較器
１３４  カウンタ
１３５  比較器
１３６  通常閾値レジスタ
１３７  特殊閾値レジスタ
１４０  定電流源
１５０  認証データ生成回路
１５１  第１チップ
１５２  第２チップ
１５３  第１入出力回路
１５４  第２入出力回路
１５５  ホストコンピュータ
１５６  第２不揮発性記憶装置
１５７  暗号制御装置
１５８  暗号制御装置
１６０  第２書き換え回路
１６１  第１書き換え回路
１６２  タイマ回路
１６３  第３書き換え回路
１６４  暗号文コンテンツ記憶装置
１６５  第１暗号制御回路
１６６  第２暗号制御回路
１６７  ＥＣＣ
１７１  平文データ
１７２  暗号文データ
１７３  消去コマンド
１７４  平文コンテンツデータ
１７５  暗号文コンテンツデータ
１７６  平文鍵データ
１７７  暗号文鍵データ
２００、２１０、２２０、２３０、２４０、２５０、２６０、２７０、２８０、２９０、３００  暗号処理装置
ＢＬ０，ＢＬ１，ＢＬ２，…  ビット線
Ｃ  ノード
ＣＣ２  コンデンサ
Ｍ２１１，Ｍ２１２，…  メモリセル
Ｔ１１，Ｔ１２，…  トランジスタ
ＷＬ０，ＷＬ１，ＷＬ２，…  ワード線
ＰＬ０，ＰＬ１，ＰＬ２，…  プレート線
Ｄ１１〜Ｄ３３  ２端子選択素子
【図１】
0005689571.tif 000002
【図２】
0005689571.tif 000003
【図３】
0005689571.tif 000004
【図４】
0005689571.tif 000005
【図５】
0005689571.tif 000006
【図７】
0005689571.tif 000007
【図８】
0005689571.tif 000008
【図９】
0005689571.tif 000009
【図１０】
0005689571.tif 000010
【図１１】
0005689571.tif 000011
【図１２】
0005689571.tif 000012
【図１３】
0005689571.tif 000013
【図１４】
0005689571.tif 000014
【図１５】
0005689571.tif 000015
【図１６】
0005689571.tif 000016
【図１７】
0005689571.tif 000017
【図１８】
0005689571.tif 000018
【図１９】
0005689571.tif 000019
【図２０】
0005689571.tif 000020
【図２１】
0005689571.tif 000021
【図２２】
0005689571.tif 000022
【図２３】
0005689571.tif 000023
【図２４】
0005689571.tif 000024
【図２５】
0005689571.tif 000025
【図２６】
0005689571.tif 000026
【図２７】
0005689571.tif 000027
【図２８】
0005689571.tif 000028
【図２９】
0005689571.tif 000029
【図３０】
0005689571.tif 000030
【図３１】
0005689571.tif 000031
【図３２】
0005689571.tif 000032
【図３３】
0005689571.tif 000033
【図３４】
0005689571.tif 000034
【図３５】
0005689571.tif 000035
【図３６】
0005689571.tif 000036
【図３７】
0005689571.tif 000037
【図３８】
0005689571.tif 000038
【図６】
0005689571.tif 000039