(57)【要約】【課題】ヒューズデータの圧縮を行った場合でも、複数テスト工程でヒューズブローが行えるようにすることを特徴とする。【解決手段】ヒューズ・ヒューズラッチ回路部２１は、リダンダンシ情報記憶回路である第１、第２のヒューズ・ヒューズラッチ回路２３ａ、２３ｂを有する。第１、第２のヒューズ・ヒューズラッチ回路２３ａ、２３ｂ内には、それぞれヒューズ素子とヒューズラッチ回路とが設けられている。第１、第２のヒューズ・ヒューズラッチ回路２３ａ、２３ｂは、ラッチされているデータをシリアルデータDATA1またはDATA2としてヒューズデータ転送制御回路部２２に出力する。リダンダンシ情報生成回路であるヒューズデータ転送制御回路部２２は、カウンタ２４及びデータ転送制御回路２５等から構成されている。データ転送制御回路２５は、第１、第２のヒューズ・ヒューズラッチ回路２３ａ、２３ｂから出力されるデータを合成して新たなデータを生成する。【選択図】図２
2006185569.tif 000002
【特許請求の範囲】
【請求項１】
メモリセルアレイ内に存在する不良セルを冗長セルアレイ内の冗長セルと置き換えるために使用されるリダンダンシ情報をそれぞれ記憶する不揮発性記憶素子からなる複数のリダンダンシ情報記憶回路と、
前記複数のリダンダンシ情報記憶回路に記憶されている複数のリダンダンシ情報を合成して新たなリダンダンシ情報を生成するリダンダンシ情報生成回路
とを具備したことを特徴とする半導体記憶装置。
【請求項２】
複数のメモリセルを有するメモリセルアレイと、
前記メモリセルアレイ内の不良セルを救済するために使用される複数の冗長セルを有する冗長セルアレイと、
前記メモリセルアレイ内に存在する不良セルを前記冗長セルアレイ内の冗長セルと置き換えるために使用されるリダンダンシ情報をそれぞれ記憶する不揮発性記憶素子からなる複数のリダンダンシ情報記憶回路と、
前記複数のリダンダンシ情報記憶回路に記憶されている複数のリダンダンシ情報を合成して新たなリダンダンシ情報を生成するリダンダンシ情報生成回路と、
前記リダンダンシ情報生成回路で生成されたリダンダンシ情報及び前記メモリセルアレイ内のメモリセルの選択情報に応じて、前記メモリセルアレイ内のメモリセルもしくは前記冗長セルアレイ内の冗長セルを選択する選択回路
とを具備したことを特徴とする半導体記憶装置。
【請求項３】
前記複数のリダンダンシ情報記憶回路に記憶される前記複数のリダンダンシ情報のうち少なくとも１つのリダンダンシ情報記憶回路に記憶されるリダンダンシ情報はデータ圧縮されていることを特徴とする請求項１または２記載の半導体記憶装置。
【請求項４】
前記複数のリダンダンシ情報記憶回路に記憶される前記複数のリダンダンシ情報の全てがデータ圧縮されていることを特徴とする請求項１または２記載の半導体記憶装置。
【請求項５】
前記複数のリダンダンシ情報記憶回路は、記憶できる情報の容量が異なるリダンダンシ情報記憶回路を含むことを特徴とする請求項１または２記載の半導体記憶装置。
【請求項６】
前記リダンダンシ情報生成回路は、前記複数のリダンダンシ情報記憶回路に記憶されているリダンダンシ情報に基づいて、前記新たなリダンダンシ情報の生成を取り消すことを特徴とする請求項１または２記載の半導体記憶装置。
【請求項７】
前記不揮発性記憶素子は、プログラム方式が異なる複数種類の不揮発性記憶素子を含む請求項１または２記載の半導体記憶装置。
【請求項８】
前記複数種類の不揮発性記憶素子のうちの少なくとも１つの種類の不揮発性記憶素子は、レーザ光を照射する方法によってプログラムされる不揮発性記憶素子である請求項７記載の半導体記憶装置。
【請求項９】
前記複数種類の不揮発性記憶素子のうちの少なくとも１つの種類の不揮発性記憶素子は、電気的な方法によってプログラムされる不揮発性記憶素子である請求項７記載の半導体記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、リダンダンシ機能を有する半導体記憶装置に係り、特に不良セルに対応したアドレスをヒューズ素子にプログラムし、プログラムされたヒューズ素子からリダンダンシ用アドレスを生成するための回路に関する。
【背景技術】
【０００２】
ダイナミックランダムアクセスメモリ（DRAM）等の半導体記憶装置（以下、メモリと称する）では、記憶容量が益々増大している。大容量のメモリでは、製造歩留まりの向上を図るために、メモリセルアレイ中に発生した不良セルを冗長セルに置き換えるための冗長機能を備えることが必須となっている。不良セルに対応したアドレスは、例えばレーザ光の照射によってブローされるリダンダンシ（Redundancy）ヒューズにプログラムされる。ヒューズにプログラムされたアドレスは、メモリチップの動作開始時に読み出され、ヒューズラッチ回路に格納される。ヒューズラッチ回路に格納されたアドレスは、外部から入力されるメモリセルアクセス用のアドレスと比較され、両アドレスが一致した際に、不良セルに代わって冗長セルがアクセスされることで不良セルの救済が行われる。
【０００３】
通常、不良セルは、不良セルを含むメモリセルアレイ内の１行分のメモリセルの単位、あるいは１列分のメモリセルの単位で冗長セルと置き換えられる。行単位で置き換えが行われる場合、つまりローリダンダンシ（Row Redundancy）の場合には、ローアドレスがヒューズにプログラムされる。列単位で置き換えが行われる場合、つまりカラムリダンダンシ（Column Redundancy）の場合には、カラムアドレスがヒューズにプログラムされる。
【０００４】
図３７は、ローリダンダンシを有するDRAM内に設けられたリダンダンシヒューズの一例を示している。この場合、メモリセルアレイはSegment0からSegment3の４個のセグメントで構成され、各セグメント内には不良セルを救済するためのリダンダンシワード線がそれぞれ８本ずつ配置されている。各セグメントには８本のリダンダンシワード線（RWL0〜RWL7）に対応してヒューズセットが８組設けられている。各ヒューズセットは、そのヒューズセットを使用するか否かをプログラムするための１個のイネーブル（Enable）ヒューズと、リダンダンシを使用するアドレスを指定するための９個のアドレスヒューズとから構成される。なお、この場合、セグメント当たりのノーマルワード線は５１２本であると仮定している。
【０００５】
ところで、メモリをテストする工程には種々のものがあり、各工程によって不良を起こすアドレスが異なる。このため、例えばウェハ状態でテストを行い、この結果に基づいてヒューズブローをした後で、チップをパッケージに収納し、もう一度テストした後にさらにヒューズブローを行いたい場合などがある。このときの様子を図３８に示す。
【０００６】
図３８は、一回目のテスト後にSegment0内のリダンダンシワード線RWL0を使用するようにヒューズブローを行った後、二回目のテスト後に未使用部のSegment0内のリダンダンシワード線RWL1をヒューズブローした例である。このようにヒューズとリダンダンシワード線とが一意に対応していれば、テスト工程が複数回あっても、空いているヒューズを使用することができる。
【０００７】
一方、ヒューズ素子はチップ上の占有面積が大きいため、なるべく数を減らしたいという要求がある。ヒューズの数を減らすために用いる一つの手段は、ヒューズデータを圧縮することである。データ圧縮方式の一例を図３９に示す。図３９中、上側に示したデータが圧縮前のものであり、下側が圧縮後のものである。この例では、イネーブルヒューズ（E）がブローされていないヒューズセット２，４のデータ（０のデータが１０個）が１つの０であらわされる。これによって、圧縮前には６０個必要であったヒューズの個数が４２個に減る。一般に製品後のメモリのチップ当たりのリダンダンシ使用率は半分以下程度なので、この方式ではヒューズの個数を７割程度に減らすことができる。
【０００８】
ところが、このようなデータ圧縮方式を用いると、複数回のリダンダンシ工程でヒューズブローを行う際に問題が発生する。例えば一回目のリダンダンシ工程で図３９に示すようなヒューズブローを行うと、二回目のリダンダンシ工程でヒューズセット２、４を使用する必要が生じても、ヒューズブローは不可逆なプロセスなので、二度目のヒューズブローは行えない。すなわち、ヒューズデータの圧縮と、複数回のヒューズブローとは両立し難いという問題がある。
【０００９】
なお、特許文献１には、欠陥素子を冗長素子に置き換えるために使用されるアドレスヒューズの数を節約するために、冗長素子間でヒューズを共有するためのアルゴリズムが記載されている。
【００１０】
また、特許文献２には、ウェハ段階において、レーザリペアを行った後、パッケージにした半導体装置のバーンインテストの際に発生するエラーもリペアできるようにしたものが記載されている。
【００１１】
さらに、特許文献３には、欠陥セルを含むローラインまたはカラムラインを冗長ラインの１つに置き換えるようにプログラムし、所定数の冗長ラインがプログラムされた後に、さらなる欠陥セルが発見された場合に、少なくとも１つ冗長ラインのプログラムをキャンセルし、この冗長ラインを他のメモリセルの欠陥のリペアのためにプログラムするようにしたものが記載されている。
【特許文献１】特開平１１−８６５８８号公報
【特許文献２】特開２０００−２０７８９６号公報
【特許文献３】米国特許第６４１８０６９号明細書
【発明の開示】
【発明が解決しようとする課題】
【００１２】
本発明は上記のような事情を考慮してなされたものであり、その目的は、ヒューズデータを圧縮した場合でもヒューズデータのプログラムを複数回行うことができる半導体記憶装置を提供することである。
【課題を解決するための手段】
【００１３】
本発明の半導体記憶装置は、メモリセルアレイ内に存在する不良セルを冗長セルアレイ内の冗長セルと置き換えるために使用されるリダンダンシ情報をそれぞれ記憶する不揮発性記憶素子からなる複数のリダンダンシ情報記憶回路と、前記複数のリダンダンシ情報記憶回路に記憶されている複数のリダンダンシ情報を合成して新たなリダンダンシ情報を生成するリダンダンシ情報生成回路とを具備している。
【００１４】
本発明の半導体記憶装置は、複数のメモリセルを有するメモリセルアレイと、前記メモリセルアレイ内の不良セルを救済するために使用される複数の冗長セルを有する冗長セルアレイと、前記メモリセルアレイ内に存在する不良セルを前記冗長セルアレイ内の冗長セルと置き換えるために使用されるリダンダンシ情報をそれぞれ記憶する不揮発性記憶素子からなる複数のリダンダンシ情報記憶回路と、前記複数のリダンダンシ情報記憶回路に記憶されている複数のリダンダンシ情報を合成して新たなリダンダンシ情報を生成するリダンダンシ情報生成回路と、前記リダンダンシ情報生成回路で生成されたリダンダンシ情報及び前記メモリセルアレイ内のメモリセルの選択情報に応じて、前記メモリセルアレイ内のメモリセルもしくは前記冗長セルアレイ内の冗長セルを選択する選択回路とを具備している。
【発明の効果】
【００１５】
本発明の半導体記憶装置によれば、ヒューズデータを圧縮した場合でもヒューズデータのプログラムを複数回行うことができる。
【発明を実施するための最良の形態】
【００１６】
以下、図面を参照して本発明を実施の形態により説明する。
【００１７】
（第１の実施の形態）
図１は、第１の実施の形態のメモリの全体の構成を示すブロック図である。このメモリは、大きく分けてメモリマクロ（Memory macro）１０と、ヒューズボックス（Fuse box）２０とから構成されている。
【００１８】
メモリマクロ１０は、メモリセルアレイ（Memory cell array）１１、冗長セルアレイ（Spare memory cell array）１２、ロー制御回路（Row control）１３、カラム制御回路（Column control）１４、ロー用のヒューズラッチ回路（Fuse latch for row redundancy）１５、カラム用のヒューズラッチ回路（Fuse latch for column redundancy）１６等からなる。
【００１９】
メモリセルアレイ１１内には、マトリックス状に配置された複数のメモリセルが設けられている。同一行（Row）に配置された複数のメモリセルは複数のワード線のうち対応するものに共通に接続され、同一列（Column）に配置された複数のメモリセルは複数のビット線のうち対応するものに共通に接続されている。
【００２０】
冗長セルアレイ１２内には複数のリダンダンシワード線及びリダンダンシビット線が設けられている。リダンダンシワード線及びリダンダンシビット線にはそれぞれ、メモリセルアレイ１１内に不良セルが存在する場合に、この不良セルと置き換えて使用される複数の冗長セルが接続されている。
【００２１】
ロー制御回路１３は、メモリセルアレイ１１内のメモリセルをアクセスする際に、供給されるローアドレス（選択情報）とロー用のヒューズラッチ回路１５に記憶されているリダンダンシ用のローアドレスを含むリダンダンシ情報とに応じて、メモリセルアレイ１１内のワード線もしくは冗長セルアレイ１２内のリダンダンシワード線を選択する。
【００２２】
カラム制御回路１４は、メモリセルアレイ１１内のメモリセルをアクセスする際に、供給されるカラムアドレス（選択情報）とカラム用のヒューズラッチ回路１６に記憶されているリダンダンシ用のカラムアドレスを含むリダンダンシ情報とに応じて、メモリセルアレイ１１内のビット線もしくは冗長セルアレイ１２内のリダンダンシビット線を選択する。
【００２３】
ロー用のヒューズラッチ回路１５は、メモリセルアレイ１１内のメモリセルに不良セルが存在する場合に、この不良セルを含むメモリセルアレイ１１内の１行分のメモリセルを冗長セルアレイ１２内の１行分の冗長セルと置き換えを行うために使用されるリダンダンシ用のローアドレスを含むリダンダンシ情報を記憶する。
【００２４】
カラム用のヒューズラッチ回路１６は、メモリセルアレイ１１内のメモリセルに不良セルが存在する場合に、この不良セルを含むメモリセルアレイ１１内の１列分のメモリセルを冗長セルアレイ１２内の１列分の冗長セルと置き換えを行うために使用されるリダンダンシ用のカラムアドレスを含むリダンダンシ情報を記憶する。
【００２５】
ロー制御回路１３によって選択されたワード線もしくはリダンダンシワード線と、カラム制御回路１４によって選択されたビット線もしくはリダンダンシビット線との交点に位置するメモリセルもしくは冗長セルがアクセスされる。そして、データ書き込み時には、データＩ／Ｏ及びセンスアンプを介して入力される書き込みデータが選択メモリセルに供給されてデータ書き込みが行われる。データ読み出し時には、選択メモリセルに記憶されたデータがセンスアンプによって読み出され、データＩ／Ｏを介してメモリ外部に出力される。
【００２６】
ヒューズボックス２０は、ロー用のヒューズラッチ回路１５及びカラム用のヒューズラッチ回路１６に記憶されるリダンダンシ情報を生成する。ヒューズボックス２０は、リダンダンシ用のアドレス等からなるリダンダンシ情報がプログラムされる複数のヒューズ素子を含むヒューズ・ヒューズラッチ回路部（Fuse & fuse latch）２１と、このヒューズ・ヒューズラッチ回路部２１にプログラムされたリダンダンシ情報が供給され、このリダンダンシ情報を合成して新たなリダンダンシ情報を生成し、メモリマクロ１０内のロー用のヒューズラッチ回路１５及びカラム用のヒューズラッチ回路１６に転送するヒューズデータ転送制御回路部（Fuse data transfer control）２２とから構成されている。
【００２７】
図２は、図１中のヒューズボックス２０の具体的な構成を示すブロック図である。ヒューズ・ヒューズラッチ回路部２１内には、リダンダンシ情報記憶回路である複数のヒューズ・ヒューズラッチ回路が設けられている。本例では複数のヒューズ・ヒューズラッチ回路の一例として、第１のヒューズ・ヒューズラッチ回路（Fuse & fuse latch 1）２３ａと第２のヒューズ・ヒューズラッチ回路（Fuse & fuse latch 2）２３ｂとからなる２個のヒューズ・ヒューズラッチ回路が設けられている場合を示している。
【００２８】
第１、第２のヒューズ・ヒューズラッチ回路２３ａ、２３ｂ内にはそれぞれ、不揮発性記憶素子として複数個のヒューズ素子と、各ヒューズ素子に対応して設けられ、各ヒューズ素子に書き込まれたデータをラッチする複数のヒューズラッチ回路とが設けられている。第１、第２のヒューズ・ヒューズラッチ回路２３ａ、２３ｂは、供給される転送用のクロック信号FCLK1またはFCLK2に同期して、複数のヒューズラッチ回路にラッチされているデータをシリアルデータDATA1またはDATA2としてヒューズデータ転送制御回路部２２に供給する。
【００２９】
リダンダンシ情報生成回路であるヒューズデータ転送制御回路部２２は、カウンタ２４及びデータ転送制御回路２５等から構成されている。カウンタ２４は、供給されるクロック信号CLKをカウントする。カウンタ２４のカウント出力はデータ転送制御回路２５に供給される。データ転送制御回路２５は、第１、第２のヒューズ・ヒューズラッチ回路２３ａ、２３ｂに対して転送用のクロック信号FCLK1、FCLK2を供給すると共に、カウンタ２４のカウント出力及び第１、第２のヒューズ・ヒューズラッチ回路２３ａ、２３ｂから供給されるデータDATA1、DATA2を受け、両データを合成して新たなデータを生成してメモリマクロ１０に転送する。
【００３０】
図３は、図２中の第１、第２のヒューズ・ヒューズラッチ回路（リダンダンシ情報記憶回路）２３ａ、２３ｂの詳細な構成を示す回路図である。複数のヒューズ素子３１はそれぞれ、プログラム可能な不揮発性記憶素子であり、リダンダンシ用のアドレス等からなるリダンダンシ情報がこれら複数のヒューズ素子３１にプログラムされる。各ヒューズ素子３１にはフリップフロップ（F/F）を含むヒューズラッチ回路３２が接続されている。これら複数のヒューズラッチ回路３２は直列に接続されている。
【００３１】
本実施の形態では、第１のヒューズ・ヒューズラッチ回路２３ａ内に設けられる複数のヒューズ素子３１は、ウェハ状態で行われるテストの直後にプログラムされることを想定している。このため、これらのヒューズ素子として、レーザ光が照射されることによってブローされる構造のものが採用される。これに対し、第２のヒューズ・ヒューズラッチ回路２３ｂ内に設けられる複数のヒューズ素子３１は、チップがパッケージに収納された後に行われるテスト後にプログラムされることを想定している。このため、これらのヒューズ素子として、電気的な手段、例えば電流を流すことによってブローされる構造のものが採用される。
【００３２】
各ヒューズ素子３１に書き込まれたリダンダンシ情報は対応するヒューズラッチ回路３２でラッチされる。複数のヒューズラッチ回路３２でラッチされたリダンダンシ情報は、クロック信号FCLK1またはFCLK2に同期して順次転送され、データDATA1またはDATA2としてデータ転送制御回路２５に供給される。
【００３３】
図４は、図１中のロー用のヒューズラッチ回路１５及びカラム用のヒューズラッチ回路１６の詳細な構成を示す回路図である。ヒューズラッチ回路１５、１６には、それぞれフリップフロップ（F/F）を含み、直列接続された複数のヒューズラッチ回路３３が設けられている。ヒューズデータ転送制御回路部２２で生成された新たなデータが複数のヒューズラッチ回路３３の端部にシリアルに供給され、その後、複数のヒューズラッチ回路３３で順次転送されることで、リダンダンシ用のアドレス等からなるリダンダンシ情報がヒューズラッチ回路１５、１６にセットされる。
【００３４】
図５は、図３中に示す１つのヒューズ素子３１が接続されたヒューズラッチ回路３２の詳細な構成を示す回路図である。ヒューズラッチ回路３２は、前段のヒューズラッチ回路３２から転送されたデータDATAが供給されるクロックドインバータ回路４１と、インバータ回路４２とクロックドインバータ回路４３とからなりクロックドインバータ回路４１の出力をラッチするラッチ回路４４と、ラッチ回路４４の出力を転送制御するＣＭＯＳ型のトランスファゲート４５と、インバータ回路４６とクロックドインバータ回路４７とを含み、ヒューズ素子３１にプログラムされたデータがセットされると共にトランスファゲート４５から出力される前段からのデータが供給されるラッチ回路４８と、ラッチ回路４８の出力が供給されるインバータ回路４９とから構成されている。
【００３５】
ラッチ回路４８内にはさらに、ラッチ回路４８の入力ノードSQをクリアするためのＰＭＯＳ型のトランジスタ５０と、ヒューズ素子３１に書き込まれたデータを入力ノードSQにセットするためのＮＭＯＳ型のトランジスタ５１とが設けられている。
【００３６】
なお、クロックドインバータ回路４１、４７はそれぞれ、クロック信号FCLK（FCLK1及びFCLK2のいずれか一方）と反転クロック信号FCLKBで制御され、トランスファゲート４５は反転クロック信号FCLKBとクロック信号FCLKとで制御される。
【００３７】
ヒューズ素子３１に書き込まれたデータをヒューズラッチ回路３２に転送する際に、図６に示すタイミングチャートのように、クリア信号FCLRとセット信号FSETが入力される。クリア信号FCLRが“Ｌ”レベルになると、トランジスタ５０がオンし、ラッチ回路４８の入力ノードSQが強制的に“Ｈ”レベルにクリアされる。その後、セット信号FSETが“Ｈ”レベルになると、トランジスタ５１がオンする。このとき、ヒューズ素子３１がブローされていれば、入力ノードSQは“Ｈ”レベルのままとなる。ヒューズ素子３１がブローされていなければ、入力ノードSQは“Ｌ”レベルに落ちる。その後、クロック信号FCLKと反転クロック信号FCLKBとが転送クロック信号として供給されることにより、複数のヒューズラッチ回路３２を介してデータが後段に向かって順次転送される。
【００３８】
図７は、図４中に示す１つのヒューズラッチ回路３３の詳細な構成を示す回路図である。このヒューズラッチ回路３３は、図５に示すヒューズラッチ回路３２と比べて、ラッチ回路４８内の２個のトランジスタ５０、５１が省略されている点のみが異なり、他の構成はヒューズラッチ回路３２と同じなので、その構成の説明は省略する。
【００３９】
図７に示すヒューズラッチ回路３３では、クロック信号FCLKと反転クロック信号FCLKBとが転送クロック信号として供給されることにより、直列に接続された複数のヒューズラッチ回路３３でデータが順次転送される。
【００４０】
図８は、図７に示すように構成されたヒューズラッチ回路３３が複数設けられている図１中のヒューズラッチ回路１５、１６におけるデータ転送時のタイミングチャートを示している。図８中、DINは転送されるデータを表す。クロック信号FCLKと反転クロック信号FCLKBは、ヒューズラッチ回路１５、１６内に設けられているヒューズラッチ回路３３の個数回だけ立ち上げられる。クロック信号FCLKと反転クロック信号FCLKBは、図示しないカウンタによってクロック信号CLKをカウントすることによって生成される。これによって、データ転送制御回路２５で合成され、転送されてきたリダンダンシ情報を、ヒューズラッチ回路１５、１６内に設けられている複数のヒューズラッチ回路３３の所定の場所に転送し、セットすることができる。
【００４１】
次に、上記のような構成のメモリの動作を説明する。なお、理解を容易にするために、メモリセルアレイ１１内に不良セルが発生した際に、その不良セルを行単位で冗長セルアレイ１２内の冗長セルと置き換えを行う場合を例にして説明する。
【００４２】
まず、一回目のテストが行われる。このテストは、例えばウェハ状態で行われるテストである。このとき、メモリセルアレイ１１内に不良セルが発生していれば、その不良セルが存在するワード線のアドレスを含むリダンダンシ情報が、図２に示される一回目用の第１のヒューズ・ヒューズラッチ回路２３ａにプログラムされる。このプログラムは、レーザ照射装置からレーザ光を照射してヒューズ素子を切断（ブロー）することにより行われる。このとき、図２に示される二回目用の第２のヒューズ・ヒューズラッチ回路２３ｂはプログラムされない。
【００４３】
第１のヒューズ・ヒューズラッチ回路２３ａに対してプログラムされるリダンダンシ情報は、図３９を用いて説明したような従来と同様の圧縮方式を用いて圧縮される。例えば６本のリダンダンシワード線のうち０、１、３、５番目のリダンダンシワード線を使用する場合には、図９（ａ）に示すように、０、１、３、５番目のヒューズセットの各１０個のヒューズのうちイネーブル（E）ヒューズにそれぞれ１のデータが書き込まれ、残り９個のアドレスヒューズにローリダンダンシを使用するアドレスを指定するためのアドレスがそれぞれ書き込まれる。使用されない２、４番目のヒューズセットについては、図３９を用いて説明した場合と同様に、１０個の０のデータが１個の０のデータに圧縮され、それぞれ１個のイネーブルヒューズに０が書き込まれる。
【００４４】
次に、二回目のテストが行われる。このテストは、例えばチップがパッケージに収納された後に行われるテストである。このとき、メモリセルアレイ１１内に不良セルが発生していれば、その不良セルが存在するワード線のアドレスを含むリダンダンシ情報が、図２に示される二回目用の第２のヒューズ・ヒューズラッチ回路２３ｂにプログラムされる。このプログラムは、図示しない制御回路からヒューズ素子に大電流を流して切断（ブロー）することにより行われる。このとき、図２に示される一回目用の第１のヒューズ・ヒューズラッチ回路２３ａはプログラムされない。
【００４５】
第２のヒューズ・ヒューズラッチ回路２３ｂに対してプログラムされるリダンダンシ情報も、図３９を用いて説明したような従来と同様の圧縮方式を用いて圧縮される。６本のリダンダンシワード線のうち０、１、３、５番目のリダンダンシワード線は使用されており、冗長セルアレイ１２内の冗長セルに置き換えが行われているので、図９（ｂ）に示すように、１０個の０のデータが１個の０のデータに圧縮され、それぞれ１個のイネーブルヒューズに０のデータが書き込まれる。
【００４６】
新たに不良セルが発見され、２番目のリダンダンシワード線を使用する場合には、図９（ｂ）に示すように、１つのヒューズセット内の１０個のヒューズのうちイネーブル（E）ヒューズに１のデータが書き込まれ、残り９個のアドレスヒューズにローリダンダンシを使用するアドレスを指定するためのアドレスが書き込まれる。また、二回目のテストでも使用されない４番目のヒューズセットについては、１０個の０のデータが１個の０のデータに圧縮され、１個のイネーブルヒューズに０が書き込まれる。
【００４７】
メモリチップに電源が投入された後、メモリアクセスが開始される前に、図２に示すヒューズ・ヒューズラッチ回路部２１内の第１、第２のヒューズ・ヒューズラッチ回路２３ａ、２３ｂに書き込まれている図９（ｂ）に示すようなリダンダンシ情報がシリアルに読み出され、データ転送制御回路２５に供給される。この後、データ転送制御回路２５において、第１、第２のヒューズ・ヒューズラッチ回路２３ａ、２３ｂから供給される２つのリダンダンシ情報が合成されて新たなリダンダンシ情報が生成される。生成された新たなリダンダンシ情報は、メモリマクロ１０内のロー用のヒューズラッチ回路１５及びカラム用のヒューズラッチ回路１６に対してシリアルに順次転送され、ヒューズラッチ回路１５、１６にセットされる。
【００４８】
図１０は、データ転送制御回路２５で新たなリダンダンシ情報が生成される際のアルゴリズムを示すフローチャートである。このアルゴリズムでは、データの転送開始と同時に、一回目用、二回目用それぞれの複数のヒューズ素子に対して圧縮された状態で書き込まれているデータが展開されながら転送処理が行われ、転送の途中で両データの論理和が取られて新たなデータが合成され、メモリマクロ１０に供給される。
【００４９】
まず、転送開始後、第１のヒューズ・ヒューズラッチ回路２３ａから転送されるデータ（Fuse 1）の先頭、つまりイネーブルビットが０か否かが判定される（ステップＳ１）。イネーブルビットが０ならば、その後、１０ビットの０のデータが生成される（ステップＳ２）。イネーブルビットが１ならば、先頭ビットとこれに続く９ビットのデータが取り出される（ステップＳ３）。その後、１０ビットのデータがデータ転送制御回路２５に転送される（ステップＳ４）。このようにして、第１のヒューズ・ヒューズラッチ回路２３ａに書き込まれている圧縮されたデータが展開される。
【００５０】
一方、第２のヒューズ・ヒューズラッチ回路２３ｂから転送されるデータ（Fuse 2）の先頭、つまりイネーブルビットが０か否かが判定される（ステップＳ５）。イネーブルビットが０ならば、その後、１０ビットの０のデータが生成される（ステップＳ６）。イネーブルビットが１ならば、先頭ビットとこれに続く９ビットのデータが取り出される（ステップＳ７）。その後、１０ビットのデータがデータ転送制御回路２５に転送される（ステップＳ８）。このようにして、第２のヒューズ・ヒューズラッチ回路２３ｂに書き込まれている圧縮されたデータが展開される。
【００５１】
次に、ステップＳ９において、ステップＳ４で展開されて転送される１０ビットのデータと、ステップＳ８で展開されて転送される１０ビットのデータとの論理和がビット毎に取られて新たなリダンダンシ情報が合成され（ステップＳ９）、メモリマクロ１０に転送される（ステップＳ１０）。次に転送ビット数がカウントされ（ステップＳ１１）、全ての転送が終了したか否かが判定され（ステップＳ１２）、全ての転送が終了していなければステップＳ１及びＳ５に戻り、全ての転送が終了していれば、メモリマクロ１０への転送が終了する。
【００５２】
図９（ｃ）は、全てのデータの展開が終了した後の２つのリダンダンシ情報の一例を示しており、図９（ｄ）は、図９（ｃ）に示す２つのリダンダンシ情報の論理和を取ることによって新たなリダンダンシ情報が合成される様子を示している。
【００５３】
なお、上記実施の形態のメモリでは、メモリセルアレイ１１内の不良セルを行単位で冗長セルアレイ１２内の冗長セルと置き換えを行う場合について説明したが、これは不良セルを列単位で冗長セルアレイ１２内の冗長セルと置き換えることもできる。あるいは両者を併用することもできる。
【００５４】
さらに、上記実施の形態のメモリでは、複数のヒューズ・ヒューズラッチ回路の一例として第１、第２のヒューズ・ヒューズラッチ回路２３ａ、２３ｂを設け、二回のテスト結果に応じてリダンダンシ情報を二回プログラムする場合について説明した。しかし、これはヒューズ・ヒューズラッチ回路を３個以上設けることによって、三回以上のテスト結果に応じてリダンダンシ情報を三回以上プログラムしてもよい。
【００５５】
このように上記実施の形態のメモリでは、ヒューズデータを圧縮しているにもかかわらずヒューズデータのプログラムを複数回行うことができる。
【００５６】
（第２の実施の形態）
ところで、第１の実施の形態のメモリでは、イネーブルビットが０の場合、１つのヒューズセットにプログラムされるデータが全て０を表すとして、１０ビットのデータが１ビットの０のデータに圧縮されている。ここで、例えば、図１中のメモリセルアレイ１１には８個のセグメントが設けられており、各セグメント当たりリダンダンシワード線が８本ある場合を考える。
【００５７】
第１の実施の形態のメモリにおいて、メモリセルアレイ１１がSegment0からSegment31の３２個のセグメントで構成され、各セグメントに配置された８本のリダンダンシワード線(RWL)に対応してヒューズセットが８組設けられていることを想定する。この場合、二回目のプログラムで使用される第２のヒューズ・ヒューズラッチ回路２３ｂ内のヒューズ素子の個数は、最低でも３２×８＝２５６個が必要である。二回目のプログラムで少なくとも３箇所の不良セルが救済できるようなヒューズ素子の個数は、３２×８＋９×３＝２８３個となる。この２８３個のヒューズ素子のうち２５３個のヒューズ素子には、圧縮された後の０のデータがそれぞれ書き込まれており、ヒューズ素子の使用効率が悪い。
【００５８】
そこで、第２の実施の形態のメモリでは、二回目のプログラムで使用される第２のヒューズ・ヒューズラッチ回路２３ｂ内のヒューズ素子の個数を削減して、ヒューズ素子の使用効率を高めるようにしている。そのために、一回目用のヒューズデータの圧縮方式と、二回目のヒューズデータの圧縮方式とを異なるものにしている。
【００５９】
図１１は、第２の実施の形態に係るメモリにおけるヒューズボックス２０の詳細な構成を示すブロック図である。ヒューズ・ヒューズラッチ回路部２１内には、図２に示す場合と同様に、複数のヒューズ・ヒューズラッチ回路の一例として、第１のヒューズ・ヒューズラッチ回路２３ａと第２のヒューズ・ヒューズラッチ回路２３ｂとが設けられている。
【００６０】
ヒューズデータ転送制御回路部２２には、カウンタ２４及びデータ転送制御回路２５の他に、新たに指示ビット監視回路２６が追加されている。
【００６１】
図１２は、第２の実施の形態のメモリにおいて、第１、第２のヒューズ・ヒューズラッチ回路２３ａ、２３ｂに書き込まれるリダンダンシ情報の一例を示している。第１のヒューズ・ヒューズラッチ回路２３ａに書き込まれるデータは、第１の実施の形態の場合と同様の圧縮方式を用いて圧縮されている。すなわち、１つのローリダンダンシ用アドレスがプログラムされるヒューズセットは１０個のヒューズ素子からなり、１０ビットの０のデータは１個の０のデータに圧縮される。
【００６２】
二回目用の第２のヒューズ・ヒューズラッチ回路２３ｂは、１つのヒューズセットが１３個のヒューズ素子から構成されている。この１３個のヒューズ素子のうち先頭のイネーブルヒューズ（E）に続く３個のヒューズ素子（A）に対して３ビットの指示ビットが書き込まれる。この指示ビットは、そのヒューズセットに対して書き込まれるデータを、一回目用のヒューズセットの何番目のものと置き換えるかを指示するデータとして使用される。図１２に示されている例では、二回目用の最初のヒューズセットの１３個のヒューズ素子に書き込まれたデータのうち、３ビットの指示ビットが０１０なので、このデータは一回目用のヒューズセットの２番目のデータと置き換えるデータであることを示している。
【００６３】
図１３は、図１１中のデータ転送制御回路２５で新たなリダンダンシ情報が生成される際のアルゴリズムを示すフローチャートである。このアルゴリズムでは、データの転送開始後に、一回目用、二回目用の複数のヒューズ素子に書き込まれている圧縮されたデータが展開されながら転送処理が行われ、転送の途中で両データの論理和が取られて新たなデータが合成され、メモリマクロ１０に供給される。
【００６４】
まず、転送開始後、第１のヒューズ・ヒューズラッチ回路２３ａから転送されるデータ（Fuse 1）の先頭、つまりイネーブルビットが０か否かが判定される（ステップＳ１）。イネーブルビットが０ならば、その後、１０ビットの０のデータが生成される（ステップＳ２）。イネーブルビットが１ならば、先頭ビットとこれに続く９ビットのデータが取り出される（ステップＳ３）。このようにして、第１のヒューズ・ヒューズラッチ回路２３ａに書き込まれている圧縮されたデータが展開され、この展開された１０ビットのデータがデータ転送制御回路２５に転送される（ステップＳ４）。
【００６５】
一方、転送開始後に転送クロックがカウントされる（ステップＳ５）。次に、転送クロックのカウント結果と第２のヒューズ・ヒューズラッチ回路２３ｂから転送されるデータ（Fuse 2）の指示ビットの値とが一致するか否かが判定される（ステップＳ６）。一致していなければ、ステップＳ４に戻り、再び転送クロックがカウントされる。一致していれば、指示ビット以外の１０ビットのデータがデータ転送制御回路２５に転送され（ステップＳ７）。次のカウント値と指示ビットの比較時には次のデータ（Fuse 2）の指示ビットが参照される（ステップＳ８）。つまり二回目用の第２のヒューズ・ヒューズラッチ回路２３ｂの指示ビットは先頭から順番に参照される。
【００６６】
次に、ステップＳ４で転送された１０ビットのデータと、ステップＳ７で転送された１０ビットのデータとの論理和がビット毎に取られて新たなリダンダンシ情報が合成され（ステップＳ９）、メモリマクロ１０に転送される（ステップＳ１０）。次に転送ビット数がカウントされ（ステップＳ１１）、全ての転送が終了したか否かが判定され（ステップＳ１２）、全ての転送が終了していなければステップＳ１及びＳ５に戻り、全ての転送が終了していれば、メモリマクロ１０への転送が終了する。
【００６７】
図１１中の指示ビット監視回路２６は、第２のヒューズ・ヒューズラッチ回路２３ｂから転送されるデータ（Fuse 2）中のイネーブルビットが１にプログラムされているときに、３ビットの指示ビット以外の１０ビットのデータを抽出し、これら１０ビットのデータを、３ビットの指示ビットで示される一回目用のヒューズセットのデータと置き換えるためのデータとして、データ転送制御回路２５に転送する機能を有する。
【００６８】
この実施の形態のメモリでも、ヒューズデータを圧縮しているにもかかわらずヒューズデータのプログラムを複数回行うことができる。
【００６９】
ここで、例えば図１中のメモリセルアレイ１１に８個のセグメントが設けられており、各セグメント当たりリダンダンシワード線が８本ある場合に、二回目のプログラムで少なくとも３箇所の不良セルが救済できるようなヒューズ素子の個数は、１３×３＝３９個となる。すなわち、第１の実施の形態の場合の２８３個と比べて大幅にヒューズ素子の個数を減らすことができる。
【００７０】
（第２の実施の形態の変形例）
図１４は、第２の実施の形態の変形例のメモリにおいて、第１、第２のヒューズ・ヒューズラッチ回路２３ａ、２３ｂに書き込まれるリダンダンシ情報の一例を示している。第１のヒューズ・ヒューズラッチ回路２３ａに対してプログラムされるデータは、第２の実施の形態の場合と同様の圧縮方式を用いて圧縮されている。
【００７１】
二回目用の第２のヒューズ・ヒューズラッチ回路２３ｂは、１つのヒューズセットが１５個のヒューズ素子から構成されている。１５個のヒューズ素子のうち先頭の５個のヒューズ素子に対して５ビットの指示ビットが書き込まれ、それに続く１０個のヒューズ素子に対してイネーブルビットとアドレスとが書き込まれる。
【００７２】
この場合、指示ビットは、第２の実施の形態の場合とは異なり、ヒューズセットの番号ではなく、一回目用のヒューズ素子の先頭からの本数を表している。図１４に示されている例では、先頭の５ビットの指示ビットが１０１００なので、この指示ビットを含むヒューズセットに書き込まれているアドレスデータは、一回目用のヒューズセットの２０個目以降のデータと置き換えられるデータであることを示している。
【００７３】
この変形例におけるヒューズボックス２０の詳細な構成は図１１に示すものと同様であるが、データ転送制御回路２５で新たなリダンダンシ情報が生成される際のアルゴリズムが異なる。
【００７４】
図１５は、この変形例のメモリにおけるデータ転送制御回路２５で新たなリダンダンシ情報が生成される際のアルゴリズムを示すフローチャートである。このアルゴリズムでは、データの転送開始後に、一回目用、二回目用の複数のヒューズ素子に書き込まれている圧縮されたデータが、展開されながら転送処理が行われ、転送の途中で両データの論理和が取られて新たなデータが合成され、メモリマクロ１０に供給される。
【００７５】
まず、転送開始後、第１のヒューズ・ヒューズラッチ回路２３ａから転送されるデータ（Fuse 1）の先頭、つまりイネーブルビットが０か否かが判定される（ステップＳ１）。イネーブルビットが０ならば、その後、１０ビットの０のデータが生成される（ステップＳ２）。イネーブルビットが１ならば、先頭ビットとこれに続く９ビットのデータが取り出される（ステップＳ３）。このようにして、第１のヒューズ・ヒューズラッチ回路２３ａに書き込まれている圧縮されたデータが展開され、この展開された１０ビットのデータがデータ転送制御回路２５に転送される（ステップＳ４）。
【００７６】
一方、転送開始後に転送クロックがカウントされる（ステップＳ５）。次に、転送クロックのカウント結果と第２のヒューズ・ヒューズラッチ回路２３ｂから転送されるデータ（Fuse 2）の指示ビットの値が一致するか否かが判定される（ステップＳ６）。一致していなければ、ステップＳ５に戻り、再び転送クロックがカウントされる。一致していれば、指示ビット以外の１０ビットのデータがデータ転送制御回路２５に転送される（ステップＳ７）。次のカウント値と指示ビットの比較時には次のデータ（Fuse 2）の指示ビットが参照される（ステップＳ８）。つまり二回目用の第２のヒューズ・ヒューズラッチ回路２３ｂの指示ビットは先頭から順番に参照される。
【００７７】
次に、ステップＳ４で転送された１０ビットのデータと、ステップＳ７で転送された１０ビットのデータとの論理和がビット毎に取られて新たなリダンダンシ情報が合成され（ステップＳ９）、メモリマクロ１０に転送される（ステップＳ１０）。次に転送ビット数がカウントされ（ステップＳ１１）、全ての転送が終了したか否かが判定され（ステップＳ１２）、全ての転送が終了していなければステップＳ１及びＳ５に戻り、全ての転送が終了していれば、メモリマクロ１０への転送が終了する。
【００７８】
本例における指示ビット監視回路２６は、第２のヒューズ・ヒューズラッチ回路２３ｂから転送されるデータ（Fuse 2）中のイネーブルビットが１にプログラムされているときに、イネーブルビット以外のデータを抽出し、これらのデータを、５ビットの指示ビットで示される一回目用のヒューズセットのデータと置き換えるためのデータとして、データ転送制御回路２５に転送する機能を有する。
【００７９】
この変形例のメモリでも、ヒューズデータを圧縮しているにもかかわらずヒューズデータのプログラムを複数回行うことができる。
【００８０】
ここで、例えば図１中のメモリセルアレイ１１には８個のセグメントが設けられており、各セグメント当たりリダンダンシワード線が８本ある場合に、二回目のプログラムで少なくとも３箇所の不良セルが救済できるようなヒューズ素子の個数は、１５×３＝４５個となる。すなわち、第２の実施の形態の場合の３９個と比べて、ヒューズ素子の個数はわずかに増加する。しかし、第１の実施の形態の場合の２８３個と比べると、大幅にヒューズ素子の個数を減らすことができる。
【００８１】
（第３の実施の形態）
第１、第２の実施の形態及びその変形例のメモリでは、一回目用のプログラムで使用される第１のヒューズ・ヒューズラッチ回路２３ａに対し、圧縮されたデータを書き込む場合について説明した。しかし、第１のヒューズ・ヒューズラッチ回路２３ａに対して、圧縮されていないデータを書き込むようにしてもよい。
【００８２】
図１６は、第３の実施の形態のメモリにおいて、第１、第２のヒューズ・ヒューズラッチ回路２３ａ、２３ｂに書き込まれるリダンダンシ情報の一例を示している。第１のヒューズ・ヒューズラッチ回路２３ａに書き込まれるデータは圧縮されていない。すなわち、１つのヒューズセットはそれぞれ１０個のヒューズ素子からなり、ローリダンダンシ用アドレスがプログラムされない１０個のヒューズ素子には１０ビットの０のデータがそのまま書き込まれる。
【００８３】
二回目用の第２のヒューズ・ヒューズラッチ回路２３ｂについては、本例では第２の実施の形態のメモリの場合と同様の圧縮方式で圧縮されたデータが書き込まれる。つまり、第２のヒューズ・ヒューズラッチ回路２３ｂでは、１つのヒューズセットが１３個のヒューズ素子から構成されている。この１３個のヒューズ素子のうち先頭のイネーブルヒューズ（E）に続く３個のヒューズ素子に対して３ビットの指示ビットが書き込まれる。この指示ビットは、そのヒューズセットに対して書き込まれるデータを、一回目用のヒューズセットの何番目のものと置き換えるかを指示するデータとして使用される。
【００８４】
図１６に示されている例では、二回目用の最初のヒューズセットの１３個のヒューズ素子に書き込まれたデータのうち、３ビットの指示ビットが０１０なので、このデータは一回目用のヒューズセットの２番目のデータと置き換えられるデータであることを示している。
【００８５】
この実施の形態のメモリにおけるヒューズボックス２０の構成は図１１に示すものと同様である。しかし、データ転送制御回路２５で新たなリダンダンシ情報が生成される際のアルゴリズムが異なる。
【００８６】
図１７は、第３の実施の形態のメモリにおけるデータ転送制御回路２５で新たなリダンダンシ情報が生成される際のアルゴリズムを示すフローチャートである。このアルゴリズムでは、データの転送開始後に、一回目用の複数のヒューズ素子に書き込まれているデータがそのまま順次読み出されて転送され、二回目用の複数のヒューズ素子に書き込まれている圧縮されたデータは展開されながら転送処理が行われ、転送の途中で両データの論理和が取られて新たなデータが合成され、メモリマクロ１０に供給される。
【００８７】
まず、転送開始後に転送クロックがカウントされる（ステップＳ１）。第１のヒューズ・ヒューズラッチ回路２３ａからデータ（Fuse 1）がデータ転送制御回路２５に順次転送される（ステップＳ２）。次に、転送クロックのカウント結果と第２のヒューズ・ヒューズラッチ回路２３ｂから転送されるデータ（Fuse 2）の指示ビットの値が一致するか否かが判定される（ステップＳ３）。一致していなければ、ステップＳ１及びＳ３が繰り返し実行される。一致していれば、指示ビット以外の１０ビットのデータがデータ転送制御回路２５に転送される（ステップＳ４）。このようにして、第２のヒューズ・ヒューズラッチ回路２３ｂに書き込まれている圧縮されたデータが展開される。次のカウント値と指示ビットの比較時には次のデータ（Fuse 2）の指示ビットが参照される（ステップＳ５）。つまり二回目用の第２のヒューズ・ヒューズラッチ回路２３ｂの指示ビットは先頭から順番に参照される。
【００８８】
次に、ステップＳ２で転送された１０ビットのデータと、ステップＳ４で転送された１０ビットのデータとの論理和がビット毎に取られて新たなリダンダンシ情報が合成され（ステップＳ６）、メモリマクロ１０に転送される（ステップＳ７）。次に転送ビット数がカウントされ（ステップＳ８）、全ての転送が終了したか否かが判定され（ステップＳ９）、全ての転送が終了していなければステップＳ１に戻り、全ての転送が終了していれば、メモリマクロ１０への転送が終了する。
【００８９】
この実施の形態のメモリでも、ヒューズデータを圧縮しているにもかかわらずヒューズデータのプログラムを複数回行うことができる。
【００９０】
また、第２の実施の形態のメモリと同様に、二回目のプログラムで少なくとも３箇所の不良セルが救済できるようなヒューズ素子の個数は３９個となり、第１の実施の形態の場合と比べて大幅にヒューズ素子の個数を減らすことができる。
【００９１】
なお、この実施の形態のメモリでは、二回目用の第２のヒューズ・ヒューズラッチ回路２３ｂに対し、第２の実施の形態のメモリの場合と同様の方式で圧縮されたデータが書き込まれる場合を説明した。しかし、二回目用の第２のヒューズ・ヒューズラッチ回路２３ｂに対し、第１の実施の形態のメモリの場合と同様の圧縮方式で圧縮されたデータ、もしくは第２の実施の形態の変形例のメモリの場合と同様の圧縮方式で圧縮されたデータを書き込むように変形してもよい。
【００９２】
（第４の実施の形態）
ところで、複数のリダンダンシ情報記憶回路の１つがヒューズ素子の数が異なる複数のヒューズセットを持つ場合に、例えば第１の実施の形態のメモリなどのように、一定ビット数の連続した０のデータを１ビットの０のデータに圧縮する方式を採用すると、明らかに圧縮効率が低下する。これは、ローリダンダンシとカラムリダンダンシとでヒューズ素子の数が異なる数のヒューズセットを用いる場合などに相当する。例えば、１つのヒューズセットが１０個のヒューズ素子で構成される場合と、８個のヒューズ素子で構成される場合とが混在している場合を考える。１０ビットが全て０のデータを１ビットの０のデータに圧縮する方式を採用すると、８ビットが全て０のデータは圧縮されない。
【００９３】
そこで、第４の実施の形態のメモリでは、例えば、１０ビットが全て０のデータを１ビットの０のデータに圧縮する圧縮方式と、８ビットが全て０のデータを１ビットの０のデータに圧縮する圧縮方式とを併用する。そして、データの展開時に展開方式を切り替えることで、複数のリダンダンシ情報記憶回路の１つがヒューズ素子の数が異なる複数のヒューズセットを持つ場合に対応させている。
【００９４】
図１８は、第４の実施の形態に係るメモリにおけるヒューズボックス２０の詳細な構成を示すブロック図である。ヒューズ・ヒューズラッチ回路部２１内には、図１１に示す場合と同様に、複数のヒューズ・ヒューズラッチ回路の一例として、第１のヒューズ・ヒューズラッチ回路２３ａと第２のヒューズ・ヒューズラッチ回路２３ｂとが設けられている。
【００９５】
ヒューズデータ転送制御回路部２２には、カウンタ２４及びデータ転送制御回路２５の他にデータセット監視回路２７が設けられている。データセット監視回路２７は、カウンタ２４のカウント出力を監視し、圧縮前のデータが１０ビットのデータか８ビットのデータかを検知する。この検知結果はデータ転送制御回路２５に供給される。
【００９６】
図１９は、第４の実施の形態のメモリにおいて、第１のヒューズ・ヒューズラッチ回路２３ａに書き込まれる前、つまり圧縮前のリダンダンシ情報と、書き込まれた後、つまり圧縮後のリダンダンシ情報の一例を示している。この場合、例えば、ローリダンダンシ用のリダンダンシ情報は１０ビットであり、カラムリダンダンシ用のリダンダンシ情報は８ビットであるとする。圧縮前のローリダンダンシ用の１０ビットのデータは、１ビットのイネーブルビット（E）と９ビットのローアドレスとからなる。圧縮前のカラムリダンダンシ用の８ビットのデータは、１ビットのイネーブルビット（E）と７ビットのカラムアドレスとからなる。
【００９７】
１０ビットのデータが全て０のデータと、８ビットのデータが全て０のデータは、それぞれ異なる圧縮方式によって１ビットの０のデータに圧縮され、第１のヒューズ・ヒューズラッチ回路２３ａに書き込まれる。
【００９８】
第２のヒューズ・ヒューズラッチ回路２３ｂに書き込まれるリダンダンシ情報の圧縮方法は特に限定されない。すなわち、第１乃至第３の実施の形態のいずれかで採用されている圧縮方法と同様の圧縮方法を採用することができる。図１８中に示した指示ビット監視回路２６は、第２のヒューズ・ヒューズラッチ回路２３ｂに書き込まれるリダンダンシ情報の圧縮方法として、第２の実施の形態と同様の圧縮方法が採用されている場合に必要となる。従って、第２の実施の形態と同様の圧縮方法以外の圧縮方法が採用される場合には、指示ビット監視回路２６は省略することができる。
【００９９】
図２０は、図１８中のデータ転送制御回路２５において、圧縮されたリダンダンシ情報が展開され、かつメモリマクロ１０に転送される際のアルゴリズムを示すフローチャートである。
【０１００】
まず、転送開始後、第１のヒューズ・ヒューズラッチ回路２３ａから転送されるデータ(Fuse 1)の先頭、つまりイネーブルビットが０か否かが判定される（ステップＳ１）。イネーブルビットが０ならば、次にカウンタ２４のカウント内容が参照され、カウンタの指示が８ビットか１０ビットかが判定される（ステップＳ２）。カウンタの指示が８ビットの場合には、その後、０が連続する８ビットのデータが生成され（ステップＳ３）、カウンタの指示が１０ビットの場合には、その後、０が連続する１０ビットのデータが生成される（ステップＳ４）。
【０１０１】
一方、ステップＳ１でイネーブルビットが１と判定されると、次に、カウンタ２４のカウント内容が参照され、カウンタの指示が８ビットか１０ビットかが判定される（ステップＳ５）。カウンタの指示が１０ビットの場合には、その後、先頭のイネーブルビットとそれに続く９ビットのデータが取り出され（ステップＳ６）、カウンタの指示が８ビットの場合には、その後、先頭のイネーブルビットとそれに続く７ビットのデータが取り出される（ステップＳ７）。このようにして生成された８ビットあるいは１０ビットのデータがデータ転送制御回路２５に転送される（ステップＳ８，Ｓ９）。
【０１０２】
一方、第２のヒューズ・ヒューズラッチ回路２３ｂには二回目用のリダンダンシ情報がプログラムされている。この第２のヒューズ・ヒューズラッチ回路２３ｂにプログラムされたデータ(Fuse 2)は、その圧縮方式に応じた展開方式に基づいて８ビットあるいは１０ビットのデータに展開され、データ転送制御回路２５に転送される（ステップＳ１０）。この転送されたデータのうち、８ビットのデータはステップＳ８で転送された８ビットのデータとの論理和がビット毎に取られて新たなリダンダンシ情報が合成される（ステップＳ１１）。他方、１０ビットのデータはステップＳ９で転送された１０ビットのデータとの論理和がビット毎に取られて新たなリダンダンシ情報が合成される（ステップＳ１１）。合成された８ビットもしくは１０ビットのデータはメモリマクロ１０に転送される（ステップＳ１２）。次に転送ビット数がカウントされ（ステップＳ１３）、全ての転送が終了したか否かが判定され（ステップＳ１４）、全ての転送が終了していなければステップＳ１及びＳ１０に戻り、全ての転送が終了していれば、メモリマクロ１０への転送が終了する。
【０１０３】
この実施の形態のメモリでも、ヒューズデータを圧縮しているにもかかわらずヒューズデータのプログラムを複数回行うことができる。
【０１０４】
さらに、この実施の形態のメモリでは、ローリダンダンシとカラムリダンダンシとでヒューズ素子の数が異なるヒューズセットを用いていても、それぞれデータ圧縮を行うことができる。
【０１０５】
（第５の実施の形態）
この第５の実施の形態のメモリでは、第４の実施の形態のメモリの場合と同様に、例えば、１０ビットが全て０のデータを１ビットの０のデータに圧縮する圧縮方式と、８ビットが全て０のデータを１ビットの０のデータに圧縮する圧縮方式とが併用される。そして、データの展開時に展開方式を切り替えることで、複数のリダンダンシ情報記憶回路の１つが複数種類のヒューズセットを持つ場合でも対応できるようにしたものである。
【０１０６】
図２１は、第５の実施の形態に係るメモリにおけるヒューズボックス２０の詳細な構成を示すブロック図である。ヒューズ・ヒューズラッチ回路部２１内には、図１１に示す場合と同様に、複数のヒューズ・ヒューズラッチ回路の一例として、第１のヒューズ・ヒューズラッチ回路２３ａと第２のヒューズ・ヒューズラッチ回路２３ｂとが設けられている。
【０１０７】
ヒューズデータ転送制御回路部２２には、カウンタ２４、データ転送制御回路２５及び指示ビット監視回路２６が設けられている。指示ビット監視回路２６は、指示ビットの値を監視し、圧縮前のデータが１０ビットのデータか８ビットのデータかを検知し、その検知結果をデータ転送制御回路２５に出力する機能を有する。
【０１０８】
図２２は、第５の実施の形態のメモリにおいて、第１のヒューズ・ヒューズラッチ回路２３ａに書き込み前、つまり圧縮前のリダンダンシ情報と、書き込み後、つまり圧縮後のリダンダンシ情報の一例を示している。この場合、例えば、ローリダンダンシ用のリダンダンシ情報は１０ビットであり、カラムリダンダンシ用のリダンダンシ情報は８ビットであるとする。圧縮前のローリダンダンシ用の１０ビットのデータは、１ビットのイネーブルビット（E）と９ビットのローアドレスとからなる。圧縮前のカラムリダンダンシ用の８ビットのデータは、１ビットのイネーブルビット（E）と７ビットのカラムアドレスとからなる。
【０１０９】
１０ビットのデータが全て０のデータと８ビットのデータが全て０のデータは、それぞれ異なる圧縮方式によって１ビットの０のデータに圧縮される。データ圧縮後は、先頭のイネーブルビット（E）の次に１ビットの指示ビット（S）が付加される。本例では、この指示ビット（S）が１の場合は圧縮前のデータが１０ビットであることを示し、０の場合は圧縮前のデータが８ビットであることを示している。
【０１１０】
この場合にも、第２のヒューズ・ヒューズラッチ回路２３ｂに書き込まれるリダンダンシ情報の圧縮方法は特に限定されない。すなわち、第１乃至第３の実施の形態のいずれかで採用されている圧縮方法と同様の圧縮方法を採用することができる。図２１中に示した指示ビット監視回路２６は、第２のヒューズ・ヒューズラッチ回路２３ｂに書き込まれるリダンダンシ情報の圧縮方法として、第２の実施の形態と同様の圧縮方法が採用されている場合には、第２のヒューズ・ヒューズラッチ回路２３ｂに書き込まれているリダンダンシ情報を展開する際にも使用される。
【０１１１】
図２３は、図２１中のデータ転送制御回路２５において、圧縮されたリダンダンシ情報が展開され、かつメモリマクロ１０に転送される際のアルゴリズムを示すフローチャートである。
【０１１２】
まず、転送開始後、第１のヒューズ・ヒューズラッチ回路２３ａから転送されるデータ(Fuse 1)の先頭、つまりイネーブルビットが０か否かが判定される（ステップＳ１）。イネーブルビットが０ならば、次に指示ビットの値が判定される（ステップＳ２）。指示ビットが８ビットを示す０の場合には、その後、０が連続する８ビットのデータが生成され（ステップＳ３）、指示ビットが１０ビットを示す１の場合には、その後、０が連続する１０ビットのデータが生成される（ステップＳ４）。
【０１１３】
一方、ステップＳ１でイネーブルビットが１と判定されると、次に、指示ビットが０か否かが判定される（ステップＳ５）。指示ビットが１０ビットを示す１の場合には、その指示ビットに続く９ビットのデータが取り出され（ステップＳ６）、指示ビットが８ビットを示す０の場合には、その指示ビットに続く７ビットのデータが取り出される（ステップＳ７）。このようにして生成された８ビット及び１０ビットのデータがデータ転送制御回路２５に転送される（ステップＳ８，Ｓ９）。
【０１１４】
一方、第２のヒューズ・ヒューズラッチ回路２３ｂには二回目用のリダンダンシ情報がプログラムされている。この第２のヒューズ・ヒューズラッチ回路２３ｂにプログラムされたデータ(Fuse 2)は、その圧縮方式に応じた展開方式に基づいて８ビットあるいは１０ビットのデータに展開され、データ転送制御回路２５に転送される（ステップＳ１０）。この転送されたデータのうち、８ビットのデータはステップＳ８で転送された８ビットのデータとの論理和がビット毎に取られて新たなリダンダンシ情報が合成される（ステップＳ１１）。他方、１０ビットのデータはステップＳ９で転送された１０ビットのデータとの論理和がビット毎に取られて新たなリダンダンシ情報が合成される（ステップＳ１１）。合成された８ビットもしくは１０ビットのデータはメモリマクロ１０に転送される（ステップＳ１２）。次に転送ビット数がカウントされ（ステップＳ１３）、全ての転送が終了したか否かが判定され（ステップＳ１４）、全ての転送が終了していなければステップＳ１及びＳ１０に戻り、全ての転送が終了していれば、メモリマクロ１０への転送が終了する。
【０１１５】
この実施の形態のメモリでも、ヒューズデータを圧縮しているにもかかわらずヒューズデータのプログラムを複数回行うことができる。
【０１１６】
さらに、この実施の形態のメモリでは、ローリダンダンシとカラムリダンダンシとでヒューズ素子の数が異なるヒューズセットを用いていても、それぞれデータ圧縮を行うことができる。
【０１１７】
また、この実施の形態のメモリでは、ヒューズセット中に１ビットの指示ビットを含んでいるので、第４の実施の形態のメモリと比べてヒューズ素子の個数が増加する。しかし、指示ビットの値からそのヒューズセットの圧縮方式が分かるので、第１のヒューズ・ヒューズラッチ回路２３ａ内でヒューズセットの圧縮方式がばらばらに並んでいるような場合に特に有効である。これに対し、第４の実施の形態のメモリでは、ヒューズ素子の数が異なるヒューズセットが、図１９に示すようにそれぞれまとめて配置されている方が展開の効率上、有効である。
【０１１８】
（第６の実施の形態）
ところで、先に説明した第２の実施の形態及びその変形例などのメモリでは、二回目用の第２のヒューズ・ヒューズラッチ回路２３ｂ内に、ヒューズデータ転送回路部２２からヒューズラッチ回路１５、１６に転送される順番に従って複数のヒューズセットがシリアルに並んでいる。このため、ヒューズ素子が一度ブローされると、ヒューズセットの順番以前に現れるデータ（アドレス）は書き込むことができない。
【０１１９】
この第６の実施の形態のメモリは、二回目のアドレスのプログラムを任意の順番で行うことができるようにしたものである。
【０１２０】
図２４は、第６の実施の形態のメモリにおけるヒューズボックス２０の詳細な構成を示すブロック図である。ヒューズ・ヒューズラッチ回路部２１内には、複数のヒューズ・ヒューズラッチ回路の一例として、一回目のプログラム用の第１のヒューズ・ヒューズラッチ回路２３ａと、それぞれ１つのリダンダンシ用アドレスがプログラムされる二回目のプログラム用の複数の第２のヒューズ・ヒューズラッチ回路２３ｂ１、２３ｂ２、２３ｂ３、…とが設けられている。
【０１２１】
ヒューズデータ転送制御回路部２２には、カウンタ２４、データ転送制御回路２５の他に、第２のヒューズ・ヒューズラッチ回路２３ｂｉ（２３ｂ１、２３ｂ２、２３ｂ３、…）に対応して設けられた複数の指示ビット監視回路２８と、データ挿入制御回路２９とが設けられている。
【０１２２】
複数の指示ビット監視回路２８はそれぞれ、対応する第２のヒューズ・ヒューズラッチ回路２３ｂ１、２３ｂ２、２３ｂ３、…に書き込まれているデータのうち指示ビットの値を検出する。また、複数の指示ビット監視回路２８は、イネーブルビットが１のときに、カウンタ２４の値と指示ビットとの値を比較し、一致すれば、データ挿入制御回路２９に割り込み信号INTRPTi(INTRPT1,INTRPT2,INTRPT3,…)を供給する。この一致信号を受けると、データ挿入制御回路２９は、カウンタ２４の値と指示ビットとの値とが一致した第２のヒューズ・ヒューズラッチ回路に対してクロック信号FCLKxi(FCLKx1,FCLKx2,FCLKx3,…)を供給し、その第２のヒューズ・ヒューズラッチ回路から１０ビットのデータDATAxi(DATAx1,DATAx2,DATAx3,…)を取り出し、データ転送制御回路２５に供給する。
【０１２３】
図２５は、二回目用の第２のヒューズ・ヒューズラッチ回路２３ｂとして３個のヒューズ・ヒューズラッチ回路２３ｂ１、２３ｂ２、２３ｂ３が設けられている場合に、第１のヒューズ・ヒューズラッチ回路２３ａ及び３個の第２のヒューズ・ヒューズラッチ回路２３ｂ１、２３ｂ２、２３ｂ３に書き込まれるリダンダンシ情報の一例を示している。
【０１２４】
第１のヒューズ・ヒューズラッチ回路２３ａに対してプログラムされるデータは、第２の実施の形態の場合と同様の圧縮方式を用いて圧縮されている。すなわち、１０ビットの０のデータが１ビットの０のデータに圧縮される。第２のヒューズ・ヒューズラッチ回路２３ｂ１、２３ｂ２、２３ｂ３はそれぞれ、１３個のヒューズ素子からなる１つのヒューズセットで構成されている。各ヒューズセットの先頭の１個のヒューズ素子にイネーブルビット（E）が書き込まれ、これに続く３個のヒューズ素子に３ビットの指示ビット（A）が書き込まれ、残りの９個のヒューズ素子にアドレスが書き込まれる。３ビットの指示ビットは、そのヒューズセットに書き込まれているデータ（アドレス）を、合成後のデータの何番目の位置に挿入するかを指示するためのデータとして使用される。
【０１２５】
図２５に示されている例では、二回目用のヒューズ・ヒューズラッチ回路２３ｂ１のヒューズセットの指示ビットが１００なので、９ビットのデータ（アドレス）は４番目のデータの位置に挿入されるデータであることを示している。
【０１２６】
同様に、二回目用のヒューズ・ヒューズラッチ回路２３ｂ２のヒューズセットの指示ビットが０１０なので、９ビットのデータ（アドレス）は２番目のデータの位置に挿入されるデータであることを示している。
【０１２７】
二回目用のヒューズ・ヒューズラッチ回路２３ｂ３のヒューズセットはプログラムされておらず、使用されていない。
【０１２８】
図２６は、この第６の実施の形態のメモリにおけるデータ転送制御回路２５で新たなリダンダンシ情報が生成される際のアルゴリズムを示すフローチャートである。このアルゴリズムでは、データの転送開始後に、一回目用の複数のヒューズ素子に書き込まれている圧縮されたデータが、展開されながら転送処理が行われ、転送の途中で、二回目用の複数のヒューズ素子に書き込まれているデータとの論理和が取られて新たなデータが合成され、メモリマクロ１０に供給される。
【０１２９】
まず、転送開始後、第１のヒューズ・ヒューズラッチ回路２３ａから転送されるデータ（Fuse 1）の先頭、つまりイネーブルビットが０か否かが判定される（ステップＳ１）。イネーブルビットが０ならば、その後、１０ビットの０のデータが生成される（ステップＳ２）。イネーブルビットが１ならば、先頭ビットとこれに続く９ビットのデータが取り出される（ステップＳ３）。このようにして、第１のヒューズ・ヒューズラッチ回路２３ａに書き込まれている圧縮されたデータが展開されて１０ビットのデータが生成され、この生成された１０ビットのデータがデータ転送制御回路２５に転送される（ステップＳ４）。
【０１３０】
一方、転送開始後に転送クロックがカウントされる（ステップＳ５）。次に、転送クロックのカウント値と、全ての第２のヒューズ・ヒューズラッチ回路２３ｂｉに書き込まれている指示ビットの値が比較される（ステップＳ６）。次に、転送クロックのカウント値と、全ての第２のヒューズ・ヒューズラッチ回路２３ｂｉに書き込まれている指示ビットの値とが一致するものがあるか否かが判定される（ステップＳ７）。このとき、一致するものがあれば、その指示ビット以外の１０ビットのデータがデータ転送制御回路２５に転送される（ステップＳ８）。一方、一致するものがなければ、ステップＳ５に戻り、再び転送クロックがカウントされる。
【０１３１】
次に、ステップＳ４で転送された１０ビットのデータと、ステップＳ８で転送された１０ビットのデータとの論理和がビット毎に取られて新たなリダンダンシ情報が合成され（ステップＳ９）、メモリマクロ１０に転送される（ステップＳ１０）。次に転送ビット数がカウントされ（ステップＳ１１）、全ての転送が終了したか否かが判定され（ステップＳ１２）、全ての転送が終了していなければステップＳ１及びＳ５に戻り、全ての転送が終了していれば、メモリマクロ１０への転送が終了する。
【０１３２】
この第６の実施の形態のメモリでも、ヒューズデータを圧縮しているにもかかわらずヒューズデータのプログラムを複数回行うことができる。
【０１３３】
しかも、本実施の形態のメモリでは、二回目用のヒューズ・ヒューズラッチ回路としてそれぞれ独立した複数のヒューズセットを設け、各ヒューズセットにデータ挿入用の指示ビットを書き込み、データを転送する毎にこの指示ビットをカウンタ値と比較し、一致した際にそのヒューズセットにプログラムされるデータ（アドレス）を挿入するようにしている。このため、用意されているヒューズセットの数の範囲ならば何度でも、データの挿入位置を選ばずにヒューズブローすることができる。
【０１３４】
（第６の実施の形態の変形例）
図２７は、第６の実施の形態の変形例に係るメモリにおけるヒューズボックス２０の詳細な構成を示すブロック図である。
【０１３５】
先の図２４に示す第６の実施の形態に係るメモリにおいて、データ挿入制御回路２９は、カウンタ２４の値と指示ビットとの値とが一致した第２のヒューズ・ヒューズラッチ回路２３ｂｉに対してクロック信号FCLKxiを供給し、その第２のヒューズ・ヒューズラッチ回路から１０ビットのデータDATAxiを取り出してデータ転送制御回路２５に供給し、また、データ転送制御回路２５は、データ挿入制御回路２９に対して転送用のクロック信号FCLK2を供給する場合について説明した。
【０１３６】
これに対し、この変形例に係るメモリでは、データ挿入制御回路２９は、指示ビット監視回路２８から割り込み信号INTRPTiを受けると、データ転送制御回路２５に対して割り込み信号INTRPTを出力する。また、データ転送制御回路２５は、この割り込み信号INTRPTを受けると、転送用クロック信号FCLK2をデータ挿入制御回路２９に供給する。
【０１３７】
転送用クロック信号FCLK2を受けると、データ挿入制御回路２９は、割り込み信号INTRPTiを出力した指示ビット監視回路２８に対応した第２のヒューズ・ヒューズラッチ回路２３ｂｉにクロック信号FCLKxiを供給し、そのとき、第２のヒューズ・ヒューズラッチ回路２３ｂｉから出力されるDATAxiを受け、このデータをデータ転送制御回路２５にデータDATA2として供給する。
【０１３８】
割り込み信号INTRPTが供給された場合、データ転送制御回路２５からメモリマクロ１０に転送されるデータは第２のヒューズ・ヒューズラッチ回路２３ｂｉに記憶されているデータとなる。このとき、第１のヒューズ・ヒューズラッチ回路２３ａに記憶されているデータDATA1も、停止することなくデータ転送制御回路２５に供給され続ける。すなわち、クロック信号FCLK1は常に第１のヒューズ・ヒューズラッチ回路２３ａに供給され、第１のヒューズ・ヒューズラッチ回路２３ａからはデータDATA1が出力され続ける。実際には、データ転送制御回路２５は、第１、第２のヒューズ・ヒューズラッチ回路２３ａ、２３ｂｉから供給されるデータDATA1、DATA2の論理和を取ってメモリマクロ１０に出力するか、もしくは割り込み信号INTRPTに基づいて２本のデータ線、つまりデータDATA1、DATA2転送用の配線を切り替えてデータDATA1もしくはDATA2を出力する。
【０１３９】
前者の場合、つまり両データの論理和が取られる場合には、同一のリダンダンシワード線(RWL)に対して一回目と二回目とのヒューズブローを行うことは許されない。また、後者の場合、つまり両データを切り替える場合には、二回目のヒューズブローが常に優先される。これらの制御を行うための制御回路は、データ転送制御回路２９に含まれている。
【０１４０】
図２８は、この第６の実施の形態の変形例に係るメモリにおけるデータ転送制御回路２５で新たなリダンダンシ情報が生成される際のアルゴリズムを示すフローチャートである。このアルゴリズムでは、データの転送開始後に、一回目用の複数のヒューズ素子に書き込まれている圧縮されたデータが展開され、データ転送制御回路に転送される。また、これと並行して、二回目用の複数のヒューズ素子に書き込まれているデータの指示ビットとカウント値との一致が検出され、一致が検出されると割り込み信号INTRPTが生成される。メモリマクロに転送されるデータは割り込み信号INTRPTに応じて選択される。
【０１４１】
まず、転送開始後、第１のヒューズ・ヒューズラッチ回路２３ａから転送されるデータ（Fuse 1）の先頭、つまりイネーブルビットが０か否かが判定される（ステップＳ１）。イネーブルビットが０ならば、その後、１０ビットの０のデータが生成される（ステップＳ２）。イネーブルビットが１ならば、先頭ビットとこれに続く９ビットのデータが取り出される（ステップＳ３）。このようにして、第１のヒューズ・ヒューズラッチ回路２３ａに書き込まれている圧縮されたデータが展開されて１０ビットのデータが生成され、この生成された１０ビットのデータがデータ転送制御回路２５に転送される（ステップＳ４）。
【０１４２】
一方、転送開始後に転送クロックがカウントされる（ステップＳ５）。次に、転送クロックのカウント値と、全ての第２のヒューズ・ヒューズラッチ回路２３ｂｉに書き込まれている指示ビットの値が比較される（ステップＳ６）。次に、転送クロックのカウント値と、全ての第２のヒューズ・ヒューズラッチ回路２３ｂｉに書き込まれている指示ビットの値とが一致するものがあるか否かが判定される（ステップＳ７）。このとき、一致するものがあれば、割り込み信号INTRPTが出力され、指示ビットが一致したデータの指示ビット以外の１０ビットのデータがデータ転送制御回路２５に転送される（ステップＳ８）。一方、一致するものがなければ、ステップＳ５に戻り、再び転送クロックがカウントされる。
【０１４３】
次に、割り込み信号INTRPTが出力されているか否かが判定され（ステップＳ９）、割り込み信号INTRPTが出力されていなければ、Fuse列１からのデータが有効データとして選択され（ステップＳ１０）、他方、割り込み信号INTRPTが出力されていれば、Fuse列２からのデータが有効データとして選択され（ステップＳ１１）、その後、メモリマクロ１０に転送される（ステップＳ１２）。次に転送ビット数がカウントされ（ステップＳ１３）、全ての転送が終了したか否かが判定され（ステップＳ１４）、全ての転送が終了していなければステップＳ１及びＳ５に戻り、全ての転送が終了していれば、メモリマクロ１０への転送が終了する。
【０１４４】
この第６の実施の形態の変形例のメモリでも、ヒューズデータを圧縮しているにもかかわらずヒューズデータのプログラムを複数回行うことができる。
【０１４５】
しかも、本変形例のメモリでは、二回目用のヒューズ・ヒューズラッチ回路としてそれぞれ独立した複数のヒューズセットを設け、各ヒューズセットにデータ挿入用の指示ビットを書き込み、データを転送する毎にこの指示ビットをカウンタ値と比較し、一致した際にそのヒューズセットにプログラムされるデータ（アドレス）を挿入するようにしている。このため、用意されているヒューズセットの数の範囲ならば何度でも、データの挿入位置を選ばずにヒューズブローすることができる。
【０１４６】
上記各実施形態及びその変形例に係るメモリでは、一例として、５１２本のワード線に対して８本のリダンダンシワード線が用意される場合を説明した。しかし、リダンダンシワード線の本数を増やす場合、もしくは減らす場合、さらには５１２本のワード線と８本のリダンダンシワード線の組み合わせを１バンク（Ｂａｎｋ）と呼ぶとすると、多バンク構成の場合には、指示ビットの定義を変更することで対応することができる。
【０１４７】
（第７の実施の形態）
次に、第７の実施の形態のメモリを説明する。先の第２の実施の形態のメモリでは、一回目用及び二回目の第１、第２のヒューズ・ヒューズラッチ回路２３ａ、２３ｂに対し、それぞれ異なる圧縮方式で圧縮されたデータがプログラムされる場合を説明した。これに対して、この第７の実施の形態のメモリでは、第１、第２のヒューズ・ヒューズラッチ回路２３ａ、２３ｂに対し、同様の圧縮方式で圧縮されたデータをプログラムすることで、ヒューズ素子の使用効率を向上させるようにしたものである。
【０１４８】
図２９は、第７の実施の形態のメモリにおいて、第１、第２のヒューズ・ヒューズラッチ回路に書き込まれるリダンダンシ情報の一例を示している。すなわち、一回目及び二回目共、１ビット目のイネーブルビット（E）に１のデータが書き込まれ、これに続く３個の指示ビット（A）に指示ビットが書き込まれ、残り９個のデータビット（アドレスビット）にローリダンダンシを使用するアドレスを指定するためのアドレスが書き込まれる。図２９に示されている例では、プログラムをするために使用される二回目用のヒューズ・ヒューズラッチ回路２３ｂ内の１つのヒューズセットの３ビットの指示ビットが０１１なので、この指示ビットに続く９ビットのデータ（アドレス）は合成後の３番目の位置に挿入されるデータであることを示している。
【０１４９】
この実施の形態のメモリにおけるヒューズボックス２０は、図１１に示す場合と同様の構成を有する。
【０１５０】
図３０は、この第７の実施の形態のメモリにおけるデータ転送制御回路２５で新たなリダンダンシ情報が生成される際のアルゴリズムを示すフローチャートである。このアルゴリズムでは、データの転送開始後に、一回目用の複数のヒューズ素子に書き込まれている圧縮されたデータが、展開されながら転送処理が行われ、転送の途中で、二回目用の複数のヒューズ素子に書き込まれているデータとの間で論理和が取られて新たなデータが合成され、メモリマクロ１０に供給される。
【０１５１】
まず、第１のヒューズ・ヒューズラッチ回路２３ａからのデータ転送開始後に、転送クロックがカウントされる（ステップＳ１）。次に、転送クロックのカウント値と、第１のヒューズ・ヒューズラッチ回路２３ａに書き込まれている指示ビットの値とが一致するか否かが判定される（ステップＳ２）。このとき、一致しなければ、その後、１０ビットの０のデータが生成される（ステップＳ３）。一方、一致すれば、その指示ビット以外の１０ビットのデータが取り出される（ステップＳ４）。次に、上記のようにして生成された１０ビットのデータがデータ転送制御回路２５に転送される（ステップＳ５）。次のカウント値と指示ビットの比較時には次のデータ（Fuse 1）の指示ビットが参照される（ステップＳ６）。つまり一回目用の第１のヒューズ・ヒューズラッチ回路２３ａの指示ビットは先頭から順番に参照される。
【０１５２】
また、第２のヒューズ・ヒューズラッチ回路２３ｂからのデータ転送開始後に、転送クロックがカウントされる（ステップＳ７）。次に、転送クロックのカウント値と、第２のヒューズ・ヒューズラッチ回路２３ｂに書き込まれている指示ビットの値とが一致するか否かが判定される（ステップＳ８）。このとき、一致すれば、その指示ビット以外の１０ビットのデータがデータ転送制御回路２５に転送される（ステップＳ９）。次のカウント値と指示ビットの比較時には次のデータ（Fuse 2）の指示ビットが参照される（ステップＳ１０）。つまり二回目用の第２のヒューズ・ヒューズラッチ回路２３ｂについても、指示ビットは先頭から順番に参照される。
【０１５３】
一方、ステップＳ５で転送された１０ビットのデータと、ステップＳ９で転送された１０ビットのデータとの論理和がビット毎に取られて新たなリダンダンシ情報が合成され（ステップＳ１１）、メモリマクロ１０に転送される（ステップＳ１２）。次に転送ビット数がカウントされ（ステップＳ１３）、全ての転送が終了したか否かが判定され（ステップＳ１４）、全ての転送が終了していなければステップＳ１及びＳ７に戻り、全ての転送が終了していれば、メモリマクロ１０への転送が終了する。
【０１５４】
本実施の形態のメモリでも、ヒューズデータを圧縮しているにもかかわらずヒューズデータのプログラムを複数回行うことができる。
【０１５５】
また、本実施の形態のメモリでは、第６の実施の形態のメモリの場合と同様に、二回目用のヒューズ・ヒューズラッチ回路としてそれぞれ独立した複数のヒューズセットを設けることで、データの挿入位置を選ばずにヒューズブローすることができる。
【０１５６】
（第８の実施の形態）
ところで、第６の実施の形態及びその変形例のメモリなどでは、場合によっては以下のような不都合が生じることがある。
【０１５７】
図３１は、第６の実施の形態及びその変形例のメモリにおいて、５１２本のワード線WLに対して設けられた８本のリダンダンシワード線RWL1〜RWL7と、一回目用と二回目用のヒューズセットにプログラムされるアドレス値(1st, 2nd Fuse Blow address)、及び実際にメモリマクロ１０に転送されるアドレス値(transfer Fuse Data)を示している。
【０１５８】
ヒューズセットにアドレス値がプログラムされることで、通常動作時にそのアドレスにアクセスがあった場合は、アドレス値がプログラムされたリダンダンシワード線RWLがアクセスされる。
【０１５９】
図３１中の左側は、一回目用のテスト、例えばウェハレベルでのテストで、ワード線WLの１０番と２０番と３０番にそれぞれ不良があり、一回目用のヒューズセットを用いてリダンダンシワード線RWLで置き換えてテストをパスしたことを示している。そのヒューズのプログラム状態を示すのが、図３１中の「1st Fuse Blow address」の値である。
【０１６０】
このチップを、例えばアセンブリした後にテストしたところ、ワード線WLの２０番(WL20)が不良であるという結果が得られたとする。この場合、アセンブリ後のチップ内部では、実際には、リダンダンシワード線RWL1に不良が発生しているはずであるが、チップ外部から見ればそれは２０番のワード線WL20に不良が発生していると見える。仮に、外部からRWL1が不良であることを検知する手段があったとしても、この場合に救済すべきワード線は２０番のワード線WL20である。従って、二回目用のヒューズセットを用いて、空いているリダンダンシワード線RWL4で２０番のワード線WL20を救済したとする。この場合、通常のメモリ動作時に、５１２本のワード線WLのうち２０番のワード線WL20がアクセスされると、２本のリダンダンシワード線RWL1とRWL4が同時にアクセスされる。すなわち、この場合に正常な回路動作は保証できず、誤動作が生じることになる。
【０１６１】
二回目用のヒューズセットのプログラム後の状態を示すのが図３１中の右側の「2nd Fuse Blow address」の値である。また、実際にメモリマクロ１０に転送されるデータは「transfer Fuse Data」の値である。図中、破線で囲んでいるように、アドレス値の「２０」が２回転送される。
【０１６２】
第８の実施の形態に係るメモリでは、上述したように一回目用と二回目用のヒューズセットに同じアドレス値がプログラムされた場合における誤動作の発生を防止するようにしたものである。
【０１６３】
次に、第８の実施の形態に係るメモリの原理を、図３１を用いて説明する。図３２は、図３１の場合と同様に、５１２本のワード線WLに対して設けられた８本のリダンダンシワード線RWLと、これらのリダンダンシワード線RWLを使用する際にヒューズセットにプログラムされるアドレス値、及び実際にメモリマクロ１０に転送されるアドレス値を示している。図中の左側には一回目のヒューズセットを用いて救済を行い、その後のテストをパスした状態を示しており、右側には二回目のヒューズセットを用いて救済を行った状態、及び実際にメモリマクロ１０に転送されるアドレス値を示している。
【０１６４】
最初のテストの際に、ワード線の１０番、２０番、３０番、及び４０番に不良が検出されたとすると、一回目のヒューズブロー時に、これらのワード線がリダンダンシワード線RWL0、RWL1、RWL2、及びRWL3を用いて救済される。
【０１６５】
そして、アセンブリ後のテストで、ワード線WLの２０番及び５０番が不良であることが検出されたとする。この後、二回目用のヒューズセットがプログラムされ、未使用のリダンダンシワード線を用いて救済が行われる。
【０１６６】
ここで、第６の実施の形態及びその変形例によるメモリのように、二回目用のヒューズセットにプログラムされたアドレス値がそのままデータ転送制御回路２５を経由してメモリマクロ１０に転送されると、２０番のワード線については同じアドレス値が２回転送されてしまう。これを避けるため、本実施の形態のメモリでは、一回目用のヒューズセットに関しては、これから転送されようとする１０ビットのデータがモニタされる。また、二回目用のヒューズセットの１０ビットのデータの中に同じアドレス値があるか否かが比較検知される。この結果、同じアドレス値がなければ、二回目用のヒューズセットの指示ビットによる割り込み判定が行われ、一回目用もしくは二回目用のヒューズセットの１０ビットのデータがメモリマクロ１０に転送される。同じアドレス値があった場合には、二回目用のヒューズセットの中に同じアドレス値が検知された一回目用のヒューズセットの１０ビットのデータが全て０にされ、メモリマクロ１０に転送される。なお、一回目用のヒューズセットの１０ビットのデータが全て０にされる代わりに、イネーブルビットのみが０にされてもよい。二回目用のヒューズセットに対してプログラムされたデータについては、図３０の場合と同様に指示ビットによる割り込み判定が行われ、その結果に基づいてデータ転送制御が行われる。従って、メモリマクロ１０に転送されるアドレス値は、図３２中の「transfer Fuse Data」に示すように、１０番、３０番、４０番、２０番、及び５０番となる。すなわち、二回目用のヒューズセットに対してプログラムされたアドレス値で同じものが存在していれば、その同じアドレス値の生成が取り消される。
【０１６７】
図３３は、この第８の実施の形態のメモリにおけるヒューズボックス２０の詳細な構成を示すブロック図である。この実施形態におけるヒューズボックス２０の基本的な構成は図２７に示すものと同様であるが、以下の点が図２７に示すものとは異なる。
【０１６８】
すなわち、図２７中の複数の指示ビット監視回路２８に替えて複数の指示ビット及びアドレス監視回路２８ｂが設けられる。これらの各指示ビット及びアドレス監視回路２８ｂには、対応する第２のヒューズ・ヒューズラッチ回路２３ｂ１、２３ｂ２、２３ｂ３、…にプログラムされるデータ、カウンタ２４の値、及び第１のヒューズ・ヒューズラッチ回路２３ａからデータ転送制御回路２５に転送される１０ビットのデータFMON［0:9］がそれぞれ供給される。各指示ビット及びアドレス監視回路２８ｂは、第１のヒューズ・ヒューズラッチ回路２３ａからデータ転送制御回路２５に対してシリアルデータDATA1が転送される前に、上記データFMON［0:9］と、対応する第２のヒューズ・ヒューズラッチ回路２３ｂ１、２３ｂ２、２３ｂ３、…に予めプログラムされているアドレス値とを比較し、一致するアドレス値があれば一致信号OEMTCHi(i=1,2,3,…)を出力する。アドレス値を比較するタイミングは、カウンタ２４の出力信号を用いて制御できる。
【０１６９】
また、図２７中のデータ挿入制御回路２９に替えてデータ挿入及び削除制御回路２９ｂが設けられる。このデータ挿入及び削除制御回路２９ｂは、上記一致信号OEMTCHiを受けると、データ転送制御回路２５に対して一致信号OEMTCHを出力する。データ転送制御回路２５は、この一致信号OEMTCHを受けると、第１のヒューズ・ヒューズラッチ回路２３ａからのアドレス値のメモリマクロ１０へのデータ転送を取り消す。すなわち、メモリマクロ１０に転送されるデータの生成が実質的に取り消される。
【０１７０】
図３４は、図３３中のヒューズボックス２０内に設けられる第１、第２のヒューズ・ヒューズラッチ回路に書き込まれるリダンダンシ情報、及びメモリマクロ１０に転送されるデータの一例を示している。
【０１７１】
この場合、一回目用のヒューズセットに対してプログラムを行う場合には、１ビット目のイネーブルビット（E）に１のデータが書き込まれ、これに続く９個のデータビット（アドレスビット）にローリダンダンシを使用するアドレスを指定するためのアドレスが書き込まれる。二回目用のヒューズセットに対してプログラムを行う場合には、１ビット目のイネーブルビット（E）に１のデータが書き込まれ、これに続く３個の指示ビット（A）に指示ビットが書き込まれ、残り９個のデータビット（アドレスビット）にローリダンダンシを使用するアドレスを指定するためのアドレスが書き込まれる。
【０１７２】
図３４に示されている例では、一回目用のヒューズセットに対し、４本のリダンダンシワード線RWL0、RWL1、RWL2、RWL3と置き換えるための１０番、２０番、３０番、及び４０番のアドレス値がプログラムされている。また、二回目用のヒューズセットに対し、２本のリダンダンシワード線RWL4、RWL5と置き換えるための２０番及び５０番のアドレス値がプログラムされている。
【０１７３】
また、一回目用のヒューズセットのうちローリダンダンシワード線RWL1に対応するアドレス値「２０」と同じアドレス値が、二回目用のヒューズセットに予めプログラムされているアドレス値中に存在している。従って、このローリダンダンシワード線RWL1に対応したアドレス値「２０」は転送されず、取り消される。
【０１７４】
図３５は、この第８の実施の形態のメモリにおけるデータ転送制御回路２５で新たなリダンダンシ情報が生成される際のアルゴリズムを示すフローチャートである。
【０１７５】
ところで、図３５に示したアルゴリズムに従ってデータ転送を行うと、一回目と二回目で同一のローリダンダンシワード線に同一のアドレス値がプログラムされている場合は、そのアドレス値はメモリマクロ１０に転送されないことになる。つまり、上記のように二回目用のヒューズセットをプログラムすると、一回目用のヒューズセットにプログラムされたデータをキャンセルするのみの動作が行われる。これは、例えば一回目用のヒューズセットに対するブロー時にミスがあり、正しいアドレスがプログラムできなかった場合などに用いることができる。
【０１７６】
この場合の例を図３６に示す。一回目のヒューズブローで１０番、２０番、３０番のアドレスをプログラムするつもりが、プログラムミスにより、２０番が２１番となってしまった状態を示している。そこで、二回目のヒューズブローでローリダンダンシワード線RWL1を指示して２０番のアドレスをプログラムし、かつ新たなローリダンダンシワード線RWL3を指示して２０番のアドレスをプログラムすることで、始めに意図していたアドレス値「２０」が生成でき、かつメモリマクロ１０に転送することができる。
【０１７７】
図３３に示すような構成のヒューズボックス２０では、指示ビット及びアドレス監視回路２８ｂは、一致信号OEMTCHiを出力する際に同時に割り込み信号INTRPTiも出力する。図３６に示すような制御を行う場合には、ヒューズデータをキャンセルしたいので、データ挿入及び削除制御回路２９ｂは、一致信号OEMTCHiを優先し、一致信号OEMTCHのみを出力し、割り込み信号INTRPTは出力しない。この場合、一致信号OEMTCHiと割り込み信号INTRPTiの両方が入力された場合、一致信号OEMTCHのみを出力するように各指示ビット及びアドレス監視回路２８ｂを構成すればよい。
【図面の簡単な説明】
【０１７８】
【図１】第１の実施の形態のメモリの全体の構成を示すブロック図。
【図２】図１中のヒューズボックスの具体的な構成を示すブロック図。
【図３】図２中の第１、第２のヒューズ・ヒューズラッチ回路の詳細な構成を示す回路図。
【図４】図１中のロー用のヒューズラッチ回路及びカラム用のヒューズラッチ回路の詳細な構成を示す回路図。
【図５】図３中に示す１つのヒューズ素子が接続されたヒューズラッチ回路の詳細な構成を示す回路図。
【図６】図５のヒューズラッチ回路の動作の一例を示すタイミングチャート。
【図７】図４中に示す１つのヒューズラッチ回路の詳細な構成を示す回路図。
【図８】図７のヒューズラッチ回路の動作の一例を示すタイミングチャート。
【図９】第１の実施の形態のメモリのデータ転送制御回路でデータが合成される様子を示す図。
【図１０】第１の実施の形態のメモリのデータ転送制御回路で新たなリダンダンシ情報が生成される際のアルゴリズムを示すフローチャート。
【図１１】第２の実施の形態に係るメモリにおけるヒューズボックスの詳細な構成を示すブロック図。
【図１２】第２の実施の形態のメモリにおいて第１、第２のヒューズ・ヒューズラッチ回路に書き込まれるリダンダンシ情報の一例を示す図。
【図１３】図１１中のデータ転送制御回路で新たなリダンダンシ情報が生成される際のアルゴリズムを示すフローチャート。
【図１４】第２の実施の形態の変形例のメモリにおいて、第１、第２のヒューズ・ヒューズラッチ回路に書き込まれるリダンダンシ情報の一例を示す図。
【図１５】第２の実施の形態の変形例のメモリにおけるデータ転送制御回路で新たなリダンダンシ情報が生成される際のアルゴリズムを示すフローチャート。
【図１６】第３の実施の形態のメモリにおいて、第１、第２のヒューズ・ヒューズラッチ回路に書き込まれるリダンダンシ情報の一例を示す図。
【図１７】第３の実施の形態のメモリにおけるデータ転送制御回路で新たなリダンダンシ情報が生成される際のアルゴリズムを示すフローチャート。
【図１８】第４の実施の形態に係るメモリにおけるヒューズボックスの詳細な構成を示すブロック図。
【図１９】第４の実施の形態のメモリにおいて、第１のヒューズ・ヒューズラッチ回路に書き込まれる前のリダンダンシ情報と書き込まれた後のリダンダンシ情報の一例を示す図。
【図２０】図１８中のデータ転送制御回路において、圧縮されたリダンダンシ情報が展開され、かつメモリマクロに転送される際のアルゴリズムを示すフローチャート。
【図２１】第５の実施の形態に係るメモリにおけるヒューズボックスの詳細な構成を示すブロック図。
【図２２】第５の実施の形態のメモリにおいて、第１のヒューズ・ヒューズラッチ回路に書き込み前のリダンダンシ情報と書き込み後のリダンダンシ情報の一例を示す図。
【図２３】図２１中のデータ転送制御回路において、圧縮されたリダンダンシ情報が展開され、かつメモリマクロに転送される際のアルゴリズムを示すフローチャート。
【図２４】第６の実施の形態のメモリにおけるヒューズボックスの詳細な構成を示すブロック図。
【図２５】第６の実施の形態のメモリにおいて、第１、第２のヒューズ・ヒューズラッチ回路に書き込まれるリダンダンシ情報の一例を示す図。
【図２６】第６の実施の形態のメモリにおけるデータ転送制御回路で新たなリダンダンシ情報が生成される際のアルゴリズムを示すフローチャート。
【図２７】第６の実施の形態の変形例に係るメモリにおけるヒューズボックスの詳細な構成を示すブロック図。
【図２８】第６の実施の形態の変形例のメモリにおけるデータ転送制御回路で新たなリダンダンシ情報が生成される際のアルゴリズムを示すフローチャート。
【図２９】第７の実施の形態のメモリにおいて、第１、第２のヒューズ・ヒューズラッチ回路に書き込まれるリダンダンシ情報の一例を示す図。
【図３０】第７の実施の形態のメモリにおけるデータ転送制御回路で新たなリダンダンシ情報が生成される際のアルゴリズムを示すフローチャート。
【図３１】第６の実施の形態及びその変形例のメモリにおいて、リダンダンシワード線と、一回目用と二回目用のヒューズセットにプログラムされるアドレス値、及び実際にメモリマクロに転送されるアドレス値を示す図。
【図３２】第８の実施の形態に係るメモリの原理を説明するための図。
【図３３】第８の実施の形態のメモリにおけるヒューズボックスの詳細な構成を示すブロック図。
【図３４】図３３中のヒューズボックス内に設けられる第１、第２のヒューズ・ヒューズラッチ回路に書き込まれるリダンダンシ情報、及びメモリマクロに転送されるデータの一例を示す図。
【図３５】第８の実施の形態のメモリにおけるデータ転送制御回路で新たなリダンダンシ情報が生成される際のアルゴリズムを示すフローチャート。
【図３６】第８の実施の形態のメモリにおいて、リダンダンシワード線と、一回目用と二回目用のヒューズセットにプログラムされるアドレス値、及び実際にメモリマクロに転送されるアドレス値を示す図。
【図３７】ローリダンダンシを有するDRAM内に設けられたリダンダンシヒューズの一例を示す図。
【図３８】従来のヒューズブローを説明するための図。
【図３９】従来のデータ圧縮の一例を説明するための図。
【符号の説明】
【０１７９】
１０…メモリマクロ、１１…メモリセルアレイ、１２…冗長セルアレイ、１３…ロー制御回路、１４…カラム制御回路、１５…ロー用のヒューズラッチ回路、１６…カラム用のヒューズラッチ回路、２０…ヒューズボックス、２１…ヒューズ・ヒューズラッチ回路部、２２…ヒューズデータ転送制御回路部、２３ａ…第１のヒューズ・ヒューズラッチ回路、２３ｂ…第２のヒューズ・ヒューズラッチ回路、２４…カウンタ、２５…データ転送制御回路、２６…指示ビット監視回路、２７…データセット監視回路、２８…指示ビット監視回路、２８ｂ…指示ビット及びアドレス監視回路、２９…データ挿入制御回路、２９ｂ…データ挿入及び削除制御回路、３１…ヒューズ素子、３２…ヒューズラッチ回路、３３…ヒューズラッチ回路。
【図１】
2006185569.tif 000003
【図２】
2006185569.tif 000004
【図３】
2006185569.tif 000005
【図４】
2006185569.tif 000006
【図５】
2006185569.tif 000007
【図６】
2006185569.tif 000008
【図７】
2006185569.tif 000009
【図８】
2006185569.tif 000010
【図９】
2006185569.tif 000011
【図１０】
2006185569.tif 000012
【図１１】
2006185569.tif 000013
【図１２】
2006185569.tif 000014
【図１３】
2006185569.tif 000015
【図１４】
2006185569.tif 000016
【図１５】
2006185569.tif 000017
【図１６】
2006185569.tif 000018
【図１７】
2006185569.tif 000019
【図１８】
2006185569.tif 000020
【図１９】
2006185569.tif 000021
【図２０】
2006185569.tif 000022
【図２１】
2006185569.tif 000023
【図２２】
2006185569.tif 000024
【図２３】
2006185569.tif 000025
【図２４】
2006185569.tif 000026
【図２５】
2006185569.tif 000027
【図２６】
2006185569.tif 000028
【図２７】
2006185569.tif 000029
【図２８】
2006185569.tif 000030
【図２９】
2006185569.tif 000031
【図３０】
2006185569.tif 000032
【図３１】
2006185569.tif 000033
【図３２】
2006185569.tif 000034
【図３３】
2006185569.tif 000035
【図３４】
2006185569.tif 000036
【図３５】
2006185569.tif 000037
【図３６】
2006185569.tif 000038
【図３７】
2006185569.tif 000039
【図３８】
2006185569.tif 000040
【図３９】
2006185569.tif 000041