(58)【調査した分野】(Int.Cl.,DB名)
第一の方向に延伸される第一配線と、前記第一の方向と交叉する第二の方向に延伸される第二配線と、前記第一配線と対になって前記第一の方向に延伸される第三配線と、少なくとも二つの抵抗変化型の二端子素子が中間ノードを介して直列に接続されたユニット素子を少なくとも二つ並列に配置した少なくとも二つのユニット素子群とを含み、前記ユニット素子群が、前記第一配線と前記第二配線との間と、前記第三配線と前記第二配線との間とに配置される再構成論理回路のクロスバ回路において、
プログラム対象の前記ユニット素子に関して、前記第一配線、前記第二配線および前記第三配線のうち少なくともいずれかと前記中間ノードとの間に、前記二端子素子の抵抗状態が変化する基準値を超える電圧を印加して前記二端子素子の抵抗状態を変化させることによって、前記ユニット素子の選択状態を遷移させることでプログラムを行うプログラミング方法。
【背景技術】
【0002】
半導体集積回路の微細化に伴って、電界効果トランジスタの集積度は3年間で4倍になるペースで増加し、集積回路の製造に必要なフォトマスクや設計検証コストが増加してきた。その結果、ユーザが予め固定機能をカスタムで設計するASIC(Application Specific Integrated Circuit)の開発コストも急激に増加している。このような状況下で、FPGA(Field Programmable Gate Array)のように、製造後の半導体チップに対して設計者が所望の回路を電気的にプログラムできる半導体装置に注目が集まっている。
【0003】
ところで、FPGAは、ASICと比べると、同じ機能を実現するために1桁以上多くのトランジスタを必要とするため、面積効率が悪く、かつ消費電力が増大するという問題点があった。このような問題点を解決するため、FPGAのオーバーヘッドを低減し、省電力化・低電力化を目指す研究開発が行われている。上述の解決策の一つは、多層配線層の内部に抵抗変化素子(抵抗変化型不揮発素子ともよぶ)を搭載したプログラマブル配線を実現することである。このような抵抗変化素子としては、遷移金属酸化物を用いたReRAM(Resistance Random Access Memory)や、イオン伝導体を用いたNano Bridge(登録商標)などがある。
【0004】
特許文献1には、固体イオン伝導体を用いた抵抗変化素子について開示されている。特許文献1の抵抗変化素子は、イオン伝導層と、そのイオン伝導層の対向面に接して配置される第1電極および第2電極とを備える。特許文献1の抵抗変化素子は、第2電極と比べてイオン化しやすい金属で第1電極を構成し、第1電極を構成する金属の金属イオンを含む電解質材料でイオン伝導層を構成する。特許文献1の抵抗変化素子では、印加電圧極性を変えることでイオン伝導体の抵抗値を変化させ、2つの電極間の導通状態を制御する。
【0005】
図14の例は、特許文献1の抵抗変化素子110をクロスバの母線の交点に配置したクロスバ回路100である。
図14のクロスバ回路100は、複数の第1の配線121〜126と、複数の第2の配線131〜136とが互いに交叉する位置に抵抗変化素子110を配置した構成を有する。
図14においては、ON状態の素子を塗りつぶしで示し、OFF状態の素子を白抜きで示す。
図14のクロスバ回路100は、対角線上の抵抗変化素子110をON状態にすることによって、クロスバとして結線された状態を示す。
【0006】
また、特許文献2には、ULSI(Ultra-Large Scale Integration)に抵抗変化素子を用いるクロスバースイッチについて開示されている。特許文献2のクロスバースイッチでは、抵抗変化素子を直列に接続したユニット素子として利用することが開示されている。
【0007】
図17の例は、特許文献2のユニット素子210をクロスバの母線の交点に配置したクロスバ回路200である。
図17のクロスバ回路200は、複数の第1の配線221〜226と、複数の第2の配線231〜236とが互いに交叉する位置にユニット素子210を配置した構成を有する。
図17においては、ON状態の素子を塗りつぶしで示し、OFF状態の素子を白抜きで示す。
図17のクロスバ回路200では、ユニット素子210を構成する2つの抵抗変化素子を共にON状態とすることでユニット素子210をON状態とし、2つの抵抗変化素子を共にOFF状態とすることでユニット素子210をOFF状態とする。
図17のクロスバ回路200は、対角線上のユニット素子210をON状態にすることによって、クロスバとして結線された状態を示す。
【0008】
また、特許文献3には、不揮発抵抗素子を複数接続した抵抗ネットワークを二つ備える不揮発抵抗ネットワーク集合体について開示されている。特許文献3の不揮発抵抗ネットワーク集合体は、二つの抵抗ネットワークへの書き込み手段を用いて、二つの抵抗ネットワークの各々の合成抵抗値が異なるように書き込みを行う。
【0009】
また、特許文献4には、抵抗変化型不揮発性記憶素子を用いた連想メモリセルについて開示されている。特許文献4の連想メモリセルは、入力データに応答して電流パスを選択する論理回路と、記憶データを記憶する抵抗変化型不揮発性記憶素子とを有し、入力データと記憶データとの論理演算結果によって抵抗値が変化する抵抗ネットワークを備える。また、特許文献4の連想メモリセルは、入力データと記憶データとの論理演算結果によって、マッチ線から入力される信号を出力するまでの遅延時間が変化する充放電回路を備える。
【発明を実施するための形態】
【0023】
以下に、本発明を実施するための形態について図面を用いて説明する。ただし、以下に述べる実施形態には、本発明を実施するために技術的に好ましい限定がされているが、発明の範囲を以下に限定するものではない。なお、以下の実施形態の説明に用いる全図においては、特に理由がない限り、同様箇所には同一符号を付す。また、以下の実施形態において、同様の構成・動作に関しては繰り返しの説明を省略する場合がある。
【0024】
(第1の実施形態)
まず、本発明の第1の実施形態に係る半導体装置について図面を参照しながら説明する。
図1は、本実施形態の半導体装置1の構成を示す概念図である。
図2は、
図1の半導体装置1に含まれるユニット素子群10の構成を示す概念図である。
【0025】
図1のように、半導体装置1は、第一ユニット素子11と第二ユニット素子12とを含むユニット素子群10、第一配線21および第二配線22を含む。また、半導体装置1は、中間ノード選択トランジスタ30、第一選択トランジスタ35、第二選択トランジスタ36を含む。また、半導体装置1は、第一プログラミングドライバ41、第二プログラミングドライバ42および中間ノードプログラミングドライバ45を含む。また、半導体装置1は、中間ノードプログラム線33、第一デコード信号線51および第二デコード信号線52を含む。
【0026】
半導体装置1は、アレイ状に配列された複数のユニット素子群10が第一配線21および第二配線22に接続された構成を有するクロスバ回路である。第一配線21は、第一の方向に延伸される。第二配線22は、第一の方向と交叉する第二の方向に延伸される。
【0027】
半導体装置1のアレイ構造は、二つの組によって構成される。第一の組は、第一配線21、第一選択トランジスタ35および第一デコード信号線51を含む組である。第二の組は、第二配線22、第二選択トランジスタ36、第二デコード信号線52、中間ノードプログラム線33および中間ノード共通選択トランジスタ34を含む組である。半導体装置1は、第一の組と第二の組を少なくとも一つずつ含めばよい。ただし、以下においては、半導体装置1が第一の組と第二の組を複数含む例について説明する。
【0028】
半導体装置1は、複数の第一配線21および複数の第二配線22が平面視で互いに交叉するように配置された構成において、第一配線21と第二配線22とが交叉する位置にユニット素子群10が配置された構成を有する。
図1の例では、第一配線21と第二配線22とが、平面視において直角に交わるように構成される。なお、
図1においては、半導体装置1の一部のみを示し、同様の構成は省略している。
【0029】
ユニット素子群10は、少なくとも二つの抵抗変化型の二端子素子(以下、抵抗変化素子とよぶ)が中間ノード15を介して直列に接続された構成を有する。なお、抵抗変化素子は、抵抗変化型不揮発素子とも呼ばれる。
【0030】
ユニット素子群10は、第一ユニット素子11と第二ユニット素子12とが並列に接続された構成を有する。ユニット素子群10は、第一配線21と第二配線22によって構成されるクロスバの交点に配置される。なお、クロスバ回路の設計に応じて、クロスバの全ての交点にユニット素子群10を配置せず、ユニット素子群10が配置されない交点が存在してもよい。
【0031】
図2のように、第一ユニット素子11は、抵抗変化素子11−1と抵抗変化素子11−2とが直列に接続された構成を有する。抵抗変化素子11−1と抵抗変化素子11−2とは、中間ノード16を介して直列に接続される。同様に、第二ユニット素子12は、抵抗変化素子12−1と抵抗変化素子12−2とが直列に接続された構成を有する。抵抗変化素子12−1と抵抗変化素子12−2とは、中間ノード17を介して直列に接続される。抵抗変化素子11−1、11−2、12−1および12−2は、印加電圧が基準値を超えた際に抵抗状態が変化する抵抗変化型の二端子素子である。
【0032】
第一ユニット素子11の一端は、端子18−1を介して第一配線21に接続される。同様に、第二ユニット素子12の一端は、端子18−2を介して第一配線21に接続される。そして、第一ユニット素子11および第二ユニット素子12の他端は、端子19を介して第二配線22に接続される。図示しないが、第一ユニット素子11および第二ユニット素子12の他端を第二配線22に別々の端子で接続するように構成してもよい。
【0033】
図2に示す中間ノード16および中間ノード17は、
図1に示す中間ノード15に接続される。
図1のように、中間ノード15は、中間ノード選択トランジスタ30を介して、中間ノードプログラム線33と第一デコード信号線51とに接続される。
【0034】
図1のように、中間ノード選択トランジスタ30は、ユニット素子群10ごとに配置される。中間ノード選択トランジスタ30のソース端子およびドレイン端子の一方の端子は中間ノード15に接続され、他方の端子は中間ノードプログラム線33に接続される。中間ノード選択トランジスタ30のゲート端子は、第一デコード信号線51に接続される。
【0035】
また、中間ノードプログラム線33は、中間ノード共通選択トランジスタ34を介して中間ノードプログラミングドライバ45に接続される。
【0036】
中間ノード共通選択トランジスタ34のソース端子およびドレイン端子のうち一方の端子は、中間ノードプログラム線33に接続される。中間ノード共通選択トランジスタ34のソース端子およびドレイン端子のうち他方の端子は、中間ノードプログラミングドライバ45に接続される。中間ノード共通選択トランジスタ34のゲート端子は、第二デコード信号線52に接続される。
【0037】
第一選択トランジスタ35のソース端子およびドレイン端子のうち一方の端子は、第一配線21に接続される。第一選択トランジスタ35のソース端子およびドレイン端子のうち他方の端子は、第一プログラミングドライバ41に接続される。第一選択トランジスタ35のゲート端子は、中間ノード選択トランジスタ30のゲート端子と共通の第一デコード信号線51に接続される。
【0038】
第二選択トランジスタ36のソース端子およびドレイン端子のうち一方の端子は、第二配線22に接続される。第二選択トランジスタ36のソース端子およびドレイン端子のうち他方の端子は、第二プログラミングドライバ42に接続される。第二選択トランジスタ36のゲート端子は、中間ノード共通選択トランジスタ34のゲート端子と共通の第二デコード信号線52に接続される。
【0039】
第一プログラミングドライバ41は、第一選択トランジスタ35を介して第一配線21に接続される。第一プログラミングドライバ41は、第一配線21を介してユニット素子群10を構成する抵抗変化素子の抵抗状態を変化させる。
【0040】
第二プログラミングドライバ42は、第二選択トランジスタ36を介して第二配線22に接続される。第二プログラミングドライバ42は、第二配線22を介してユニット素子群10を構成する抵抗変化素子の抵抗状態を変化させる。
【0041】
中間ノードプログラミングドライバ45は、中間ノード共通選択トランジスタ34のソース端子またはドレイン端子に接続される。中間ノードプログラミングドライバ45は、中間ノードプログラム線33を介してユニット素子群10を構成する抵抗変化素子の抵抗状態を変化させる。
【0042】
ここで、第一プログラミングドライバ41、第二プログラミングドライバ42および中間ノードプログラミングドライバ45の詳細について説明する。
【0043】
図3は、第一プログラミングドライバ41、第二プログラミングドライバ42および中間ノードプログラミングドライバ45を実現するプログラミングドライバ400の構成を示す概念図である。プログラミングドライバ400は、スイッチの抵抗状態を変化させる。プログラミングドライバ400は、第一ユニット素子11および第二ユニット素子12のセット電圧V
set、リセット電圧V
rst、中間電圧V
midおよびグランド電圧Gndの供給状態とハイインピーダンス状態を提供する。
【0044】
セット電圧V
set、リセット電圧V
rst、中間電圧V
midおよびグランド電圧Gndの各電源線は、定電流トランジスタ401、出力電圧選択トランジスタ402および出力トランジスタ403を経て、外部の選択スイッチ素子に接続される。
【0045】
定電流トランジスタ401は、飽和領域においてゲート電圧を制御することによって、定電流源として動作する。定電流トランジスタ401は、電流制御端子404からの入力信号に従って、電流値を一定に制御する。
【0046】
各出力電圧選択トランジスタ402は、セット電圧V
set、リセット電圧V
rst、中間電圧V
midおよびグランド電圧Gndのいずれか1つの電圧を選び出すためのトランジスタである。各出力電圧選択トランジスタ402は、いずれか1つのトランジスタがON状態となり、残りのトランジスタはOFF状態となるように、出力電圧選択端子405からの入力信号により制御される。
【0047】
出力トランジスタ403は、プログラミングドライバ400を電圧出力状態またはハイインピーダンス状態に設定する。出力トランジスタ403は、イネーブル端子406からの入力信号により制御される。
【0048】
ここで、本発明の実施形態に係る半導体装置1に含まれるユニット素子群10を動作させた際に不良が発生する例について図面を参照しながら説明する。
図4〜
図7は、ユニット素子群10に関して、正常な場合の動作状態と、不良が発生した場合の動作状態とを比較するための概念図である。
【0049】
図4には、第一ユニット素子11および第二ユニット素子12の一端が端子18によって接続され、他端が端子19によって接続される例を示す。ユニット素子群10は、端子18を介して第一配線21に接続され、端子19を介して第二配線22に接続される。半導体装置1は、ユニット素子群10を構成する4つの抵抗変化素子のうち任意の1つの抵抗変化素子にオープン不良またはショート不良が発生しても正常に動作する。
【0050】
例えば、
図4のように、全ての抵抗変化素子(抵抗変化素子11−1、11−2、12−1、12−2)がOFF状態である場合、ユニット素子群10はOFFとして動作する。また、
図5のように、全ての抵抗変化素子(抵抗変化素子11−1、11−2、12−1、12−2)がON状態である場合、ユニット素子群10はON状態として動作する。
【0051】
ところで、
図6のように、任意の1つの素子(
図6では抵抗変化素子12−2)にショート不良が発生しても、ユニット素子群10はOFF状態を維持する。また、
図7のように、任意の1つの素子(
図7では抵抗変化素子12−2)にオープン不良が発生しても、ユニット素子群10はON状態を維持する。
【0052】
以上のように、本実施形態によれば、ビットアクセスで素子状態を読み出す際に1ビット不良が発生しても、他の3ビットの抵抗状態から正しい抵抗状態を知ることが可能であり、不良ビットを期待値に書き戻すことができる。本実施形態においては、抵抗状態の検出と書き戻しモードを動作モードに含めることによって、クロスバ回路の冗長性が損なわれない。
【0053】
また、2ビット不良においては、正しい抵抗状態を知ることはできないが、誤りの検出自身は可能である。すなわち、本実施形態のユニット素子群10を用いれば、検出結果をシステムに報告することによって最低限の動作を確保するセーフモードを設けることが可能である。
【0054】
図4〜
図7では、ユニット素子の並列度が2の場合について述べたが、
図8のように、ユニット素子の並列度は3以上であってもよい。
図8の例は、並列度が3以上のユニット素子群10−2である。
図8の場合、より多くの抵抗変化素子に不良が発生しても、ユニット素子群10は正常動作する。
【0055】
以上のように、本実施形態のユニット素子群は、抵抗変化素子を直列に接続した複数のユニット素子を並列に接続した構造を有する。その結果、本実施形態のユニット素子群を用いたクロスバ回路は、抵抗変化型素子に1ビットのオープン不良やショート不良が発生しても正常に動作する。
【0056】
ここで、半導体装置1を構成するアレイ状に配置されたユニット素子の全てがOFF状態であるときに、所望の第一配線21と第二配線22との交点に位置するユニット素子をON状態に遷移させる手順について説明する。ここでは、ユニット素子群10に含まれる抵抗変化素子はバイポーラ型素子であると仮定する。また、各抵抗変化素子は、活性電極と不活性電極とを有する。抵抗変化素子を低抵抗状態に遷移させるためには、活性電極に高電位印加する。一方で、抵抗変化素子を高抵抗状態に遷移させるためには、不活性電極に高電位印加する。ここでは、各抵抗変化素子の活性電極を第一配線21側および第二配線22側のいずれかに接続し、各抵抗変化素子の不活性電極を中間ノード15側に接続するものとする。
【0057】
まず、第一プログラミングドライバ41、第二プログラミングドライバ42および中間ノードプログラミングドライバ45が中間電圧V
midを出力するように設定する。
【0058】
次に、全ての第一デコード信号線51により全ての第一選択トランジスタ35を導通状態とし、全ての第一配線21を中間電圧V
midに設定する。また、全ての第二デコード信号線52により全ての第二選択トランジスタ36を導通状態とし、全ての第二配線22を中間電圧V
midに設定する。また、全ての第一デコード信号線51および全ての第二デコード信号線52により全ての中間ノード選択トランジスタ30を導通状態とし、全ての中間ノード15を中間電圧V
midに設定する。
【0059】
その上で、全ての第一選択トランジスタ35と、全ての第二選択トランジスタ36と、全ての中間ノード選択トランジスタ30とを非導通状態とする。
【0060】
そして、第一プログラミングドライバ41をセット電圧V
set出力とし、中間ノードプログラミングドライバ45をグランド電圧Gnd出力とし、第二プログラミングドライバ42をハイインピーダンス状態に設定する。
【0061】
その後、プログラム対象のユニット素子に係る第一デコード信号線51および第二デコード信号線52に選択レベル(本例ではHighレベル)を与え、プログラム対象のユニット素子に接続された中間ノード選択トランジスタ30が導通状態となるようにする。これにより、それぞれのユニット素子の第一配線21側に接続された抵抗変化素子にセット電圧V
setが印加される。以上の手順により、当該抵抗変化素子をON状態に遷移させることができる。
【0062】
プログラム対象外のユニット素子では、中間ノード選択トランジスタ30および中間ノード共通選択トランジスタ34の少なくとも一方が非選択状態となる。その結果、中間ノード15がGnd電位にバイアスされることはなく、プログラム電圧は印加されないため、意図しない誤書き込みは防止される。
【0063】
引き続いて、それぞれのユニット素子の第二配線22側に接続された抵抗変化素子のプログラムを同様の手順で行う。
【0064】
すなわち、全ての第一選択トランジスタ35と、全ての第二選択トランジスタ36と、全ての中間ノード選択トランジスタ30とを非導通状態に戻す。また、第一プログラミングドライバ41、第二プログラミングドライバ42および中間ノードプログラミングドライバ45の設定を全て中間電圧V
mid出力に戻す。
【0065】
その上で、全ての第一選択トランジスタ35、全ての第二選択トランジスタ36および全ての中間ノード選択トランジスタ30を導通状態に設定し、全ての第一配線21、全ての第二配線22および全ての中間ノード15を中間電圧V
midに設定する。
【0066】
その上で、第一プログラミングドライバ41をハイインピーダンス状態とし、中間ノードプログラミングドライバ45をGnd出力とし、第二プログラミングドライバ42をV
set出力に設定する。
【0067】
その後、プログラム対象のユニット素子の第一デコード信号線51または第二デコード信号線52に選択レベル(本例ではHighレベル)を与え、プログラム対象のユニット素子に接続された選択トランジスタが導通状態となるようにする。これにより、セット電圧V
setがユニット素子の第二配線22側に接続された抵抗変化素子に印加される。以上の手順により、当該抵抗変化素子をON状態に遷移させることができる。
【0068】
以上の手順において、対象ユニット素子における抵抗変化素子が全てON状態となるため、プログラムを完了することができる。
【0069】
本実施形態では、抵抗変化素子をバイポーラ型抵抗変化素子としたが、抵抗変化素子はユニポーラ型抵抗変化素子でもよく、ユニポーラ型抵抗変化素とバイポーラ型抵抗変化素子との組み合わせであってもよい。また、バイポーラ型抵抗変化素子の極性をそろえても、逆極性同士を接続してもよい。また、本例においてはユニット素子の並列度が二の場合について説明したが、ユニット素子の並列度は三以上であってもよい。
【0070】
以上のように、本実施形態の半導体装置によれば、抵抗変化素子の抵抗状態の反転を救済可能とする高信頼なクロスバ回路を提供することができる。
【0071】
(第2の実施形態)
次に、本発明の第2の実施形態に係る半導体装置について図面を参照しながら説明する。なお、第1の実施形態と同様の構成については詳細な説明は省略する。
【0072】
図9は、本実施形態の半導体装置2の構成を示す概念図である。本実施形態の半導体装置2は、第1の実施形態の半導体装置1とは異なり、第一ユニット素子11の中間ノード16と、第二ユニット素子12の中間ノード17とを、個別に中間ノードプログラム線33および第一デコード信号線51に接続する。そのため、半導体装置2は、二つの中間ノード選択トランジスタ(第一中間ノード選択トランジスタ31および第二中間ノード選択トランジスタ32)を含む。
【0073】
図9のように、第一ユニット素子11の中間ノード16は、第一中間ノード選択トランジスタ31を介して、中間ノードプログラム線33と第一デコード信号線51とに接続される。第一中間ノード選択トランジスタ31のソース端子およびドレイン端子のうち一方の端子は中間ノード16に接続され、他方の端子は中間ノードプログラム線33に接続される。第一中間ノード選択トランジスタ31のゲート端子は、第一デコード信号線51に接続される。
【0074】
同様に、第二ユニット素子12の中間ノード17は、第二中間ノード選択トランジスタ32を介して、中間ノードプログラム線33と第一デコード信号線51とに接続される。第二中間ノード選択トランジスタ32のソース端子およびドレイン端子のうち一方の端子は中間ノード17に接続され、他方の端子は中間ノードプログラム線33に接続される。第二中間ノード選択トランジスタ32のゲート端子は、第一デコード信号線51に接続される。
【0075】
以上のように、本実施形態の半導体装置においては、ユニット素子群を構成するユニット素子ごとに中間ノード選択トランジスタが配置される。本実施形態の半導体装置の構成であっても、ユニットセル群を構成する各抵抗変化素子の抵抗状態を同じ状態に設定できるので、第一の実施形態の半導体装置と同様の効果を得ることができる。
【0076】
(第3の実施形態)
次に、本発明の第3の実施形態に係る半導体装置について図面を参照しながら説明する。なお、第1および第2の実施形態と同様の構成については詳細な説明は省略する。
【0077】
図10は、本実施形態の半導体装置3の構成を示す概念図である。
図11は、
図10の半導体装置3に含まれるユニット素子群10の構成を示す概念図である。本実施形態の半導体装置3は、第1の実施形態の半導体装置1とは異なり、第一配線21および第二配線22に加えて、第三配線23を有する。第三配線23は、第一配線21と対になって第一の方向に延伸される。
【0078】
半導体装置3は、第2の実施形態の半導体装置2に、第三配線23、第三選択トランジスタ37、第三デコード信号線53およびパストランジスタ60を追加した構成を有する。
【0079】
第三配線23は、第一配線21に併進させて対として配置される。第三配線23は、第一配線21と同様に、第二配線22と交叉するように配置される。第一配線21と第三配線23とは、パストランジスタ60によって接続される。
【0080】
第一ユニット素子11は、第一配線21と第二配線22との交点に配置される。第二ユニット素子12は、第二配線22と第三配線23との交点に配置される。
図11のように、第一ユニット素子11の一端は、端子18−1を介して第一配線21に接続される。一方、第二ユニット素子12の一端は、端子18−3を介して第三配線23に接続される。第一ユニット素子11および第二ユニット素子12の他端は、端子19を介して第二配線22に接続される。
【0081】
第一ユニット素子11の中間ノード16は、第一中間ノード選択トランジスタ31を介して、中間ノードプログラム線33と第一デコード信号線51とに接続される。
【0082】
第一中間ノード選択トランジスタ31のソース端子およびドレイン端子のうち一方の端子は中間ノード16に接続され、他方の端子は中間ノードプログラム線33に接続される。第一中間ノード選択トランジスタ31のゲート端子は、第一デコード信号線51に接続される。
【0083】
第二ユニット素子12の中間ノード17は、第二中間ノード選択トランジスタ32を介して、中間ノードプログラム線33と第三デコード信号線53とに接続される。
【0084】
第二中間ノード選択トランジスタ32のソース端子およびドレイン端子のうち一方の端子は中間ノード17に接続され、他方の端子は中間ノードプログラム線33に接続される。第二中間ノード選択トランジスタ32のゲート端子は、第三デコード信号線53に接続される。
【0085】
第一選択トランジスタ35のソース端子およびドレイン端子のうち一方の端子は第一配線21に接続され、他方の端子は第一プログラミングドライバ41に接続される。第三選択トランジスタ37のソース端子およびドレイン端子のうち一方の端子は第三配線23に接続され、他方の端子は第一プログラミングドライバ41に接続される。
【0086】
パストランジスタ60は、第一配線21と第三配線23とに接続される。半導体装置3をクロスバ回路として動作させる際(非プログラミング時)には、パストランジスタ60を導通状態とする。パストランジスタ60を導通状態にすることによって、第一配線21と第三配線23とは実質的に共通の信号線となる。一方、プログラミング時には、パストランジスタ60を非導通状態とする。パストランジスタ60を非導通状態にすれば、全ての抵抗変化素子が一意にアドレス可能な状態となり、各抵抗変化素子の動作状態を個別に設定できる。
【0087】
本実施形態の半導体装置によれば、前述の第1の実施形態で示したプログラム方法と同様にユニット素子をプログラムできる。さらに、本実施形態の半導体装置によれば、ユニット素子ごとに個別にプログラムできる。すなわち、本実施形態の半導体装置では、第一配線および第一デコード信号線の組と、第三配線および第三デコード信号線の組とを別々にプログラムできる。そのため、全ての抵抗変化素子が一意にアドレス可能である点に特徴がある。この特徴は、書き込みディスターブの低減と抵抗状態の読み出し精度の向上に有効である。
【0088】
また、本実施形態の半導体装置が提供するクロスバ回路としての機能を供する際には、パストランジスタを導通状態とする。このため、第一配線と第三配線とは、実質的に共通の信号線となり、クロスバの交点においてユニット素子が2つ並列に接続される実施形態1と等価な回路となる。そのため、本実施形態によれば、半導体装置が提供するクロスバ回路の信頼性を一層向上することができる。
【0089】
(第4の実施形態)
次に、本発明の第4の実施形態に係る半導体装置(以下、再構成論理回路とよぶ)について図面を参照しながら説明する。再構成論理回路4は、第1〜第3の実施形態で開示した半導体装置1〜3に含まれるクロスバ回路を用いる。
【0090】
図12のように、再構成論理回路4は、クロスバ回路501、パストランジスタ502、ルックアップテーブル回路503、フリップフロップ504、セレクタ505を含む。ルックアップテーブル回路503、フリップフロップ504およびセレクタ505は、ロジックブロック507を形成する。クロスバ回路501は入力508を持ち、クロスバ回路501によって、任意の入力をルックアップテーブル回路503に結線する。
【0091】
ここで、
図12のクロスバ回路501においては、各実施形態で説明したクロスバ回路のうち、プログラムに必要な諸要素は省略して記載している。クロスバ回路501の結線機能は、抵抗変化素子を直列に接続したユニット素子のON/OFFによって実現する。
【0092】
クロスバ回路501としての動作時においては、パストランジスタ502を導通状態とする。また、好適な例として、ロジックブロック507の出力506は、クロスバ回路501を介してルックアップテーブル回路503にフィードバックする。
【0093】
本実施形態によれば、
図12に示すような回路を拡張し、多数連結することによって、より大規模な再構成回路としての機能を提供することができる。
【0094】
(第5の実施形態)
次に、本発明の第5の実施形態に係る半導体装置(以下、再構成論理回路とよぶ)について図面を参照しながら説明する。再構成論理回路5は、ユニット素子の並列度を3とし、第4の実施形態のパストランジスタの代りにTMR(Triple Modular Redundant)回路を含む。例えば、TMR回路は、A、BおよびCという3入力に対して、出力が(A and B) or (B and C) or (C and A)のような論理式で与えられる多数決論理を実現する回路である。
【0095】
図13のように、再構成論理回路5は、クロスバ回路551、TMR回路552、ルックアップテーブル回路553、フリップフロップ554、セレクタ555を含む。ルックアップテーブル回路553、フリップフロップ554およびセレクタ555は、ロジックブロック557を形成する。クロスバ回路551は入力558を持ち、クロスバ回路551によって、任意の入力をルックアップテーブル回路553に結線する。
【0096】
ここで、
図13のクロスバ回路551においては、各実施形態で説明したクロスバ回路のうち、プログラムに必要な諸要素は省略して記載している。クロスバ回路551の結線機能は、抵抗変化素子を直列に接続したユニット素子のON/OFFによって実現する。
【0097】
クロスバ回路551としての動作時においては、TMR回路552を導通状態とする。また、好適な例として、ロジックブロック557の出力556は、クロスバ回路551を介してルックアップテーブル回路553にフィードバックする。
【0098】
本実施形態によれば、
図13に示すような回路を拡張し、多数連結することによって、より大規模な再構成回路としての機能を提供することができる。
【0099】
本発明の各実施形態の半導体装置は、クロスバ回路に限らず、メモリ回路を有する半導体装置や、論理回路を有する半導体装置、あるいはそれらの回路や装置を搭載したボードやパッケージなどの配線に対しても適用できる。メモリ回路を有する半導体装置の一例としては、DRAM(Dynamic Random Access Memory)やSRAM(Static Random Access Memory)が挙げられる。また、メモリ回路を有する半導体装置の一例として、FeRAM(Ferro Electric Random Access Memory)やMRAM(Magnetic Random Access Memory)などが挙げられる。また、メモリ回路を有する半導体装置の一例として、フラッシュメモリやバイポーラトランジスタなどが挙げられる。また、論理回路を有する半導体装置としては、マイクロプロセッサなどが挙げられる。なお、本発明の各実施形態の手法は、上述の回路や半導体装置を搭載したボードやパッケージなどの配線に対しても適用することができる。
【0100】
また、本発明の実施形態のユニット素子は、半導体装置に対して用いられる電子回路装置や光回路装置、MEMS(Micro Electro Mechanical Systems)などのスイッチング装置にも適用できる。
【0101】
以上、実施形態を参照して本発明を説明してきたが、本発明は上記実施形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【0102】
この出願は、2016年9月13日に出願された日本出願特願2016−178734を基礎とする優先権を主張し、その開示の全てをここに取り込む。