(57)【要約】      （修正有）【課題】動作速度に遅延が生じるのを抑制することのできるＯＴＰメモリ素子の技術を提供する。【解決手段】配線１４０に書き込み電圧Ｖｐｒｇ１を与えると、書き込み電圧Ｖｐｒｇ１は、ｐチャネルトランジスタ２０１を介して配線１３５１に印加される。このとき、メモリ素子１０１２のソース端子およびドレイン端子が接続する配線１３３２には、選択回路２７２から０Ｖの電圧がｎチャネルトランジスタ２３２を介して印加される。したがって、メモリ素子１０１２には、ゲート端子と、ソース端子およびドレイン端子との間にΔＶＧＳ＝Ｖｐｒｇ１が印加され、書き込みが行われる。【選択図】図６
2020042881.tif 000002
【特許請求の範囲】
【請求項１】
第１乃至第５配線と、
前記第１配線に接続された第１端子および前記第２配線に接続された第２端子を有する第１ＯＴＰメモリ素子と、
ソース端子およびドレイン端子の一方が前記第１配線に接続され、他方が前記第３配線に接続され、ゲート端子に第１制御信号を受ける第１ｐチャネルトランジスタと、
ソース端子およびドレイン端子の一方が前記第１配線に接続され、他方が前記第４配線に接続され、ゲート端子が第２制御信号を受ける第１ｎチャネルトランジスタと、
ソース端子およびドレイン端子の一方が前記第２配線に接続され、他方が前記第３配線に接続され、ゲート端子に第３制御信号を受ける第２ｐチャネルトランジスタと、
ソース端子およびドレイン端子の一方が前記第２配線に接続され、他方が第５配線に接続され、ゲート端子に第４制御信号を受ける第２ｎチャネルトランジスタと、
を備えた半導体集積回路。
【請求項２】
第１入力端子と、第２入力端子と、前記第５配線に接続された第１出力端子と、を有し、イネーブル信号に応じて前記第１および第２入力端子の一方を前記第１出力端子に電気的に接続する選択回路を更に備えた請求項１記載の半導体集積回路。
【請求項３】
前記第１ＯＴＰメモリ素子はＭＯＳトランジスタであって、前記第１端子が前記ＭＯＳトランジスタのゲート端子でありかつ前記第２端子が電気的に接続されたソース端子およびドレイン端子であるか、または前記第１端子が前記ＭＯＳトランジスタの電気的に接続された前記ソース端子および前記ドレイン端子でありかつ前記第２端子が前記ゲート端子である請求項１または２記載の半導体集積回路。
【請求項４】
前記第１制御信号および前記第４制御信号に基づいて前記第１ｐチャネルトランジスタおよび前記第２ｎチャネルトランジスタをオン状態にするとともに、前記第２制御信号および前記第３制御信号に基づいて前記第１ｎチャネルトランジスタおよび前記第２ｐチャネルトランジスタをオフ状態にし、前記第３配線に印加する電位を前記第５配線に印加する電位よりも高くして前記第３配線と前記第５配線との間に書き込み電圧を印加し、前記第１ＯＴＰメモリ素子に書き込みを行い、かつ
前記第２制御信号および前記第３制御信号に基づいて前記第１ｎチャネルトランジスタおよび前記第２ｐチャネルトランジスタをオン状態にするとともに、前記第１制御信号および前記第４制御信号に基づいて前記第１ｐチャネルトランジスタおよび前記第２ｎチャネルトランジスタをオフ状態にし、前記第３配線に印加する電位を前記第４配線に印加する電位よりも高くして前記第３配線と前記第４配線との間に書き込み電圧を印加し、前記第１ＯＴＰメモリ素子に書き込みを行うドライバを更に備えた請求項１乃至３のいずれかに記載の半導体集積回路。
【請求項５】
第６配線および第７配線と、
前記第６配線に接続された第３端子および前記第２配線に接続された第４端子を有する第２ＯＴＰメモリ素子と、
ソース端子およびドレイン端子の一方が前記第６配線に接続され、他方が前記第３配線に接続され、ゲート端子に第５制御信号を受ける第３ｐチャネルトランジスタと、
ソース端子およびドレイン端子の一方が前記第６配線に接続され、他方が前記第７配線に接続され、ゲート端子が第２制御信号を受ける第３ｎチャネルトランジスタと、
を更に備えた請求項１乃至４のいずれかに記載の半導体集積回路。
【請求項６】
前記ドライバは、前記第２ＯＴＰメモリ素子に書き込みを行うとき、
前記第５制御信号および前記第４制御信号に基づいて前記第３ｐチャネルトランジスタおよび前記第２ｎチャネルトランジスタをオン状態にするとともに、前記第２制御信号および前記第３制御信号に基づいて前記第３ｎチャネルトランジスタおよび前記第２ｐチャネルトランジスタをオフ状態にし、前記第３配線に印加する電位を前記第５配線に印加する電位よりも高くして前記第３配線と前記第５配線との間に書き込み電圧を印加し、かつ
前記第２制御信号および前記第３制御信号に基づいて前記第３ｎチャネルトランジスタおよび前記第２ｐチャネルトランジスタをオン状態にするとともに、前記第５制御信号および前記第４制御信号に基づいて前記第３ｐチャネルトランジスタおよび前記第２ｎチャネルトランジスタをオフ状態にし、前記第３配線に印加する電位を前記第４配線に印加する電位よりも高くして前記第３配線と前記第４配線との間に書き込み電圧を印加する請求項５記載の半導体集積回路。
【請求項７】
前記第２ＯＴＰメモリ素子はＭＯＳトランジスタであって、前記第３端子が前記ＭＯＳトランジスタのゲート端子でありかつ前記第４端子が電気的に接続されたソース端子およびドレイン端子であるか、または前記第３端子が前記ＭＯＳトランジスタの電気的に接続された前記ソース端子および前記ドレイン端子でありかつ前記第４端子が前記ゲート端子である請求項５または６記載の半導体集積回路。
【請求項８】
第１乃至第４配線と、
前記第１配線に接続された第１端子および前記第２配線に接続された第２端子を有する第１ＯＴＰメモリ素子と、
ソース端子およびドレイン端子の一方が前記第１配線に接続され、他方が前記第３配線に接続され、ゲート端子に第１制御信号を受ける第１ｐチャネルトランジスタと、
ソース端子およびドレイン端子の一方が前記第１配線に接続され、他方が前記第４配線に接続され、ゲート端子が第２制御信号を受ける第１ｎチャネルトランジスタと、
を備えた半導体集積回路。
【請求項９】
第１入力端子と、第２入力端子と、前記第２配線に電気的に接続された第１出力端子と、を有し、イネーブル信号に応じて前記第１および第２入力端子の一方を前記第１出力端子に電気的に接続する選択回路を更に備えた請求項８記載の半導体集積回路。
【請求項１０】
前記第１ＯＴＰメモリ素子はＭＯＳトランジスタであって、前記第１端子が前記ＭＯＳトランジスタのゲート端子でありかつ前記第２端子が電気的に接続されたソース端子およびドレイン端子であるか、または前記第１端子が前記ＭＯＳトランジスタの電気的に接続された前記ソース端子および前記ドレイン端子でありかつ前記第２端子が前記ゲート端子である請求項８または９記載の半導体集積回路。
【請求項１１】
前記第１制御信号に基づいて前記第１ｐチャネルトランジスタをオン状態にするとともに、前記第２制御信号に基づいて前記第１ｎチャネルトランジスタオフ状態にし、前記第３配線に印加する電位を前記第２配線に印加する電位よりも高くして前記第３配線と前記第２配線との間に書き込み電圧を印加し、前記第１ＯＴＰメモリ素子に書き込みを行い、かつ
前記第２制御信号に基づいて前記第１ｎチャネルトランジスタをオン状態にするとともに、前記第１制御信号に基づいて前記第１ｐチャネルトランジスタをオフ状態にし、前記第４配線に印加する電位を前記第２配線に印加する電位よりも低くして前記第４配線と前記第２配線との間に書き込み電圧を印加し、前記第１ＯＴＰメモリ素子に書き込みを行うドライバを更に備えた請求項８乃至１０のいずれかに記載の半導体集積回路。
【請求項１２】
第５配線と、
前記第５配線に接続された第３端子および前記第２配線に接続された第４端子を有する第２ＯＴＰメモリ素子と、
ソース端子およびドレイン端子の一方が前記第５配線に接続され、他方が前記第３配線に接続され、ゲート端子に第３制御信号を受ける第２ｐチャネルトランジスタと、
ソース端子およびドレイン端子の一方が前記第５配線に接続され、他方が前記第４配線に接続され、ゲート端子が第４制御信号を受ける第２ｎチャネルトランジスタと、
を更に備えた請求項８乃至１１のいずれかに記載の半導体集積回路。
【請求項１３】
前記ドライバは、前記第２ＯＴＰメモリ素子に書き込みを行うとき、
前記第３制御信号に基づいて前記第２ｐチャネルトランジスタをオン状態にするとともに、前記第４制御信号に基づいて前記第２ｎチャネルトランジスタオフ状態にし、前記第３配線に印加する電位を前記第２配線に印加する電位よりも高くして前記第３配線と前記第２配線との間に書き込み電圧を印加し、前記第２ＯＴＰメモリ素子に書き込みを行い、かつ
前記第４制御信号に基づいて前記第２ｎチャネルトランジスタをオン状態にするとともに、前記第３制御信号に基づいて前記第２ｐチャネルトランジスタをオフ状態にし、前記第４配線に印加する電位を前記第２配線に印加する電位よりも低くして前記第４配線と前記第２配線との間に書き込み電圧を印加する請求項１２記載の半導体集積回路。
【請求項１４】
前記第２ＯＴＰメモリ素子はＭＯＳトランジスタであって、前記第３端子が前記ＭＯＳトランジスタのゲート端子でありかつ前記第４端子が電気的に接続されたソース端子およびドレイン端子であるか、または前記第３端子が前記ＭＯＳトランジスタの電気的に接続された前記ソース端子および前記ドレイン端子でありかつ前記第４端子が前記ゲート端子である請求項１２または１３記載の半導体集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、半導体集積回路に関する。
【背景技術】
【０００２】
プログラマブルロジックデバイスは、チップ製造後に回路を書き換えることができる半導体集積回路であり、演算処理回路や配線回路を再構成する必要のあるＦＰＧＡ(Field Programmable Gate Array)などに用いられる。プログラマブルロジックデバイスは複数の配線を有し、これらの配線のうち選択された２本の配線どうしを電気的に接続状態または非接続状態にする。選択された２本の配線が接続状態または非接続状態となるように制御するために、切り替え回路が用いられ、この切り替え回路は、メモリを備えている。このメモリとして、ＯＴＰ(One Time Programmable)メモリ素子等の不揮発性メモリ素子を記憶素子として用いた不揮発性メモリが知られている。この不揮発性メモリは、例えばクロスバーアレイ構造を備えている。すなわち、第１配線と、この第１配線に交差する第２配線と、第１配線と第２配線との交差領域に設けられた不揮発性メモリ素子とを備えている。この不揮発性メモリ素子としては、ソース端子とドレイン端子とが電気的に接続された２端子構造のトランジスタが用いられ、ソース端子およびドレイン端子が第１配線に接続され、ゲート端子が第２配線に接続される。
【０００３】
この２端子構造のトランジスタは、ゲート端子と、ソースおよびドレイン端子との間に電圧を印加し、ゲート絶縁膜を破壊することにより、低抵抗な状態が形成される。この２端子構造のトランジスタをＯＴＰメモリ素子として用いた場合には、後述するようにＦＰＧＡの動作速度に遅延が生じるという問題がある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】米国特許出願公開２０１８／０１５１２２５号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本実施形態は、ＯＴＰメモリ素子を用いても動作速度に遅延が生じるのを抑制することのできる半導体集積回路を提供する。
【課題を解決するための手段】
【０００６】
本実施形態による半導体集積回路は、第１乃至第５配線と、前記第１配線に接続された第１端子および前記第２配線に接続された第２端子を有する第１ＯＴＰメモリ素子と、ソース端子およびドレイン端子の一方が前記第１配線に接続され、他方が前記第３配線に接続され、ゲート端子に第１制御信号を受ける第１ｐチャネルトランジスタと、  ソース端子およびドレイン端子の一方が前記第１配線に接続され、他方が前記第４配線に接続され、ゲート端子が第２制御信号を受ける第１ｎチャネルトランジスタと、ソース端子およびドレイン端子の一方が前記第２配線に接続され、他方が前記第３配線に接続され、ゲート端子に第３制御信号を受ける第２ｐチャネルトランジスタと、ソース端子およびドレイン端子の一方が前記第２配線に接続され、他方が第５配線に接続され、ゲート端子に第４制御信号を受ける第２ｎチャネルトランジスタと、を備える。
【図面の簡単な説明】
【０００７】
【図１】２端子構造のトランジスタを示す断面図。
【図２】２端子構造のトランジスタの抵抗値の測定結果を示す図。
【図３】２端子構造のトランジスタのトランジスタに書き込み方向を変えて追加の書き込みを行ったときの抵抗値の測定結果を示す図。
【図４】第１実施形態による半導体装置を示す回路図。
【図５】第１実施形態の一実施例による半導体装置を示す回路図。
【図６】第１実施形態の一実施例の半導体集積回路において、メモリ素子に行方向からの書き込みを行う場合の一例を示す回路図。
【図７】第１実施形態の一実施例の半導体集積回路において、メモリ素子に列方向からの書き込みを行う場合の一例を示す回路図。
【図８】第１実施形態の一実施例の半導体集積回路において、通常動作を行う場合の一例を示す回路図。
【図９】第１実施形態の一実施例の半導体集積回路において、行方向からの書き込み、列方向からの書き込み、および通常動作を行う場合の各信号に印加される電圧の一例を示す図。
【図１０】ドライバを備えた第１実施形態の一実施例の半導体集積回路を示す図。
【図１１】図１０に示すドライバの一具体例を示す回路図。
【図１２】図１１に示すイネーブル信号の一例を示す図。
【図１３】第２実施形態による半導体集積回路を示す回路図。
【図１４】第２実施形態の一実施例による半導体集積回路を示す回路図。
【図１５】第２実施形態の一実施例による半導体集積回路において、行方向からの書き込みを行う場合の一例を示す回路図。
【図１６】第２実施形態の一実施例による半導体集積回路において、列方向からの書き込みを行う場合の一例を示す回路図。
【図１７】第２実施形態の一実施例による半導体集積回路において、通常動作を行う場合の一例を示す回路図。
【図１８】第２実施形態の一実施例の半導体集積回路において、行方向からの書き込み、列方向からの書き込み、および通常動作を行う場合の各信号に印加される電圧の一例を示す図。
【図１９】ドライバを備えた第２実施形態の一実施例の半導体集積回路を示す図。
【図２０】図１９に示すドライバの一具体例を示す回路図。
【発明を実施するための形態】
【０００８】
本発明の実施形態を説明する前に、本発明に至った経緯について説明する。
【０００９】
本発明者達は、ＯＴＰメモリ素子として、２端子構造のトランジスタを用いたときの動作速度に遅延が生じるのを抑制するために、２端子構造のトランジスタのゲート絶縁膜を破壊し、このトランジスタの抵抗を測定する実験を行った。図１に示すように、２端子構造のトランジスタ１０は、半導体層１００に離間して配置されたソース領域（ソース端子Ｓ）１０２ａおよびドレイン領域（ドレイン端子Ｄ）１０２ｂと、ソース領域１０２ａとドレイン領域１０２ｂとの間の半導体層１００の部分に配置されたゲート絶縁膜１０４と、ゲート絶縁膜１０４上に配置されたゲート電極（ゲート端子Ｇ）１０６と、を備え、ソース端子１０２ａとドレイン端子１０２ｂとが電気的に接続されている。
【００１０】
このトランジスタ１０を複数個作成し、各トランジスタのゲート端子Ｇと、ソース端子Ｓおよびドレイン端子Ｄとの間に電圧を印加し、ゲート絶縁膜を破壊する。このとき、ゲート端子Ｇに印加する電位はソース端子Ｓおよびドレイン端子Ｄに印加する電位よりも高くしてゲート絶縁膜を破壊する。その後、各トランジスタに対して、ゲート端子Ｇと、ソース端子Ｓおよびドレイン端子Ｄとの間に電圧、例えば１．５Ｖを印加し、トランジスタ１０の抵抗を測定し、測定結果を図２に示す。図２において、横軸は、ゲート端子Ｇに印加する電位Ｖ１がソース端子Ｓおよびドレイン端子Ｄに印加する電位Ｖ２よりも高いときのトランジスタ１０の抵抗の測定値を示し、縦軸は、ゲート端子Ｇに印加する電位Ｖ１がソース端子Ｓおよびドレイン端子Ｄに印加する電位Ｖ２よりも低いときのトランジスタ１０の抵抗の測定値を示す。ここで、｜Ｖ１−Ｖ２｜＝１．５Ｖである。
【００１１】
この図２からわかるように、トランジスタ１０の抵抗値が低い場合、例えば１．０×１０５（Ω）近辺までは、ゲート端子Ｇからソース端子Ｓおよびドレイン端子Ｄに電通を流して測定した抵抗値と、ソース端子Ｓおよびドレイン端子Ｄからゲート端子Ｇに電通を流して測定した抵抗値は殆ど変わらない。しかし、トランジスタ１０の抵抗値が１．０×１０５（Ω）近辺よりも大きくなると、ソース端子Ｓおよびドレイン端子Ｄからゲート端子Ｇに電通を流して測定した場合の方が、ゲート端子Ｇからソース端子Ｓおよびドレイン端子Ｄに電通を流して測定した場合よりも１〜４桁高くなる。すなわち、２端子構造のトランジスタは、抵抗値が高くなると、電流の流す方向によって抵抗値が異なる特性（整流性）を有している。
【００１２】
次に、本願発明者達は、整流性が生じたトランジスタ１０に、書き込み方向を変えて追加の書き込みを行い、この追加の書き込みを行ったトランジスタ１０について整流性を測定した。すなわち、最初の書き込みは、ゲート端子Ｇに高電位、ソース端子Ｓおよびドレイン端子Ｄに低電位を印加して書き込みを行い、続いて、整流性を測定した結果を図３の点Ａに示す。その後、ソース端子Ｓおよびドレイン端子Ｄに高電位、ゲート端子に低電位を印加して追加の書き込みを行い、整流性を測定した結果を図３の点Ｂに示す。図３からわかるように、追加の書き込みを行うことにより、トランジスタの読み出し電流の流す方向にかかわらず、測定された抵抗値はほぼ同じになり、整流性が抑制される。
【００１３】
以上のことから、本願発明者達は、２端子構造のトランジスタをＯＴＰメモリ素子として用いた場合にＦＰＧＡの動作に遅延が生じるのは、２端子構造のトランジスタに整流性が生じることであると考えた。そして、この整流性を抑制するには、ＯＴＰメモリ素子の書き込み時に書き込み方向を変えた追加の書き込みを行えば良いと考え、これを実現する半導体集積回路を以下に実施形態として説明する。
【００１４】
（第１実施形態）
第１実施形態による半導体集積回路を図４に示す。この第１実施形態の半導体集積回路は、例えばＦＰＧＡに用いられ、配線１３３１，１３３２と、配線１３５１、１３５２と、アレイ状に配列されたＯＴＰメモリ素子（以下、メモリ素子とも云う）１０１１，１０１２，１０２１，１０２２と、を備えている。配線１３５１、１３５２はそれぞれ、配線１３３１，１３３２と交差する。配線１３３ｉｊ（ｉ，ｊ＝１，２）と配線１３５ｉｊとの交差領域にメモリ素子１０ｉｊが配置されている。メモリ素子１０ｉｊ（ｉ，ｊ＝１，２）は第１端子および第２端子の２端子構造を有し、第１端子が対応する配線１３３ｊに接続され、第２端子が対応する配線１３５ｉに接続される。
【００１５】
第１実施形態の半導体集積回路は、ｐチャネルＭＯＳトランジスタ（以下、ｐチャネルトランジスタとも云う）２０１，２０２と、ｎチャネルＭＯＳトランジスタ（以下、ｎチャネルトランジスタとも云う）２１１，２１２と、ｐチャネルトランジスタ２２１，２２２と、ｎチャネルＭＯＳトランジスタ２３１，２３２と、ｎチャネルトランジスタ２５１，２５２と、インバータ２６１，２６２と、選択回路（マルチプレクサ）２７１，２７２と、を更に備えている。ｐチャネルトランジスタ２０１，２０２、ｎチャネルトランジスタ２１１，２１２、ｐチャネルトランジスタ２２１，２２２、およびｎチャネルトランジスタ２３１，２３２は、ｎチャネルトランジスタ２５１，２５２に比べてゲート絶縁膜が厚い高耐圧のトランジスタである。
【００１６】
ｐチャネルトランジスタ２０ｉ（ｉ＝１，２）のドレイン端子およびｎチャネルトランジスタ２１ｉのソース端子は配線１３５ｉの一端に接続される。ｎチャネルトランジスタ２５ｉ（ｉ＝１，２）のドレイン端子は配線１３５ｉの他端に接続される。すなわち、ｎチャネルトランジスタ２５ｉ（ｉ＝１，２）は、ｐチャネルトランジスタ２０ｉおよびｎチャネルトランジスタ２１ｉと、メモリ素子１０ｉ１、１０ｉ２を間に挟んで互いに反対側の位置に配置される。ｐチャネルトランジスタ２０ｉ（ｉ＝１，２）のソース端子は、書き込み電圧Ｖｐｒｇが印加される配線１４０に接続され、ゲート端子は配線１３５ｉを選択する信号Ｒｓｅｌｅｃｔｉが印加される。ｎチャネルトランジスタ２１ｉ（ｉ＝１，２）のドレイン端子に電圧ＶＲｉが印加され、ゲート端子はメモリ素子１０ｉ１およびメモリ素子１０ｉ２のいずれか１つに行方向からの書き込みを指示する信号Ｒ＿Ｅｎが印加される配線１５５に接続される。ｎチャネルトランジスタ２５ｉ（ｉ＝１，２）のゲート端子は、電圧Ｖｂｓｔが印加される配線１５０に接続され、ソース端子はインバータ２６ｉの入力端子に接続される。インバータ２６ｉ（ｉ＝１，２）の出力端子から出力信号Ｏｕｔｉが出力される。
【００１７】
選択回路２７ｊ（ｊ＝１，２）は、２つの入力端子と１つの出力端子を有し、イネーブル信号ＥＮ１に応じて、２つの入力端子に入力された信号ＶＣｊ、Ｉｎｊのうちから１つの信号を選択し、出力端子から出力する。すなわち、選択回路２７ｊ（ｊ＝１，２）は、イネーブル信号ＥＮ１に応じて、２つの入力端子の一方と出力端子とを電気的に接続する。ここで、ＡとＢとが電気的に接続されるとは、ＡとＢとが直接に接続されてもよいし、ＡとＢとの間に設けられた導電体を介して接続してもよいことを意味する。ｐチャネルトランジスタ２２ｊ（ｊ＝１，２）は、ソース端子が配線１４０に接続され、ゲート端子が配線１３３ｊを選択する信号Ｃｓｅｌｅｃｔｊが印加され、ドレイン端子が配線１３３ｊに接続される。ｎチャネルトランジスタ２３ｊ（ｊ＝１，２）は、ドレイン端子が選択回路２７ｊの出力端子に接続され、ゲート端子が列方向に配置されたメモリ素子１０１ｊおよびメモリ素子１０２ｊのうちの１つに書き込みを行う信号Ｃ＿Ｅｎが印加され、ソース端子が配線１３３ｊに接続される。
【００１８】
図４に示す第１実施形態の半導体集積回路において、メモリ素子１０ｉｊ（ｉ、ｊ＝１，２）として、図１に示す２端子構造のトランジスタ１０を用いた場合の一実施例を図５に示す。図５においては、メモリ素子１０ｉｊ（ｉ，ｊ＝１．２）は、ゲート端子が配線１３５ｉに接続され、ソース端子およびドレイン端子が配線１３３ｊに接続されている。なお、図示しないが、メモリ素子１０ｉｊ（ｉ，ｊ＝１．２）は、ゲート端子が配線１３３ｉに接続され、ソース端子およびドレイン端子が配線１３５ｊに接続されていてもよい。
【００１９】
（書き込み）
次に、図５に示す一実施例の半導体集積回路において、１つのメモリ素子への書き込みを図６および図７を参照して説明する。この書き込みは、まず、１つのメモリ素子に行方向からの書き込み、すなわち２端子構造のトランジスタのゲート端子からソース端子およびドレイン端子に向かって書き込みを行い、続いて、上記１つのメモリ素子に列方向からの書き込み、すなわち２端子構造のトランジスタのソース端子およびドレイン端子からゲート端子に向かって書き込みを行う。
【００２０】
（行方向からの書き込み）
まず、１つのメモリ素子に行方向からの書き込みを行う場合の一例について図６を参照して説明する。この図６は、丸印で囲まれたメモリ素子１０１２に書き込みを行う時の各種信号に印加される電圧を示している。
【００２１】
選択回路２７１の入力端子に入る信号ＶＣ１にＶｄｄを、信号Ｉｎ１に０Ｖを与え、選択回路２７２の入力端子に入る信号ＶＣ２に０Ｖを、信号Ｉｎ２に０Ｖを与える。なお、書き込み動作時には、信号Ｉｎ１および信号Ｉｎ２は０Ｖでなくともよい。ｐチャネルトランジスタ２２１，２２２のそれぞれのゲート端子に印加される信号Ｃｓｅｌｅｃｔ１，Ｃｓｅｌｅｃｔ２に、ｐチャネルトランジスタ２２１，２２２がオフ状態となる電圧、例えばＶｐｒｇ１を与える。電圧Ｖｈｖを、信号Ｃ＿Ｅｎを介してｎチャネルトランジスタ２３１，２３２のゲート端子に与え、ｎチャネルトランジスタ２３１，２３２をオン状態にする。また、信号Ｒ＿Ｅｎに電圧０Ｖを与え、ｎチャネルトランジスタ２１１，２１２をオフ状態にする。信号Ｖｂｓｔに電圧Ｖｈｖを与え、トランジスタ２５１，２５２をオン状態にする。更に、ｐチャネルトランジスタ２０１のゲート端子に接続される信号Ｒｓｅｌｅｃｔ１に電圧０Ｖを与え、ｐチャネルトランジスタ２０１をオン状態にする。このとき、ｐチャネルトランジスタ２０２のゲート端子に接続される信号Ｒｓｅｌｅｃｔ２に電圧Ｖｐｒｇ１を与え、ｐチャネルトランジスタ２０２をオフ状態にする。また、信号ＶＲ１および信号ＶＲ２にそれぞれ０Ｖを与える。そして、イネーブル信号Ｅｎに０Ｖを与え、選択回路２７１，２７２が信号ＶＣ１，ＶＣ２をそれぞれ選択する。
【００２２】
この様な状態で、配線１４０に書き込み電圧Ｖｐｒｇ１を与えると、書き込み電圧Ｖｐｒｇ１は、ｐチャネルトランジスタ２０１を介して配線１３５１に印加される。このとき、メモリ素子１０１２のソース端子およびドレイン端子が接続する配線１３３２には、選択回路２７２から０Ｖの電圧がｎチャネルトランジスタ２３２を介して印加される。したがって、メモリ素子１０１２には、ゲート端子と、ソース端子およびドレイン端子との間にΔＶＧＳ＝Ｖｐｒｇ１が印加され、書き込みが行われる。
【００２３】
一方、メモリ素子１０１１のソース端子およびドレイン端子が接続する配線１３３１には、選択回路２７１から電圧Ｖｄｄがｎチャネルトランジスタ２３１を介して印加されるので、メモリ素子１０１１においては、ゲート端子と、ソース端子およびドレイン端子との間にΔＶＧＳ＝Ｖｐｒｇ１-Ｖｄｄが印加され、書き込みが行われない。また、ｐチャネルトランジスタ２０２のゲート端子には電圧Ｖｐｒｇ１が印加されているため、メモリ素子１０２１，１０２２のゲート端子には、電圧は印加されず、書き込みは行われない。ここで例えば、電圧Ｖｐｒｇ１＝５Ｖ〜５．６Ｖ、Ｖｈｖ＝３．３Ｖ、Ｖｄｄ＝１．２Ｖとする。
【００２４】
以上により、メモリ素子１０１２に行方向からの書き込みを行うことができる。
【００２５】
（列方向からの書き込み）
次に、メモリ素子１０１２に列方向からの書き込みを行う場合の一例について図７を参照して説明する。この図７は、丸印で囲まれたメモリ素子１０１２に書き込みを行う時の各種信号に印加される電圧を示している。
【００２６】
選択回路２７１の入力端子に入る信号ＶＣ１に０Ｖおよび信号Ｉｎ１に０Ｖを与え、選択回路２７２の入力端子に入る信号ＶＣ２に０Ｖおよび信号Ｉｎ２に０Ｖを与える。なお、書き込み動作時には、信号Ｉｎ１および信号Ｉｎ２は０Ｖでなくともよい。ｐチャネルトランジスタ２２１のゲート端子に印加される信号Ｃｓｅｌｅｃｔ１にｐチャネルトランジスタ２２１がオフ状態となる電圧、例えばＶｐｒｇ２を与え、ｐチャネルトランジスタ２２２のゲート端子に印加される信号Ｃｓｅｌｅｃｔ２にｐチャネルトランジスタ２２２がオン状態となる電圧、例えば０Ｖを与える。信号Ｃ＿Ｅｎに０Ｖを与えｎチャネルトランジスタ２３１，２３２をオフ状態にする。また、信号Ｒ＿Ｅｎに電圧Ｖｈｖを与え、ｎチャネルトランジスタ２１１，２１２をオン状態にする。信号Ｖｂｓｔに電圧Ｖｈｖを与え、トランジスタ２５１，２５２をオン状態にする。更に、ｐチャネルトランジスタ２０１のゲート端子に与えられる信号Ｒｓｅｌｅｃｔ１および、ｐチャネルトランジスタ２０２のゲート端子に与えられる信号Ｒｓｅｌｅｃｔ２にそれぞれ電圧Ｖｐｒｇ２を与え、ｐチャネルトランジスタ２０１およびｐチャネルトランジスタ２０２をオフ状態にする。また、信号ＶＲ１に０Ｖを与え、信号ＶＲ２に電圧Ｖｄｄを与える。そして、イネーブル信号Ｅｎに０Ｖを与え、選択回路２７１，２７２が信号ＶＣ１，ＶＣ２をそれぞれ選択する。
【００２７】
この様な状態で、配線１４０に書き込み電圧Ｖｐｒｇ２を与えると、書き込み電圧Ｖｐｒｇ２は、ｐチャネルトランジスタ２２２を介して配線１３３２に印加される。このとき、メモリ素子１０１２のゲート端子が接続する配線１３５１には、信号ＶＲ１の電圧０Ｖがｎチャネルトランジスタ２１１を介して印加される。したがって、メモリ素子１０１２には、ソース端子およびドレイン端子と、ゲート端子との間にΔＶＳＧ＝Ｖｐｒｇ２が印加され、書き込みが行われる。
【００２８】
一方、メモリ素子１０２２のソース端子およびドレイン端子が接続する配線１３３２には、電圧Ｖｐｒｇ２が印加される。しかし、ゲート端子が接続する配線１３５２には、ｎチャネルトランジスタ２１２を介して信号ＶＲ２の電圧Ｖｄｄが印加される。したがって、メモリ素子１０２２においては、ソース端子およびドレイン端子と、ゲート端子との間にΔＶＳＧ＝Ｖｐｒｇ２-Ｖｄｄが印加され、書き込みが行われない。また、ｐチャネルトランジスタ２２１のゲート端子には電圧Ｖｐｒｇ２が印加されているため、メモリ素子１０１１，１０２１のゲート端子には、電圧は印加されず、書き込みは行われない。ここで例えば、電圧Ｖｐｒｇ２は、メモリ素子に書き込みを行うことにできる電圧で、Ｖｐｒｇ１と同じ値であってもよい。これにより、メモリ素子１０１２に列方向からの書き込みを行うことができる。
【００２９】
以上説明したように、第１実施形態および一実施例においては、１つのメモリ素子に行方向からの書き込みを行った後、列方向からの追加の書き込みを行う。これにより、書き込みが行われたメモリ素子の読み出し電流の流す方向にかかわらず、測定される抵抗値はほぼ同じになり、整流性が抑制される。
【００３０】
また、第１実施形態および一実施例の場合と異なり、１つのメモリ素子に列方向からの書き込みを行った後、行方向からの追加の書き込みを行ってもよい。
【００３１】
なお、第１実施形態および一実施例の半導体集積回路においては、メモリ素子は２行２列のアレイ状に配列されたが、ｍ（ｍ≧１）行ｎ（ｎ≧１）列のアレイ状に配置されていてもよい。また、１つの配線１３５ｉ（ｉ＝１，２）に接続される複数のメモリ素子のうち高々１つのメモリ素子に書き込みが行われ、２つ以上のメモリ素子には書き込みを行わない。
【００３２】
（通常動作）
次に、第１実施形態の一実施例による半導体集積回路の通常動作について図８を参照して説明する。図８は、メモリ素子１０１２に書き込みが行われ、その他のメモリ素子には書き込みが行われない場合の、通常動作時における各種信号に印加される電圧を示す。
【００３３】
選択回路２７１の入力端子に入る信号ＶＣ１に０Ｖを与え、選択回路２７２の入力端子に入る信号ＶＣ２に０Ｖを与える。なお、通常動作時には、信号ＶＣ１，ＶＣ２に与える電圧は０Ｖでなくともよい。ｐチャネルトランジスタ２２１のゲート端子に印加される信号Ｃｓｅｌｅｃｔ１にｐチャネルトランジスタ２２１がオフ状態となる電圧、例えばＶｈｖを与え、ｐチャネルトランジスタ２２２のゲート端子に印加される信号Ｃｓｅｌｅｃｔ２にｐチャネルトランジスタ２２２がオフ状態となる電圧、例えばＶｈｖを与える。信号Ｃ＿ＥｎにＶｈｖを与えｎチャネルトランジスタ２３１，２３２をオン状態にする。また、信号Ｒ＿Ｅｎに０Ｖを与え、ｎチャネルトランジスタ２１１，２１２をオフ状態にする。信号Ｖｂｓｔに電圧Ｖｈｖを与え、トランジスタ２５１，２５２をオン状態にする。更に、ｐチャネルトランジスタ２０１のゲート端子に与えられる信号Ｒｓｅｌｅｃｔ１および、ｐチャネルトランジスタ２０２のゲート端子に与えられる信号Ｒｓｅｌｅｃｔ２にそれぞれ電圧Ｖｈｖを与え、ｐチャネルトランジスタ２０１およびｐチャネルトランジスタ２０２をオフ状態にする。また、信号ＶＲ１に０Ｖを与え、信号ＶＲ２に０Ｖを与える。また、配線１４０に０Ｖを与える。なお、通常動作時は、配線１４０に与える電圧は０Ｖでなくてもよい。
【００３４】
そして、イネーブル信号Ｅｎに電圧Ｖｄｄを与え、選択回路２７１，２７２が信号Ｉｎ１，Ｉｎ２をそれぞれ選択する。すると、選択回路２７２に入力された信号Ｉｎ２は、ｎチャネルトランジスタ２３２，メモリ素子１０１２、配線１３５１，ｎチャネルトランジスタ２５１、およびインバータ２６１を介して出力信号Ｏｕｔ１として外部に出力される。このとき、メモリ素子１０２１は書き込みが行われていないので、選択回路２７１へ入力された信号Ｉｎ１は外部に出力されない。以上により、通常動作が行われる。
【００３５】
次に、行方向からの書き込み時、列方向からの書き込み時、通常動作時において用いられる各種信号の値を図９に示す。図９において、「Ａ／Ｂ」と表記されているのは、Ａが選択される行または選択される列の信号に印加される電圧を示し、Ｂが非選択の行または非選択の列の信号に印加される電圧を示す。例えば、行方向からの書き込み時には、信号Ｒｓｅｌｅｃｔｉ（ｉ＝１，２）の０Ｖ／Ｖｐｒｇ１は、選択される行には０Ｖが印加され、選択されない行には電圧Ｖｐｒｇ１が印加されることを示す。
【００３６】
第１実施形態および一実施例の半導体集積回路は、行方向からの書き込み時、列方向からの書き込み時、通常動作時において用いられる各種信号に印加する電圧（電位）を発生する第１乃至第８ドライバを更に備えている。これら第１乃至第８ドライバを備えた一実施例の半導体集積回路を図１０に示す。
【００３７】
第１ドライバ２１０は、電圧Ｖｐｒｇ１、電圧Ｖｄｄ、または０Ｖを配線１４０に供給する。第２ドライバ２２０は、電圧Ｖｄｄまたは０Ｖを配線ＶＲ１、ＶＲ２に供給する。第３ドライバ２３０は、電圧Ｖｐｒｇ２、電圧Ｖｄｄ、または０Ｖを配線１４０に供給する。第４ドライバ２４０は、電圧Ｖｄｄまたは０Ｖを信号ＶＣ１、ＶＣ２として供給する。第５ドライバ２５０は、電圧Ｖｐｒｇ１、電圧Ｖｄｄ、または０Ｖを信号Ｒｓｅｌｅｃｔ１、Ｒｓｅｌｅｃｔ２として供給する。第６ドライバ２６０は、電圧Ｖｄｄ、電圧Ｖｈｖ、または０Ｖを配線１５５に供給する。第７ドライバ２７０は、電圧Ｖｐｒｇ２、電圧Ｖｄｄ、または０Ｖを配線Ｃｓｅｌｅｃｔ１、Ｃｓｅｌｅｃｔ２に供給する。第８ドライバ２８０は、電圧Ｖｄｄ、電圧Ｖｈｖ、または０Ｖを配線Ｃ＿Ｅｎに供給する。
【００３８】
これらのドライバ、例えば第５乃至第８ドライバ２５０〜２８０の一具体例を図１１に示す。第５ドライバ２５０は、デコーダ２５０ａと、ＡＮＤゲート２５０ｂ、２５０ｃと、レベルシフタ２５０ｄと、インバータ２５０ｅと、備えている。第６ドライバ２６０は、デコーダ２６０ａと、ＡＮＤゲート２６０ｂ、２６０ｃと、レベルシフタ２６０ｄと、インバータ２６０ｅ、２６０ｆと、備えている。第７ドライバ２７０は、デコーダ２７０ａと、ＡＮＤゲート２７０ｂ、２７０ｃと、レベルシフタ２７０ｄと、インバータ２７０ｅと、備えている。第８ドライバ２８０は、デコーダ２８０ａと、ＡＮＤゲート２８０ｂ、２８０ｃと、レベルシフタ２８０ｄと、インバータ２８０ｅ、２８０ｆと、備えている。
【００３９】
各デコーダは、選択アドレス信号を受け、デコードした信号をＡＮＤゲートに送出する。例えば、第５ドライバ２５０において、デコーダ２５０ａは選択アドレス信号をデコードし、このデコードした信号をＡＮＤゲート２５０ｂに送出する。ＡＮＤゲート２５０ｂは、デコードされた信号と、イネーブル信号Ｅｎ２とのＡＮＤ演算を行い、演算結果をＡＮＤゲート２５０ｃに送出する。ＡＮＤゲート２５０ｃは、ＡＮＤゲート２５０ｂの演算結果と、イネーブル信号Ｅｎ３とのＡＮＤ演算を行い、演算結果をレベルシフタ２５０ｄに送出する。レベルシフタ２５０ｄは、ＡＮＤゲート２５０ｃの演算結果の信号レベルの変換を行い、変換された信号をインバータ２５０ｅに送出する。インバータ２５０ｅは、レベルシフタ２５０ｄからの信号を反転してｐチャネルトランジスタ２０２のゲートに送出する。
【００４０】
第６ドライバ２６０において、デコーダ２６０ａは選択アドレス信号をデコードし、このデコードした信号をＡＮＤゲート２６０ｂに送出する。ＡＮＤゲート２６０ｂは、デコードされた信号と、イネーブル信号Ｅｎ２とのＡＮＤ演算を行い、演算結果をＡＮＤゲート２６０ｃに送出する。ＡＮＤゲート２６０ｃは、ＡＮＤゲート２６０ｂの演算結果の反転信号と、イネーブル信号Ｅｎ３とのＡＮＤ演算を行い、演算結果をレベルシフタ２６０ｄに送出する。レベルシフタ２６０ｄは、ＡＮＤゲート２６０ｃの演算結果の信号レベルの変換を行い、変換された信号をインバータ２６０ｅに送出する。インバータ２６０ｅは、レベルシフタ２６０ｄからの信号を反転してインバータ２６０ｆに送出する。インバータ２６０ｆは、インバータ２６０ｅからの信号を反転してｎチャネルトランジスタ２１２のゲートに送出する。
【００４１】
第７ドライバ２７０において、デコーダ２７０ａは選択アドレス信号をデコードし、このデコードした信号をＡＮＤゲート２７０ｂに送出する。ＡＮＤゲート２７０ｂは、デコードされた信号と、イネーブル信号Ｅｎ２とのＡＮＤ演算を行い、演算結果をＡＮＤゲート２７０ｃに送出する。ＡＮＤゲート２７０ｃは、ＡＮＤゲート２７０ｂの演算結果と、イネーブル信号Ｅｎ３の反転信号とのＡＮＤ演算を行い、演算結果をレベルシフタ２７０ｄに送出する。レベルシフタ２７０ｄは、ＡＮＤゲート２７０ｃの演算結果の信号レベルの変換を行い、変換された信号をインバータ２７０ｅに送出する。インバータ２７０ｅは、レベルシフタ２７０ｄからの信号を反転してｐチャネルトランジスタ２２２のゲートに送出する。
【００４２】
第８ドライバ２８０において、デコーダ２８０ａは選択アドレス信号をデコードし、このデコードした信号をＡＮＤゲート２８０ｂに送出する。ＡＮＤゲート２８０ｂは、デコードされた信号と、イネーブル信号Ｅｎ２とのＡＮＤ演算を行い、演算結果をＡＮＤゲート２８０ｃに送出する。ＡＮＤゲート２８０ｃは、ＡＮＤゲート２８０ｂの演算結果の反転信号と、イネーブル信号Ｅｎ３とのＡＮＤ演算を行い、演算結果をレベルシフタ２８０ｄに送出する。レベルシフタ２８０ｄは、ＡＮＤゲート２８０ｃの演算結果の信号レベルの変換を行い、変換された信号をインバータ２８０ｅに送出する。インバータ２８０ｅは、レベルシフタ２８０ｄからの信号を反転してインバータ２８０ｆに送出する。インバータ２８０ｆは、インバータ２８０ｅからの信号を反転してｎチャネルトランジスタ２３２のゲートに送出する。
【００４３】
行方向の書き込み時、列方向の書き込み時、および通常動作時に、イネーブル信号Ｅｎ２，Ｅｎ３はそれぞれ、図１２に示す値を取る。例えば、イネーブル信号Ｅｎ２は、行方向の書き込み時、列方向の書き込み時、および通常動作時には、Ｖｄｄを取り、イネーブル信号Ｅｎ３は、行方向の書き込み時にＶｄｄ、列方向の書き込み時および通常動作時には、０Ｖを取る。
【００４４】
なお、図１０では第１乃至第８ドライバを用いて説明したが、８個のドライバの代わりに１個のドライバ（コントロール（制御）回路を用意し、このドライバによって各トランジスタや選択回路を制御するようにしてもよい。
【００４５】
以上説明したように、第１実施形態およびその一実施例によれば、ＯＴＰメモリ素子を用いても動作速度に遅延が生じるのを抑制することが可能な半導体集積回路を提供することができる。
【００４６】
（第２実施形態）
第２実施形態による半導体集積回路を図１３に示す。この第２実施形態の半導体集積回路は、例えばＦＰＧＡに用いられ、配線１３３１，１３３２と、配線１３５１、１３５２と、アレイ状に配列されたＯＴＰメモリ素子（以下、メモリ素子とも云う）１０１１，１０１２，１０２１，１０２２と、を備えている。配線１３５１、１３５２はそれぞれ、配線１３３１，１３３２と交差する。配線１３３ｉｊ（ｉ，ｊ＝１，２）と配線１３５ｉｊとの交差領域にメモリ素子１０ｉｊが配置されている。メモリ素子１０ｉｊ（ｉ，ｊ＝１，２）は第１端子および第２端子の２端子構造を有し、第１端子が対応する配線１３３ｊに接続され、第２端子が対応する配線１３５ｉに接続される。
【００４７】
第２実施形態の半導体集積回路は、ｐチャネルＭＯＳトランジスタ（以下、ｐチャネルトランジスタとも云う）３０１，３０２と、ｎチャネルＭＯＳトランジスタ（以下、ｎチャネルトランジスタとも云う）３１１，３１２と、インバータ３２１、３２２と、選択回路（マルチプレクサ）３３１、３３２と、ＮＡＮＤゲート３４１，３４２とを更に備えている。ｐチャネルトランジスタ３０１，３０２、ｎチャネルトランジスタ３１１，３１２は、通常のトランジスタに比べてゲート絶縁膜が厚い高耐圧のトランジスタである。ｎチャネルトランジスタ３１１，３１２は、ｐチャネルトランジスタが形成されたｐ型のウェハ基盤に接続されないようにするため、上記ウェハ基盤と絶縁されて設けられた独立ウェル（deep-n-well）に形成される。図１３において、ｎチャネルトランジスタ３１１，３１２を囲む破線は上記独立ウェルを示す。
【００４８】
ｐチャネルトランジスタ３０ｉ（ｉ＝１，２）は、ゲート端子が配線Ｒｐｉに接続され、ソース端子およびドレイン端子の一方が配線１３５ｉに接続され、他方が配線Ｖｈｖｐに接続される。ｎチャネルトランジスタ３１ｉ（ｉ＝１，２）は、ゲート端子が配線Ｒｎｉに接続され、ソース端子およびドレイン端子の一方が配線１３５ｉに接続され、他方が配線Ｖｈｖｎに接続される。
【００４９】
選択回路３３ｊ（ｊ＝１，２）は、制御信号ＷＥｎ２に応じて、信号Ｃｊおよび入力信号Ｉｎｊのうちの一方を選択し、選択した信号をインバータ３２ｊに送る。すなわち、選択回路３３ｊ（ｊ＝１，２）は、制御信号ＷＥｎ２に応じて、２つの入力端子のうちの一方を出力端子に電気的に接続する。インバータ３２ｊ（ｊ＝１，２）は、入力端子が選択回路３３ｊの出力端子に接続され、出力端子が配線１３３ｊに接続される。
【００５０】
ＮＡＮＤゲート３４ｉ（ｉ＝１，２）は、２つの入力端子の一方が配線１３５ｉに接続され、他方が配線ＷＥｎ１に接続され、出力端子から出力信号Ｏｕｔｉが出力される。
【００５１】
図１３に示す第２実施形態の半導体集積回路において、メモリ素子１０ｉｊ（ｉ、ｊ＝１，２）として、図１に示す２端子構造のトランジスタ１０を用いた場合の一実施例を図１４に示す。図１４においては、メモリ素子１０ｉｊ（ｉ，ｊ＝１．２）は、ゲート端子が配線１３５ｉに接続され、ソース端子およびドレイン端子が配線１３３ｊに接続されている。なお、図示しないが、メモリ素子１０ｉｊ（ｉ，ｊ＝１．２）は、ゲート端子が配線１３３ｉに接続され、ソース端子およびドレイン端子が配線１３５ｊに接続されていてもよい。
【００５２】
（書き込み）
次に、図１４に示す一実施例の半導体集積回路において、１つのメモリ素子への書き込みを図１５および図１６を参照して説明する。この書き込みは、まず、１つのメモリ素子に行方向からの書き込み、すなわち２端子構造のトランジスタのゲート端子からソース端子およびドレイン端子に向かって書き込みを行い、続いて、上記１つのメモリ素子に列方向からの書き込み、すなわち２端子構造のトランジスタのソース端子およびドレイン端子からゲート端子に向かって書き込みを行う。
【００５３】
（行方向からの書き込み）
まず、１つのメモリ素子に行方向からの書き込みを行う場合の一例について図１５を参照して説明する。この図１５は、丸印で囲まれたメモリ素子１０１２に書き込みを行う時の各種信号に印加される電圧を示している。
【００５４】
選択回路３３１の入力端子に入る信号Ｃ１にＶｄｄを与え、信号Ｉｎ１に０Ｖを与え、選択回路３３２の入力端子に入る信号Ｃ２に０Ｖを与え、信号Ｉｎ２に０Ｖを与える。なお、書き込み動作時には、信号Ｉｎ１および信号Ｉｎ２は０Ｖでなくともよい。ｐチャネルトランジスタ３０１のゲート端子に印加される信号Ｒｐ１に、ｐチャネルトランジスタ３０１がオン状態となる電圧、例えば０Ｖを与え、ｐチャネルトランジスタ３０２のゲート端子に印加される信号Ｒｐ２に、ｐチャネルトランジスタ３０２がオフ状態となる電圧、例えばＶｐｐｒｇを与える。また、ｎチャネルトランジスタ３１１，３１２のそれぞれのゲート端子に印加される信号Ｒｎ１，Ｒｎ２に、ｎチャネルトランジスタ３１１，３１２がオフ状態となる電圧、例えば−Ｖｎｐｒｇを与える。また、信号Ｖｈｖｎに電圧−Ｖｎｐｒｇを与え、信号ＷＥｎ１に電圧０Ｖを与える。そして、信号ＷＥｎ２に電圧０Ｖを与え、選択回路３３１，３３２が信号Ｃ１，Ｃ２をそれぞれ選択する。
【００５５】
このような状態で、信号Ｖｈｖｐに書き込み電圧Ｖｐｐｒｇを与えると、この書き込み電圧Ｖｐｐｒｇは、ｐチャネルトランジスタ３０１を介して配線１３５１に印加される。なお、ｐチャネルトランジスタ３０２はオフ状態となっているので、配線１３５２には、書き込み電圧Ｖｐｐｒｇは印加されない。そして、配線１３３２には選択回路３３２、インバータ３２２を介して０Ｖが印加される。これにより、メモリ素子１０１２においては、ゲート端子と、ソース端子およびドレイン端子との間には、電圧ΔＶＧＳ＝Ｖｐｐｒｇが印加され、メモリ素子１０１２に書き込みが行われる。このとき、メモリ素子１０１１のソース端子およびドレイン端子には、配線１３３１を介して信号Ｃ１の反転信号電圧Ｖｄｄが印加され、メモリ素子１０１１においては、ゲート端子と、ソース端子およびドレイン端子との間には電圧Ｖｐｐｒｇ−Ｖｄｄが印加され、書き込みが行われない。また、メモリ素子１０２１およびメモリ素子１０２２においては、ゲート端子と、ソース端子およびドレイン端子との間には、ゲート端子には電圧は印加されず、メモリ素子１０２１およびメモリ素子１０２２に、書き込みは行われない。ここで、Ｖｂｄをメモリ素子１０１１〜１０２２におけるゲート絶縁膜の破壊電圧とすると、ＶｐｐｒｇおよびＶｎｐｒｇは、以下の条件
Ｖｐｐｒｇ＞Ｖｂｄ＞Ｖｎｐｒｇ、
Ｖｎｐｒｇ＋Ｖｄｄ＞Ｖｂｄ
を満す。例えば、Ｖｐｐｒｇ＝５Ｖ〜５．６Ｖ、Ｖｂｄ＝４．７Ｖ、Ｖｎｐｒｇ＝３．８Ｖ〜４．４Ｖ、Ｖｄｄ＝１．２Ｖである。なお、上記数値は、プロセス世代により、変化する。
【００５６】
以上により、メモリ素子１０１２に行方向からの書き込み、ゲート端子から電圧を印加して書き込みを行うことができる。
【００５７】
（列方向からの書き込み）
次に、メモリ素子１０１２に列方向からの書き込みを行う場合の一例について図１６を参照して説明する。この図１６は、丸印で囲まれたメモリ素子１０１２に書き込みを行う時の各種信号に印加される電圧を示している。
【００５８】
選択回路３３１の入力端子に入る信号Ｃ１に０Ｖを与え、信号Ｉｎ１に０Ｖを与え、選択回路３３２の入力端子に入る信号Ｃ２にＶｄｄを与え、信号Ｉｎ２に０Ｖを与える。なお、書き込み動作時には、信号Ｉｎ１および信号Ｉｎ２は０Ｖでなくともよい。ｐチャネルトランジスタ３０１のゲート端子に印加される信号Ｒｐ１に、ｐチャネルトランジスタ３０１がオフ状態となる電圧、例えばＶｐｐｒｇを与え、ｐチャネルトランジスタ３０２のゲート端子に印加される信号Ｒｐ２に、ｐチャネルトランジスタ３０２がオフ状態となる電圧、例えばＶｐｐｒｇを与える。また、ｎチャネルトランジスタ３１１のゲート端子に印加される信号Ｒｎ１に、ｎチャネルトランジスタ３１１がオン状態となる電圧、例えば０Ｖを与え、ｎチャネルトランジスタ３１２のゲート端子に印加される信号Ｒｎ２に、ｎチャネルトランジスタ３１２がオフ状態となる電圧、例えば、−Ｖｎｐｒｇを与える。また、信号Ｖｈｖｐに電圧Ｖｐｐｒｇを与え、信号ＷＥｎ１に電圧０Ｖを与える。そして、信号ＷＥｎ２に電圧０Ｖを与え、選択回路３３１，３３２が信号Ｃ１，Ｃ２をそれぞれ選択する。
【００５９】
このような状態で、信号Ｖｈｖｎに書き込み電圧−Ｖｎｐｒｇを与えると、この書き込み電圧−Ｖｎｐｒｇは、ｎチャネルトランジスタ３１１を介して配線１３５１に印加される。なお、ｎチャネルトランジスタ３１２はオフ状態となっているので、配線１３５２には、書き込み電圧−Ｖｎｐｒｇは印加されない。そして、配線１３３２には選択回路３３２、インバータ３２２を介してＶｄｄが印加される。これにより、メモリ素子１０１２においては、ソース端子およびドレイン端子と、ゲート端子との間には、電圧ΔＶＳＧ＝Ｖｎｐｒｇ＋Ｖｂｄが印加され、メモリ素子１０１２に書き込みが行われる。このとき、メモリ素子１０１１のソース端子およびドレイン端子には、配線１３３１を介して信号Ｃ１の反転信号電圧０Ｖが印加され、メモリ素子１０１１においては、ゲート端子と、ソース端子およびドレイン端子との間には電圧Ｖｎｐｒｇが印加され、書き込みが行われない。また、メモリ素子１０２１およびメモリ素子１０２２においては、ゲート端子と、ソース端子およびドレイン端子との間には、ゲート端子には電圧は印加されず、メモリ素子１０２１およびメモリ素子１０２２に、書き込みは行われない。
【００６０】
以上により、メモリ素子１０１２に列方向からの書き込み、ソース端子およびドレイン端子から電圧を印加して書き込みを行うことができる。
【００６１】
以上説明したように、第２実施形態および一実施例においては、１つのメモリ素子に行方向からの書き込みを行った後、列方向からの追加の書き込みを行う。これにより、書き込みが行われたメモリ素子の読み出し電流の流す方向にかかわらず、測定される抵抗値はほぼ同じになり、整流性が抑制される。
【００６２】
また、第２実施形態および一実施例の場合と異なり、１つのメモリ素子に列方向からの書き込みを行った後、行方向からの追加の書き込みを行ってもよい。
【００６３】
なお、第２実施形態および一実施例の半導体集積回路においては、メモリ素子は２行２列のアレイ状に配列されたが、ｍ（ｍ≧１）行ｎ（ｎ≧１）列のアレイ状に配置されていてもよい。また、１つの配線１３５ｉ（ｉ＝１，２）に接続される複数のメモリ素子のうち高々１つのメモリ素子に書き込みが行われ、２つ以上のメモリ素子には書き込みを行わない。
【００６４】
（通常動作）
次に、第２実施形態の一実施例による半導体集積回路の通常動作について図１７を参照して説明する。図１７は、メモリ素子１０１２に書き込みが行われ、その他のメモリ素子には書き込みが行われない場合の、通常動作時における各種信号に印加される電圧を示す。
【００６５】
選択回路３３１の入力端子に入る信号Ｃ１に０Ｖを与え、選択回路３３２の入力端子に入る信号Ｃ２に０Ｖを与える。なお、通常動作時には、信号Ｃ１，Ｃ２に与える電圧は０Ｖでなくともよい。
【００６６】
ｐチャネルトランジスタ３０１のゲート端子に印加される信号Ｒｐ１にｐチャネルトランジスタ３０１がオフ状態となる電圧、例えばＶｐｐｒｇを与え、ｐチャネルトランジスタ３０２のゲート端子に印加される信号Ｒｐ２にｐチャネルトランジスタ３０２がオフ状態となる電圧、例えばＶｐｐｒｇを与える。そして、ｎチャネルトランジスタ３１１のゲートに印加される信号Ｒｎ１に０Ｖを、ｎチャネルトランジスタ３１２のゲートに印加される信号Ｒｎ２に０Ｖを与える。また、信号ＶｈｖｐにＶｐｐｒｇを与え、信号Ｖｈｖｎに０Ｖを与え、信号ＷＥｎ１に電圧Ｖｄｄを与える。
【００６７】
そして、イネーブル信号ＷＥｎ２に電圧Ｖｄｄを与え、選択回路３３１，３３２が信号Ｉｎ１，Ｉｎ２をそれぞれ選択する。すると、選択回路３３２に入力された信号Ｉｎ２は、選択回路３３２、インバータ３２２，メモリ素子１０１２、配線１３５１，およびＮＡＮＤゲート３４１を介して出力信号Ｏｕｔ１として外部に出力される。このとき、メモリ素子１０２１は書き込みが行われていないので、選択回路３３１へ入力された信号Ｉｎ１は外部に出力されない。以上により、通常動作が行われる。
【００６８】
次に、行方向からの書き込み時、列方向からの書き込み時、通常動作時において用いられる各種信号の値を図１８に示す。図１８において、「Ａ／Ｂ」と表記されているのは、Ａが選択される行または選択される列の信号に印加される電圧を示し、Ｂが非選択の行または非選択の列の信号に印加される電圧を示す。例えば、行方向からの書き込み時には、信号Ｒｐｉ（ｉ＝１，２）の０Ｖ／Ｖｐｐｒｇは、選択される行には０Ｖが印加され、選択されない行には電圧Ｖｐｐｒｇが印加されることを示す。
【００６９】
なお、図１３に示す第２実施形態および図１４に示す一実施形態の半導体集積回路において、配線１３５ｉ（ｉ＝１，２）とＮＡＮＤゲート３４ｉとの間に、スイッチ素子、例えばトランジスタ（図示せず）を設けてもよい。このスイッチ素子は、行方向からの書き込み時および列方向からの書き込み時にはオフ状態となり、通常動作時においてはオン状態となる。
【００７０】
第２実施形態および一実施例の半導体集積回路は、行方向からの書き込み時、列方向からの書き込み時、通常動作時において用いられる各種信号に印加する電圧（電位）を発生する第１乃至第５ドライバを更に備えている。これら第１乃至第５ドライバを備えた一実施例の半導体集積回路を図１９に示す。
【００７１】
第１ドライバ３１０は、電圧Ｖｐｐｒｇ、電圧Ｖｄｄ、または０Ｖのいずれかを信号Ｖｈｖｐとして供給する。第２ドライバ３２０は、電圧Ｖｎｐｒｇ、電圧Ｖｄｄ、または０Ｖのいずれかを信号Ｖｈｖｎとして供給する。第３ドライバ３３０は、電圧Ｖｄｄまたは０Ｖのいずれかを信号Ｃ１およびＣ２として供給する。第４ドライバ３４０は、電圧Ｖｐｐｒｇ、電圧Ｖｄｄ、または０Ｖのいずれかを信号Ｒｐ１，Ｒｐ２として供給する。第５ドライバ３５０は、電圧Ｖｎｐｒｇ、電圧Ｖｄｄ、または０Ｖのいずれかを信号Ｒｎ１，Ｒｎ２として供給する。
【００７２】
これらのドライバ、例えば第４ドライバ３４０および第５ドライバ３５０の一具体例を図２０に示す。第４ドライバ３４０および第５ドライバ３５０は、デコーダ３６０と、ＡＮＤゲート３４０ａと、ＡＮＤゲート３４０ｂと、レベルシフタ３４０ｃと、インバータ３４０ｄと、ＡＮＤゲート３５０ａと、ＡＮＤゲート３５０ｂと、レベルシフタ３５０ｃと、インバータ３５０ｄと、インバータ３５０ｅと、を備えている。
【００７３】
デコーダ３６０は、選択アドレス信号を受け、デコードした信号をそれぞれＡＮＤゲート３４０ａおよびＡＮＤゲート３５０ａに送る。ＡＮＤゲート３４０ａは、デコーダ３６０からのデコードされた信号と、イネーブル信号Ｅ２とのＡＮＤ演算を行い、演算結果をＡＮＤゲート３４０ｂに送る。ＡＮＤゲート３４０ｂは、ＡＮＤゲート３４０ａからの信号と、イネーブル信号Ｅｎ１とのＡＮＤ演算を行い、演算結果をレベルシフタ３４０ｃに送る。レベルシフタ３４０ｃは、ＡＮＤゲート３４０ｂの演算結果を示す信号のレベル変換を行い、変換された信号をインバータ３４０ｄに送る。インバータ３４０ｄは、レベルシフタ３４０ｃからの信号を反転して信号Ｒｐ１として供給する。
【００７４】
ＡＮＤゲート３５０ａは、デコーダ３６０からのデコードされた信号と、イネーブル信号Ｅ２の反転信号とのＡＮＤ演算を行い、演算結果をＡＮＤゲート３５０ｂに送る。ＡＮＤゲート３５０ｂは、ＡＮＤゲート３５０ａからの信号と、イネーブル信号Ｅｎ１とのＡＮＤ演算を行い、演算結果をレベルシフタ３５０ｃに送る。レベルシフタ３５０ｃは、ＡＮＤゲート３５０ｂの演算結果を示す信号のレベル変換を行い、変換された信号をインバータ３５０ｄに送る。インバータ３５０ｄは、レベル変換された信号を反転してインバータ３５０ｅに送る。インバータ３５０ｅは、インバータ３５０ｄからの信号を反転して信号Ｒｎ１として供給する。インバータ３４０ｄ、３５０ｄはそれぞれ、高耐圧のpチャネルトランジスタと高耐圧のｎチャネルトランジスタとが直列に接続された構成を有している（図示せず）。インバータ３５０eは高耐圧のpチャネルトランジスタ３６１と、独立ウェルに形成された高耐圧のｎチャネルトランジスタ３５１とが直列に接続された構成を有している。なお、図２０においては、信号Ｒｐ２および信号Ｒｎ２に電圧を供給する構成を省略している。
【００７５】
行方向の書き込み時、列方向の書き込み時、および通常動作時に、例えばイネーブル信号Ｅｎ１は、行方向の書き込み時、列方向の書き込み時、および通常動作時には、Ｖｄｄを取り、イネーブル信号Ｅｎ２は、行方向の書き込み時にＶｄｄ、列方向の書き込み時および通常動作時には、０Ｖを取る。
【００７６】
以上説明したように、第２実施形態およびその一実施例によれば、ＯＴＰメモリ素子を用いても動作速度に遅延が生じるのを抑制することが可能な半導体集積回路を提供することができる。
【００７７】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これらの実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これらの実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
【符号の説明】
【００７８】
１０，１０１１〜１０２２・・・ＯＴＰメモリ素子（メモリ素子）、２０１，２０２・・・ｐチャネルＭＯＳトランジスタ（ｐチャネルトランジスタ）、２１１，２１２・・・ｎチャネルＭＯＳトランジスタ（ｎチャネルトランジスタ）、２２１，２２２・・・ｐチャネルＭＯＳトランジスタ（ｐチャネルトランジスタ）、２３１，２３２・・・ｎチャネルＭＯＳトランジスタ（ｎチャネルトランジスタ）、２５１，２５２・・・ｎチャネルＭＯＳトランジスタ（ｎチャネルトランジスタ）、２６１，２６２・・・インバータ、２７１，２７２・・・選択回路、３０１，３０２・・・ｐチャネルＭＯＳトランジスタ（ｐチャネルトランジスタ）、３１１，３１２・・・ｎチャネルＭＯＳトランジスタ（ｎチャネルトランジスタ）、３２１，３２２・・・インバータ、３３１，３３２・・・選択回路、３４１，３４２・・・ＮＡＮＤゲート、１００・・・半導体層、１０２ａ・・・ソース端子（ソース領域）、１０２ｂ・・・ドレイン端子（ドレイン領域）、１０２ｃ・・・チャネル領域、１０４・・・ゲート絶縁膜、１０６・・・ゲート端子（ゲート電極）、１３３１，１３３２・・・配線、１３５１，１３５２・・・配線、１４０，１５０，１５５・・・配線、２１０・・・第１ドライバ、２２０・・・第２ドライバ、２３０・・・第３ドライバ、２４０・・・第４ドライバ、２５０・・・第５ドライバ、２５０ａ・・・デコーダ、２５０ｂ、２５０ｃ・・・ＡＮＤゲート、２５０ｄ・・・レベルシフタ、２５０ｅ・・・インバータ、２６０・・・第６ドライバ、２６０ａ・・・デコーダ、２６０ｂ、２６０ｃ・・・ＡＮＤゲート、２６０ｄ・・・レベルシフタ、２５０ｅ，２５０ｆ・・・インバータ、２７０・・・第７ドライバ、２７０ａ・・・デコーダ、２７０ｂ、２７０ｃ・・・ＡＮＤゲート、２７０ｄ・・・レベルシフタ、２７０ｅ・・・インバータ、２８０・・・第８ドライバ、２８０ａ・・・デコーダ、２８０ｂ、２８０ｃ・・・ＡＮＤゲート、２８０ｄ・・・レベルシフタ、２８０ｅ，２８０ｆ・・・インバータ、３１０・・・第１ドライバ、３２０・・・第２ドライバ、３３０・・・第３ドライバ、３４０・・・第４ドライバ、３４０ａ，３４０ｂ・・・ＡＮＤゲート、３４０ｃ・・・レベルシフタ、３４０ｄ・・・インバータ、３５０・・・第５ドライバ、３５０ａ，３５０ｂ・・・ＡＮＤゲート、３５０ｃ・・・レベルシフタ、３５０ｄ，３５０ｅ・・・インバータ、３６０・・・デコーダ
【図１】
2020042881.tif 000003
【図２】
2020042881.tif 000004
【図３】
2020042881.tif 000005
【図４】
2020042881.tif 000006
【図５】
2020042881.tif 000007
【図６】
2020042881.tif 000008
【図７】
2020042881.tif 000009
【図８】
2020042881.tif 000010
【図９】
2020042881.tif 000011
【図１０】
2020042881.tif 000012
【図１１】
2020042881.tif 000013
【図１２】
2020042881.tif 000014
【図１３】
2020042881.tif 000015
【図１４】
2020042881.tif 000016
【図１５】
2020042881.tif 000017
【図１６】
2020042881.tif 000018
【図１７】
2020042881.tif 000019
【図１８】
2020042881.tif 000020
【図１９】
2020042881.tif 000021
【図２０】
2020042881.tif 000022