(57)【要約】      （修正有）【課題】データを記憶する不揮発性記憶素子に不良が発生した場合でも正確にデータを転送する。【解決手段】半導体装置は、電気的に素子特性を不可逆的に変化させることによって情報がプログラムされる複数の第１不揮発性記憶素子を含む第１不揮発性記憶素子群２１と、第１不揮発性記憶素子群２１のうち不良の第１不揮発性記憶素子を検出するベリファイ回路２３と、電気的に素子特性を不可逆的に変化させることによって情報がプログラムされる複数の第２不揮発性記憶素子を含み、かつ不良の第１不揮発性記憶素子を救済するためのアドレスデータを記憶する第２不揮発性記憶素子群２２とを含む。【選択図】      図２
2006294085.tif 000002
【特許請求の範囲】
【請求項１】
電気的に素子特性を不可逆的に変化させることによって情報がプログラムされる複数の第１不揮発性記憶素子を含む第１不揮発性記憶素子群と、
前記第１不揮発性記憶素子群のうち不良の第１不揮発性記憶素子を検出するベリファイ回路と、
電気的に素子特性を不可逆的に変化させることによって情報がプログラムされる複数の第２不揮発性記憶素子を含み、かつ前記不良の第１不揮発性記憶素子を救済するためのアドレスデータを記憶する第２不揮発性記憶素子群と、
を具備することを特徴とする半導体装置。
【請求項２】
前記第１不揮発性記憶素子群にプログラムするためのデータをラッチする第１書き込み用ラッチ回路群をさらに具備し、
前記ベリファイ回路は、前記第１書き込み用ラッチ回路群のデータと、前記第１不揮発性記憶素子群から読み出されたデータとを用いて前記不良の第１不揮発性記憶素子を検出することを特徴とする請求項１記載の半導体装置。
【請求項３】
前記ベリファイ回路は、前記複数の第１不揮発性記憶素子ごとに、不良の有無を示すベリファイ結果を生成し、
前記ベリファイ結果に基づいて前記アドレスデータを生成するエンコード回路をさらに具備することを特徴とする請求項１又は２に記載の半導体装置。
【請求項４】
前記アドレスデータに基づいて前記不良の第１不揮発性記憶素子のビットを特定するための救済データを生成するデコード回路をさらに具備することを特徴とする請求項３記載の半導体装置。
【請求項５】
前記救済データに基づいて前記不良の第１不揮発性記憶素子に対応しかつ前記第１読み出し用ラッチ回路群に含まれる第１読み出し用ラッチ回路のデータを強制的に書き込み状態にするデータ固定回路をさらに具備することを特徴とする請求項４記載の半導体装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体装置に係り、電気的にプログラム可能なフューズ素子を備えた半導体装置に関する。
【背景技術】
【０００２】
半導体装置においてデータを不揮発に記憶する記憶回路の実現には、いくつかの手法が知られている。例えば、大きな記憶容量を必要としかつ多数回の書き換えが要求される場合には、スタックトゲート構造のメモリセルを備えたフラッシュメモリが使用される。この際、標準ＣＭＯＳプロセスとは異なる特殊プロセスが必要になるが、メモリＬＳＩのようにデータを不揮発に記憶することが主な目的となるものでは、大容量化を図ることで専用プロセスを用いることに対するコストのオーバーヘッドを抑えることができる。
【０００３】
しかしながら、システムＬＳＩ等においては、セキュリティデータ、コードデータ、チップ固有のＩＤデータ、およびトリミングデータ等の小容量のデータを不揮発に記憶するためのみに専用プロセスを用いるのはコスト上のオーバーヘッドが大きい。また、用途にもよるが、フラッシュメモリのような１０万回もの書き換え回数は必要なく、半固定データを不揮発に記憶しかつ必要に応じて書き換える可能性もあるといった用途の場合には、数回程度の書き換えで十分である。そのような用途のために、１０万回もの書き換え回数を保証するために高いコストを払うフラッシュプロセスを用いるのは得策でない。よって、このような場合は、標準ＣＭＯＳプロセスで形成できる不揮発性記憶素子を用いるのが望ましい。
【０００４】
標準ＣＭＯＳプロセスで実現できる不揮発性記憶素子としては、フューズ素子が広く知られている。一般に、フューズ素子には、レーザー光線を用いてプログラムするフューズ素子（o-fuse、optical-fuse）と、電気的にプログラムするフューズ素子（e-fuse、electrical-fuse）とが用いられる。o-fuseは、メタルやポリシリコン配線をフューズ素子として用い、レーザー光線を照射して溶断することによりプログラムされる。
【０００５】
これに対し、e-fuseは、例えば絶縁体である酸化膜をフューズ素子として用い、データのプログラムには高電圧ストレスをかけて酸化膜を破壊し、導通させることによりプログラムされる。すなわち、酸化膜の導通／非導通でデータを記憶する。また、e-fuseには、サリサイドプロセスにより表面にシリサイド層を形成したポリシリコン配線をフューズ素子として用い、高電圧を印加して電流を流すことでシリサイド層を破壊して抵抗値を大幅に増加させ、この抵抗値の変化に応じてデータを記憶するもの等がある。
【０００６】
e-fuseは、ブローするための特殊な装置や工程を必要としない。このため、o-fuseはウェーハの状態でプログラムする必要があるのに対し、e-fuseはパッケージングした後やシステムに組み込んだ後でもプログラムが可能である。
【０００７】
したがって、その応用範囲は、不良メモリセルを救済する冗長回路に用いられるリダンダンシデータ、コードデータ、チップ固有のＩＤデータ、あるいはタイミング調整や電圧調整を行うためのトリミングデータなど、o-fuseの代替用途に用いられるだけでなく、暗号データの記憶など、外付けの不揮発性メモリに記憶していたデータを、チップ内に取り込む用途などに広く用いられるようなりつつある。
【０００８】
このような用途の広がりにしたがって、ＬＳＩに搭載されるe-fuseの本数も増えている。これに伴い、プロセス不良により、正常なデータをプログラムできない不良のe-fuseが含まれる可能性が高くなる。不良のe-fuseが１つでも存在すると、そのe-fuseを備えたマクロブロックは使用不可となり、そのマクロを混載しているＬＳＩチップが不良品となってしまうという問題が発生する。
【０００９】
また、この種の関連技術として、不良のフューズ自身を置き換えて冗長救済を行う技術が開示されている（特許文献１参照）。
【特許文献１】特開２００１−３５１８５号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
本発明は、データを記憶する不揮発性記憶素子に不良が発生した場合でも正確にデータを転送できる半導体装置を提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明の第１の視点に係る半導体装置は、電気的に素子特性を不可逆的に変化させることによって情報がプログラムされる複数の第１不揮発性記憶素子を含む第１不揮発性記憶素子群と、前記第１不揮発性記憶素子群のうち不良の第１不揮発性記憶素子を検出するベリファイ回路と、電気的に素子特性を不可逆的に変化させることによって情報がプログラムされる複数の第２不揮発性記憶素子を含み、かつ前記不良の第１不揮発性記憶素子を救済するためのアドレスデータを記憶する第２不揮発性記憶素子群とを具備する。
【発明の効果】
【００１２】
本発明によれば、データを記憶する不揮発性記憶素子に不良が発生した場合でも正確にデータを転送できる半導体装置を提供することができる。
【発明を実施するための最良の形態】
【００１３】
以下、本発明の実施の形態について図面を参照して説明する。なお、以下の説明において、同一の機能及び構成を有する要素については、同一符号を付し、重複説明は必要な場合にのみ行う。
【００１４】
（第１の実施形態）
図１は、本発明の第１の実施形態に係るフューズボックス１１の構成を示すブロック図である。
【００１５】
フューズボックス１１は、データ記憶部１２と、制御回路１３と、クロック生成回路１４と、チャージポンプ回路１５とを備えている。このフューズボックス１１は、不良メモリセルを救済する冗長回路に用いられるリダンダンシデータ、コードデータ、チップ固有のＩＤデータ、セキュリティデータ、あるいはタイミング調整や電圧調整を行うためのトリミングデータ等を不揮発に記憶し、これらのデータを他の回路ブロックやチップ等に転送する。
【００１６】
データ記憶部１２は、上記各データを不揮発性記憶素子群（本実施形態では、フューズ素子を用いている）に記憶し、この記憶したデータを不揮発性記憶素子群から読み出して出力する。
【００１７】
クロック生成回路１４は、データ記憶部１２で使用されるクロック信号ＰＣＬＫを生成し、このクロック信号ＰＣＬＫをデータ記憶部１２に供給する。また、制御回路１３で使用されるクロック信号等を生成する。
【００１８】
チャージポンプ回路１５は、電源電圧Ｖｃｃを用いて、フューズ素子をブローするために使用する高電圧を生成する。そして、この高電圧をデータ記憶部１２に供給する。
【００１９】
制御回路１３は、データ記憶部１２と、クロック生成回路１４と、チャージポンプ回路１５との動作を制御する。この制御回路１３の動作については後述する。
【００２０】
図２は、図１に示したデータ記憶部１２の構成を示すブロック図である。データ記憶部１２は、フューズ回路２１と、アドレス用フューズ回路２２と、ベリファイ回路２３と、アドレスエンコーダ２４と、アドレスデコーダ２５とを備えている。本実施形態のデータ記憶部１２は、書き込みデータを記憶および出力するフューズ回路２１に、このフューズ回路２１の不良を救済するためのアドレス用フューズ回路２２を付加した構成となっている。
【００２１】
フューズ回路２１には、例えば外部回路から２ｎ（ｎは整数）ビットの書き込みデータが入力される。なお、フューズボックス１１がデータ生成回路を備え、このデータ生成回路が書き込みデータを生成する（すなわち、フューズボックス１１内で書き込みデータを生成する）ようにしてもよい。フューズ回路２１は、この書き込みデータの記憶等を行う。アドレス用フューズ回路２２は、フューズ回路２１の不良フューズ素子を救済するためのアドレスデータの記憶等を行う。
【００２２】
ベリファイ回路２３は、フューズ回路２１およびアドレス用フューズ回路２２にデータが正確に書き込まれたか否かをベリファイし、各フューズ素子のベリファイ結果を出力する。さらに、ベリファイ回路２３は、不良ビットの数を表すエラー信号ＮＧ１，ＮＧ２を生成する。
【００２３】
アドレスエンコーダ２４は、ベリファイ回路２３のベリファイ結果に基づいて、書き込み不良となったフューズ素子の位置を示すアドレスデータを生成する。さらに、アドレスエンコーダ２４は、フューズ素子の不良を救済する救済制御を活性化するための救済フラグビットを生成する。
【００２４】
アドレスデコーダ２５は、アドレス用フューズ回路２２に記憶されたアドレスデータをデコードし、不良フューズ素子の位置を特定する。そして、アドレスデコーダ２５は、不良フューズ素子から読み出されたデータを強制的に書き込み状態を示すデータに固定するための固定データ（救済データ）ＦＩＸを生成する。
【００２５】
図３は、図２に示したフューズ回路２１およびアドレス用フューズ回路２２の構成を示すブロック図である。先ず、フューズ回路２１の構成について説明する。フューズ回路２１は、フューズ素子群３１と、書き込みデータラッチ群３２と、書き込み選択回路３３と、読み出しデータラッチ群３４と、データ固定回路３５とを備えている。
【００２６】
フューズ素子群３１は、電気的にプログラム可能な２ｎ個のフューズ素子（e-fuse）３１−１〜３１−２ｎにより構成される。よって、フューズ素子群３１は、２ｎビットのデータを記憶することができる。フューズ素子群３１には、書き込みデータがプログラムされる。
【００２７】
書き込みデータラッチ群３２は、フューズ素子群３１の２ｎ個のe-fuseに対応した２ｎ個の書き込みラッチ回路３２−１〜３２−ｎにより構成される。書き込みデータラッチ群３２は、例えば外部回路から供給される２ｎビットの書き込みデータをラッチする。
【００２８】
書き込み選択回路３３は、e-fuseへのデータ書き込みをシリアルに行うために、順番に書き込みデータを書き込むためのe-fuseを選択する。そして、書き込み選択回路３３は、チャージポンプ回路１５により生成された高電圧を用いて、選択したe-fuseをブローする。
【００２９】
読み出しデータラッチ群３４は、フューズ素子群３１の２ｎ個のe-fuseに対応した２ｎ個の読み出しラッチ回路３４−１〜３４−２ｎにより構成される。読み出しデータラッチ群３４は、フューズ素子群３１から読み出されたデータをラッチする。また、読み出しデータラッチ群３４は、後述するデータ固定回路３５により供給された固定データを、フューズ素子群３１から読み出されたデータに関わらずラッチする。
【００３０】
データ固定回路３５は、フューズ素子群３１の２ｎ個のe-fuseに対応した２ｎ個のＮＡＮＤ回路３５−１〜３５−２ｎを備えている。データ固定回路３５は、アドレスデコーダ２５から供給される固定データＦＩＸ１〜ＦＩＸ２ｎに基づいて、読み出しデータラッチ群３４にラッチされるデータを制御する。
【００３１】
次に、アドレス用フューズ回路２２の構成について説明する。アドレス用フューズ回路２２は、アドレス用フューズ素子群４１と、アドレス用書き込みデータラッチ群４２と、アドレス用書き込み選択回路４３と、アドレス用読み出しデータラッチ群４４とを備えている。
【００３２】
アドレス用フューズ素子群４１は、電気的にプログラム可能な（ｎ＋１）個のフューズ素子（e-fuse）４１−１〜４１−ｎ＋１により構成される。よって、アドレス用フューズ素子群４１は、（ｎ＋１）ビットのデータを記憶することができる。アドレス用フューズ素子群４１には、アドレスエンコーダ２４から供給されるアドレスデータと、後述する救済フラグビットとがプログラムされる。
【００３３】
アドレス用書き込みデータラッチ群４２は、（ｎ＋１）個のe-fuseに対応したｎ＋１個の書き込みラッチ回路４２−１〜４２−ｎ＋１により構成される。アドレス用書き込みデータラッチ群４２は、アドレスエンコーダ２４から供給されるアドレスデータをラッチする。
【００３４】
アドレス用書き込み選択回路４３は、e-fuseへのデータ書き込みをシリアルに行うために、順番にアドレスデータを書き込むためのe-fuseを選択する。そして、アドレス用書き込み選択回路４３は、チャージポンプ回路１５により生成された高電圧を用いて、選択したe-fuseをブローする。
【００３５】
アドレス用読み出しデータラッチ群４４は、アドレス用フューズ素子群４１の（ｎ＋１）個のe-fuseに対応した（ｎ＋１）個の読み出しラッチ回路４４−１〜４４−ｎ＋１により構成される。アドレス用読み出しデータラッチ群４４は、アドレス用フューズ素子群４１から読み出されたアドレスデータと救済フラグビットとをラッチする。
【００３６】
次に、フューズ素子群３１およびアドレス用フューズ素子群と、これらのフューズ素子群に記憶されたデータを読み出す回路との具体的な構成の一例について説明する。図４は、図３に示したフューズ素子群３１と、アドレス用フューズ素子群４１と、これらの周辺回路との構成の一例を示す回路図である。
【００３７】
e-fuse３１−１の一方の端子には、電圧Ｖfuseが供給されている。e-fuse３１−１の他方の端子と接地電圧Ｖｓｓとの間には、２つのＮ型ＭＯＳ（Metal Oxide Semiconductor）トランジスタＱＮ１，ＱＮ２が直列に接続されている。Ｎ型ＭＯＳトランジスタＱＮ２のゲートには、制御回路１３からリセット信号ＲＳＴが供給されている。
【００３８】
Ｎ型ＭＯＳトランジスタＱＮ１のゲートには、電源電圧Ｖｃｃが供給されている。このＮ型ＭＯＳトランジスタＱＮ１は、e-fuseをブローする際に印加される電圧ＶfuseがＮ型ＭＯＳトランジスタＱＮ２のソースに直接印加されないように（すなわち、Ｎ型ＭＯＳトランジスタＱＮ１のしきい値電圧を差し引いた分の電圧しか印加されないように）するための緩衝用トランジスタである。
【００３９】
Ｎ型ＭＯＳトランジスタＱＮ１とＮ型ＭＯＳトランジスタＱＮ２との接続ノード（この接続ノードの電圧をＶsenとする）は、データ固定回路３５に含まれるＮＡＮＤ回路３５−１の第１入力端子に接続されている。また、ＮＡＮＤ回路３５−１の第２入力端子には、アドレスデコーダ２５から固定データＦＩＸ１が供給されている。
【００４０】
ＮＡＮＤ回路３５−１から出力されたデータは、読み出しラッチ回路３４−１にラッチされる。また、読み出しラッチ回路３４−１には、当該読み出しラッチ回路３４−１を動作させるためのイネーブル信号ＥＮが制御回路１３から供給されている。読み出しラッチ回路３４−１は、出力データＦＯＵＴ１を出力する。この出力データＦＯＵＴ１は、ベリファイ回路２３と書き込み選択回路３３とに供給される。なお、他のe-fuse３１−２〜３１−２ｎについても同様である。
【００４１】
また、アドレス用フューズ素子群４１については、データ固定回路３５のＮＡＮＤ回路を除いた以外はフューズ素子群３１と同様である。読み出しラッチ回路４４−１〜４４−ｎ＋１は、出力データＦＯＵＴＡ１〜ＦＯＵＴＡｎ＋１を出力する。この出力データＦＯＵＴＡ１〜ＦＯＵＴＡｎ＋１は、ベリファイ回路２３とアドレス用書き込み選択回路４３とに供給される。
【００４２】
図５は、e-fuseに記憶されたデータの読み出し動作を示すタイミング図である。なお、固定データＦＩＸは、データ“１”（データ固定制御を行わない）になっている。また、e-fuseとしてポリシリコン配線を用いた場合を示している。
【００４３】
先ず、制御回路１３は、ハイレベルのリセット信号ＲＳＴをＮ型ＭＯＳトランジスタＱＮ２のゲートに供給する。これにより、Ｎ型ＭＯＳトランジスタＱＮ２がオンし、電圧Ｖsenはローレベルに遷移する。
【００４４】
次に、制御回路１３は、e-fuseに電圧Ｖfuseを供給する。ここで、e-fuseがブローされている場合、電圧Ｖsenは、ローレベルのままである。そして、制御回路１３は、ハイレベルのイネーブル信号ＥＮを読み出しラッチ回路に供給する。この結果、読み出しラッチ回路は、データ“１”をラッチする。
【００４５】
一方、e-fuseがブローされていない場合、電圧Ｖsenは、ハイレベルに遷移する。そして、読み出しラッチ回路に制御回路１３からハイレベルのイネーブル信号ＥＮが供給されると、読み出しラッチ回路はデータ“０”をラッチする。このようにして、フューズ素子群３１に記憶されたデータを読み出しデータラッチ群３４にラッチすることができる。アドレス用フューズ素子群４１についても同様である。
【００４６】
なお、前述したように、図５のタイミング図では、e-fuseとしてポリシリコン配線を用いた場合を示している。例えば、e-fuseとして酸化膜を用いた場合、電圧Ｖsenの遷移はポリシリコン配線と逆になる。すなわち、e-fuseとして酸化膜を用いた場合、ブロー前がオフ、ブロー後がオンとなる。
【００４７】
次に、フューズ素子群３１およびアドレス用フューズ素子群にデータを書き込む回路の具体的な構成の一例について説明する。
【００４８】
e-fuseへのデータ書き込みにはｍＡオーダーの電流が必要となるため、前述したように１個のe-fuseごとにシリアルにプログラムされる。ここで、書き込みが必要なe-fuseのみをたどってシリアルに書くことができるように、プログラムビット（PRG bit）を転送するためのシフトレジスタが設けられている。このシリアルに書き込む制御は、書き込み選択回路３３およびアドレス用書き込み選択回路４３により行われる。図６は、図３に示した書き込み選択回路３３およびアドレス用書き込み選択回路４３の構成の一例を示す回路図である。
【００４９】
書き込み選択回路３３は、シフトレジスタ３３Ａと、フューズ素子群３１のe-fuseに対応した２ｎ個のＡＮＤ回路３３Ｂ−１〜３３Ｂ−２ｎとを備えている。シフトレジスタ３３Ａは、フューズ素子群３１のe-fuseに対応した２ｎ個のフリップフロップ３３Ａ−１〜３３Ａ−２ｎが直列に接続されて構成されている。
【００５０】
アドレス用書き込み選択回路４３は、シフトレジスタ４３Ａと、アドレス用フューズ素子群４１のe-fuseに対応したｎ＋１個のＡＮＤ回路４３Ｂ−１〜４３Ｂ−ｎ＋１とを備えている。シフトレジスタ４３Ａは、アドレス用フューズ素子群４１のe-fuseに対応したｎ＋１個のフリップフロップ４３Ａ−１〜４３Ａ−ｎ＋１が直列に接続されて構成されている。さらに、シフトレジスタ３３Ａとシフトレジスタ４３Ａとは、直列に接続されている。
【００５１】
ＡＮＤ回路３３Ｂ−１の入力端子には、フリップフロップ３３Ａ−１の出力端子と、書き込みラッチ回路３２−１の出力端子と、読み出しラッチ回路３４−１の出力端子とが接続されている。このように、ＡＮＤ回路３３Ｂ−１は、シフトレジスタ３３Ａ−１および書き込みラッチ回路３２−１にデータ“１”がラッチされており、かつ、読み出しラッチ回路にデータ“０”がラッチされているときに、データ“１”を出力するように構成されている。他のビットについても同様である。
【００５２】
ＡＮＤ回路３３Ｂ−１の出力信号は、フューズ素子群３１へ供給される。このＡＮＤ回路３３Ｂ−１の出力信号は、書き込みデータを書き込むためのe-fuseを選択する信号である。具体的には、ＡＮＤ回路３３Ｂ−１の出力信号は、図４中のＮ型ＭＯＳトランジスタＱＮ２のゲートに供給される。ＡＮＤ回路３３Ｂ−１がデータ“１”を出力すると、Ｎ型ＭＯＳトランジスタＱＮ２がオンする。これにより、e-fuse３１−１の両端子間に高電圧が印加され、e-fuse３１−１がブローされる。
【００５３】
シフトレジスタ３３Ａ（具体的には、フリップフロップ３３Ａ−１）には、制御回路１３からプログラムビット（PRG bit）が供給される。また、シフトレジスタ３３Ａおよびシフトレジスタ４３Ａには、クロック生成回路１４からクロック信号ＰＣＬＫが供給される。
【００５４】
シフトレジスタ３３Ａおよびシフトレジスタ４３Ａ内のフリップフロップは、クロック信号ＰＣＬＫに基づいて、プログラムビット（PRG bit）を左から右に順次シフトする。この際、シフトレジスタ３３Ａおよびシフトレジスタ４３Ａは、書き込みラッチ回路にデータ“１”がラッチされていてデータ書き込みをしようとしており、かつ、読み出しラッチ回路にデータ“０”がラッチされている（すなわち、まだe-fuseにデータが書き込まれていない状態）e-fuseに対応する位置のフリップフロップのみをプログラムビット（PRG bit）がシフトしていくように構成されている。
【００５５】
つまり、書き込みを行わない、あるいは、すでに正常に書き込みされているe-fuseがそのままスルーされ、データラッチにデータ“１”がラッチされているe-fuseのところまでプログラムビット（PRG bit）がスキップするようになっている。このようにすることで、（２ｎ＋（ｎ＋１））個のe-fuseのうち、書き込みが必要なe-fuseの個数のみの書き込み時間で書き込みを終了させることができる。
【００５６】
以下に、このように構成されたフューズボックス１１の動作について説明する。図７は、フューズボックス１１の動作を示すタイミング図である。先ず、フューズ素子群３１およびアドレス用フューズ素子群４１にデータを書き込む動作について説明する。なお、初期状態では、アドレス用書き込みデータラッチ群４２は、全てデータ“０”（すなわち、e-fuseにデータを書き込まない状態）に設定される。
【００５７】
先ず、書き込みデータラッチ群３２にｎビットの書き込みデータがラッチされる。次に、制御回路１３は、フューズ素子にデータをプログラムするプログラムモードを実行するためのプログラムイネーブル信号PRG_ENを活性化する。この信号PRG_ENは、チャージポンプ回路１５に供給される。チャージポンプ回路１５は、プログラムイネーブル信号PRG_ENを受けて、e-fuseをブローするための高電圧を生成する。
【００５８】
この高電圧が十分なレベルになると、チャージポンプ回路１５は、信号PUMP_OKを制御回路１３に供給する。制御回路１３は、信号PUMP_OKを受けて、クロック生成回路１４を制御してクロック信号PCLKをデータ記憶部１２に供給する。また、制御回路１３は、シフトレジスタ３３Ａ（具体的には、フリップフロップ３３Ａ−１）にプログラムビット（PRG bit）を供給する。
【００５９】
プログラムビット（PRG bit）は、前述したように、書き込みを行うe-fuseに対応したフリップフロップのみをシフトしていく。なお、この際のe-fuseへのデータ書き込みは、チャージポンプ回路１５により供給された高電圧を用いて行われる。
【００６０】
プログラムビット（PRG bit）は、シフトレジスタ３３Ａをシフトした後、シフトレジスタ４３Ａを連続してシフトするが、初期状態において、アドレス用書き込みデータラッチ群４２はすべて非書き込み状態に初期化してあるので、どこにも止まらずに貫通する。よって、アドレス用フューズ素子群４１を付加したことによる書き込み時間の増加はほとんど無い。
【００６１】
プログラムビット（PRG bit）がシフトレジスタ４３Ａのフリップフロップ４３Ａ−ｎ＋１までシフトすると、シフトレジスタ４３Ａは、プログラム終了信号PRG_DONEを出力する。この信号PRG_DONEは、制御回路１３に供給される。制御回路１３は、信号PRG_DONEを受けて、信号PRG_ENを非活性化して、プログラムモードを終了する。
【００６２】
フューズ素子群３１およびアドレス用フューズ素子群４１に記憶されたデータは、フューズ素子群３１およびアドレス用フューズ素子群４１から読み出され、読み出しデータラッチ群３４およびアドレス用読み出しデータラッチ群４４にラッチされる。
【００６３】
次に、制御回路１３は、ベリファイイネーブル信号VERIFY_ENを活性化する。この信号VERIFY_ENは、ベリファイ回路２３に供給される。ベリファイ回路２３は、信号VERIFY_ENを受けて、ベリファイチェックを実行する。
【００６４】
すなわち、ベリファイ回路２３は、読み出しデータラッチ群３４およびアドレス用読み出しデータラッチ群４４のデータと、書き込みデータラッチ群３２およびアドレス用書き込みデータラッチ群４２とのデータを用いて、データラッチ群のデータがフューズ素子群に正確に書き込まれたか否かをベリファイする。
【００６５】
そして、ベリファイ回路２３は、ベリファイパス信号VERIFY_PASSを出力する。具体的には、ベリファイ回路２３は、ベリファイチェックの結果、エラーが存在しなかった場合にはハイレベルの信号VERIFY_PASSを出力し、一方エラーが存在した場合にはローレベルの信号VERIFY_PASSを出力する。この信号VERIFY_PASSは、制御回路１３に供給される。
【００６６】
制御回路１３は、ローレベルの信号VERIFY_PASSを受けた場合、追加書き込み制御を実行する。すなわち、制御回路１３は、書き込みデータラッチ群３２のデータをフューズ素子群３１に再度書き込む。そして、制御回路１３は、信号VERIFY_PASSがハイレベルになるまで、追加書き込み制御を所定回数繰り返す。この所定回数は、フューズボックス１１が備えるカウンタ（図示せず）によりカウントされる。
【００６７】
書き込み動作が終了すると、ベリファイ回路２３は、フューズ素子群３１に対応するｎビット分のデータからなるベリファイ結果を生成する。このベリファイ結果は、アドレスエンコーダ２４に入力される。
【００６８】
さらに、ベリファイ回路２３は、フューズ素子群３１の不良e-fuseが１個のみ存在した場合にはエラー信号ＮＧ１を生成し、一方、フューズ素子群３１の不良e-fuseが２個以上存在した場合にはエラー信号ＮＧ２を生成する。この信号ＮＧ１，ＮＧ２は、制御回路１３とアドレスエンコーダ２４とに入力される。
【００６９】
なお、アドレス用フューズ素子群４１に対応する（ｎ＋１）ビット分のデータについてもベリファイの判断に含まれるが、初期状態ではe-fuseのデータも、アドレス用書き込みデータラッチ群４２も、データ“０”（＝非書き込み）なので、後述する救済制御の際にアドレス用フューズ素子群４１への書き込みを行わない限りは、ベリファイ動作に影響を与えることはない。
【００７０】
所定回数の書き込みを繰り返しても書き込み不良が残った場合において、信号ＮＧ２が活性化されていれば、２個以上のe-fuseが書き込み不良であるため、半導体装置は不良品と判断される。
【００７１】
一方、信号ＮＧ１が活性化されている場合、アドレスエンコーダ２４は、ベリファイ結果に基づいて、書き込み不良となったe-fuseの位置を示すアドレスデータを生成する。このアドレスデータは、フューズ素子群３１の２ｎ個のe-fuseのうち不良ビットのアドレスを示すｎビットのデータから構成される。さらに、アドレスエンコーダ２４は、アドレスデータを用いてフューズ素子群３１の不良を救済する救済制御を活性化するための救済フラグビットを生成する。
【００７２】
このアドレスデータおよび救済フラグビットは、アドレス用書き込みデータラッチ群４２に入力される。そして、制御回路１３は、e-fuseへのデータ書き込みを実行する。これにより、アドレス用書き込みデータラッチ群４２に入力されたアドレスデータおよび救済フラグビットがアドレス用フューズ素子群４１に書き込まれる。
【００７３】
次に、アドレス用フューズ素子群４１に記憶されたアドレスデータを用いた救済動作について説明する。まず、アドレス用フューズ素子群４１に記憶されたアドレスデータおよび救済フラグビットは、アドレス用読み出しデータラッチ群４４にラッチされる。
【００７４】
この読み出されたアドレスデータおよび救済フラグビットは、アドレスデコーダ２５に入力される。アドレスデコーダ２５は、救済フラグビットにデータ“１”が立っているか否かを判定する。アドレスデコーダ２５は、救済フラグビットにデータ“１”が立っていない場合、救済動作を行う必要がないため、固定データＦＩＸを生成しない。
【００７５】
一方、救済フラグビットにデータ“１”が立っている場合、アドレスデコーダ２５は、アドレスデータに基づいて、２ｎビットの固定データＦＩＸを生成する。この固定データＦＩＸは、不良e-fuseの位置に対応するビットがデータ“０”、その他のビットがデータ“１”からなるデータである。この固定データは、データ固定回路３５に入力される。
【００７６】
次に、データ固定回路３５は、読み出しデータラッチ群３４のデータのうち固定データにより指定されたビットのデータをフューズ素子群３１に記憶されたデータに関わらず、強制的にデータ“１”（＝書き込み状態）に固定する。これにより、書き込み不良のe-fuseについて、正常に書き込みが行われたのと同様の状況を作ることができる。このようにして、フューズ素子群３１の不良e-fuseの救済が行われる。
【００７７】
なお、アドレス用フューズ素子群４１へのアドレスデータの書き込みが不良している場合は、信号ＮＧ１あるいは信号ＮＧ２が活性化される。この場合、制御回路１３は、書き込み制御を繰り返し実行する。
【００７８】
アドレス用フューズ素子群４１への書き込みが正常に行われると、フューズ素子群３１のうち書き込み不良したe-fuseについても、前述の救済制御によりベリファイがＯＫとなるため、全てのe-fuseのベリファイがＯＫとなる。
【００７９】
もし、アドレス用フューズ素子群４１に対して書き込み不良となった場合は、不良品として扱わなくてはならないが、その場合は、アドレス用フューズ素子群４１内のe-fuseの不良に加えて、フューズ素子群３１内のe-fuseの不良も救済されずに残る。よって、ベリファイがＮＧとなるビットは、必ず２ビット以上存在することになる。この結果、信号ＮＧ２が活性化されるため、半導体装置は不良品と判断される。
【００８０】
このように、本実施形態のベリファイ回路２３については、ベリファイをチェックする範囲をアドレス用フューズ素子群４１用の（ｎ+１）ビット分拡張しておけば良い。また、アドレス用フューズ素子群４１へのデータ書き込み制御は、フューズ素子群３１へのデータ書き込み制御と全く同じ制御で構わない。すなわち、アドレス用フューズ素子群４１を設けたことによる特別の書き込み制御を行う必要がない。
【００８１】
フューズ素子群３１にもともと不良がない場合は、アドレス用フューズ素子群４１に対してプログラムビット（ＰＲＧ bit）がスキップされるため、アドレス用フューズ素子群４１が無い場合とまったく同様に終了するのみである。よって、書き込み制御については、ベリファイ回路２３において、不良e-fuseが１個のみ存在した場合の信号ＮＧ１と２個以上存在した場合の信号ＮＧ２とを分離し、１ビットＮＧの場合は再度書き込み回数のカウンタを０に戻してe-fuse書き込みフローに入るという制御を加える点の変更のみで、あとは外部からの制御はアドレス用フューズ素子群４１が無い場合と同様で構わない。
【００８２】
以上詳述したように本実施形態によれば、コードデータやリダンダンシデータ等の書き込みデータを記憶するフューズ素子群３１のe-fuseに不良が発生した場合でも、フューズボックス１１内で自動的に救済して回路ブロックにコードデータ等を転送することができる。
【００８３】
また、e-fuseへのデータ書き込みに関して、特別な追加制御が必要となると、e-fuseを使用するメリットが阻害され、またテストコストの上昇につながってしまう。しかし、本実施形態では、通常のe-fuseの書き込みシーケンスを用いるだけで、特に不良e-fuseの救済を意識せずに自動で救済され、正常なフューズデータの転送が可能である。
【００８４】
また、ベリファイ回路２３から供給されるベリファイ結果をアドレスエンコーダ２４によりｎビットのアドレスデータに変換している。これにより、アドレス用フューズ素子群４１は、少なくともｎ個のe-fuseを備えていればよく、救済を行うために必要なe-fuseを最小限にすることができる。
【００８５】
さらに、本実施形態では、不揮発性記憶素子としてe-fuseを用いている。よって、不揮発性記憶素子をブローするための特殊な装置や工程を必要としない。このため、パッケージングした後やシステムに組み込んだ後でもプログラムが可能である。
【００８６】
（第２の実施形態）
第２の実施形態は、第１の実施形態で示したフューズボックス１１を備えた半導体集積回路について示している。
【００８７】
図８は、本発明の第２の実施形態に係る半導体集積回路５０の一例を示すブロック図である。半導体集積回路５０は、フューズボックス１１とロジック回路５１とインターフェース回路（Ｉ／Ｆ）５２とを備えている。
【００８８】
ロジック回路５１は、ＭＰＵ（Micro Processing Unit）等から構成される。フューズボックス１１は、ロジック回路５１の動作タイミングを調整するトリミングデータや、ロジック回路５１の動作に必要なコードデータ等をロジック回路５１に転送する。インターフェース回路（Ｉ／Ｆ）は、外部装置（図示せず）との間でデータの入出力制御を行う。
【００８９】
このように構成された半導体集積回路５０は、e-fuseへのデータ書き込みに関して、特別な追加制御は不要である。さらに、不良e-fuseが自動的に救済されるため、半導体集積回路５０の不良率を低減することができる。よって、高価な半導体集積回路５０にフューズボックス１１を搭載する効果は大きい。
【００９０】
図９は、半導体集積回路６０の他の一例を示すブロック図である。半導体集積回路６０は、フューズボックス１１と、２つのＳＲＡＭ（Static Random Access Memory）マクロ６１，６２と、ロジック回路６３と、インターフェース回路（Ｉ／Ｆ）５２とを備えている。
【００９１】
ＳＲＡＭマクロは、メモリとして機能するブロックであり、メモリセルアレイ、デコーダ回路およびセンスアンプ回路等を含む。フューズボックス１１は、不良メモリセルを救済する冗長回路に用いられるリダンダンシデータ等をＳＲＡＭマクロ６１，６２に転送する。このようにして半導体集積回路６０を構成した場合でも、上記同様の効果を得ることができる。
【００９２】
なお、半導体集積回路に搭載される機能ブロックは、上記したブロックに限定されるものではなく、他のブロックでも構わない。
【００９３】
この発明は、上記実施形態に限定されるものではなく、その他、本発明の要旨を変更しない範囲において種々変形して実施可能である。
【図面の簡単な説明】
【００９４】
【図１】本発明の第１の実施形態に係るフューズボックス１１の構成を示すブロック図。
【図２】図１に示したデータ記憶部１２の構成を示すブロック図。
【図３】図２に示したフューズ回路２１およびアドレス用フューズ回路２２の構成を示すブロック図。
【図４】図３に示したフューズ素子群３１と、アドレス用フューズ素子群４１と、これらの周辺回路との構成の一例を示す回路図。
【図５】e-fuseに記憶されたデータの読み出し動作を示すタイミング図。
【図６】図３に示した書き込み選択回路３３およびアドレス用書き込み選択回路４３の構成の一例を示す回路図。
【図７】フューズボックス１１の動作を示すタイミング図。
【図８】本発明の第２の実施形態に係る半導体集積回路５０の一例を示すブロック図。
【図９】半導体集積回路６０の他の一例を示すブロック図。
【符号の説明】
【００９５】
１１…フューズボックス、１２…データ記憶部、１３…制御回路、１４…クロック生成回路、１５…チャージポンプ回路、２１…フューズ回路、２２…アドレス用フューズ回路、２３…ベリファイ回路、２４…アドレスエンコーダ、２５…アドレスデコーダ、３１…フューズ素子群、３２…書き込みデータラッチ群、３３…書き込み選択回路、３３Ａ，４３Ａ…シフトレジスタ、３３Ｂ，４３Ｂ…ＡＮＤ回路、３４…読み出しデータラッチ群、３５…データ固定回路、４１…アドレス用フューズ素子群、４２…アドレス用書き込みデータラッチ群、４３…アドレス用書き込み選択回路、４４…アドレス用読み出しデータラッチ群、５０，６０…半導体集積回路、５１，６３…ロジック回路、５２…インターフェース回路、６０…半導体集積回路、６１，６２…ＳＲＡＭマクロ、ＱＮ１，ＱＮ２…Ｎ型ＭＯＳトランジスタ。
【図１】
2006294085.tif 000003
【図２】
2006294085.tif 000004
【図３】
2006294085.tif 000005
【図４】
2006294085.tif 000006
【図５】
2006294085.tif 000007
【図６】
2006294085.tif 000008
【図７】
2006294085.tif 000009
【図８】
2006294085.tif 000010
【図９】
2006294085.tif 000011