JP2001273789A - メモリブロックの修復方法 - Google Patents

メモリブロックの修復方法

Info

Publication number
JP2001273789A
JP2001273789A JP2001028520A JP2001028520A JP2001273789A JP 2001273789 A JP2001273789 A JP 2001273789A JP 2001028520 A JP2001028520 A JP 2001028520A JP 2001028520 A JP2001028520 A JP 2001028520A JP 2001273789 A JP2001273789 A JP 2001273789A
Authority
JP
Japan
Prior art keywords
ram
block
segments
sub
segment
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2001028520A
Other languages
English (en)
Inventor
Donald R Weiss
ドナルド・アール・ウェイス
Jay Fleischman
ジェイ・フライシュマン
Jeffery C Brauch
ジェフリー・シー・ブラウチ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
HP Inc
Original Assignee
Hewlett Packard Co
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hewlett Packard Co filed Critical Hewlett Packard Co
Publication of JP2001273789A publication Critical patent/JP2001273789A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/78Masking faults in memories by using spares or by reconfiguring using programmable devices
    • G11C29/80Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout
    • G11C29/802Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout by encoding redundancy signals
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/78Masking faults in memories by using spares or by reconfiguring using programmable devices
    • G11C29/84Masking faults in memories by using spares or by reconfiguring using programmable devices with improved access time or stability
    • G11C29/848Masking faults in memories by using spares or by reconfiguring using programmable devices with improved access time or stability by adjacent switching

Landscapes

  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Dram (AREA)
  • Static Random-Access Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

(57)【要約】 【課題】 使用されない修復回路の量を最小化できる、
欠陥メモリセグメントの修復システム及び方法を提供す
る。 【解決手段】本発明は、それぞれ修復可能なRAMメモ
リセルの複数のセグメントと、1つまたは複数の欠陥セ
グメントを修復するための修復データを生成する状態機
械と、1つまたは複数の欠陥セグメントを識別するデー
タを生成するスキャンアドレスマシンと、スキャンアド
レスマシンにより識別された1つまたは複数の欠陥セグ
メントに状態機械により生成された修復データをマップ
するマッピング回路と、を含む修復可能なRAMブロッ
クを提供する。これによると、生成された修復データを
欠陥があると検出されたRAMの任意のセグメントの1
つにマップすることができるので、RAMのあらゆるセ
グメントを修復するのに十分な回路を必要とすることな
く、欠陥セグメントの最適な数を修復することができ
る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、一般に、欠陥メモ
リを修復するためのメモリ冗長に関する。
【0002】
【従来の技術】ランダムアクセスメモリ(RAM)は、
通常、従来技術によるコンピュータ・システム内に実装
されている。コンピュータ・システムは、マルチレベル
階層のメモリを使用することができるが、その階層は、
比較的高速で高価であるがメモリの容量が限られている
最高レベルから、比較的遅くて安価であるがメモリの容
量が大きな最低レベルまである。この階層構造は、高速
にするためにプロセッサ内に物理的に一体化されるかま
たはプロセッサの物理的に近くに搭載されるキャッシュ
と呼ばれる比較的小さくて高速のメモリを含むことがで
きる。コンピュータ・システムは、個別の命令キャッシ
ュ(Iキャッシュ)とデータ・キャッシュ(Dキャッシ
ュ)を含むことができる。さらに、コンピュータ・シス
テムは、複数レベルのキャッシュを使用することができ
る。キャッシュの使用は、一般に、命令レベルではコン
ピュータ・プログラムにトランスペアレントであり、し
たがって、命令セットを変更したり既存のプログラムを
変更したりせずにコンピュータ・アーキテクチャに追加
することができる。一般に、RAMは、コンピュータ・
システムが利用するメモリの複数レベルの階層の任意の
レベルに実装することができる。
【0003】データをメモリに対して高速に出し入れで
きるようにし、エラーを回避し、およびRAMチップの
集まりをより小さくするために、従来技術において各種
のRAMチップが開発されている。最も一般的なタイプ
のRAMとしては、DRAM(Dynamic Random Access
Memory)、EDO RAM(Extended Data Out RA
M)、VRAM(Video RAM)、SRAM(Static RA
M)、SDRAM(Synchronous DRAM)、SIMM(Singl
e In-line Memory Module)、DIMM(Dual In-line
Memory Module)、および誤り訂正コード(ECC)チ
ップが挙げられる。RAMチップの製造において、チッ
プの一部内に欠陥が発生することは普通である。すなわ
ち、RAMの一部がデータを適切に記憶および/または
検索することができない場合がある。このため、従来技
術において、このような欠陥を検出して訂正する技術が
開発されてきた。一般に、チップまたはシステムは、製
造歩留まりを改善するため、および/またはシステムが
適切に動作し続けるようにするため、欠陥ブロックを非
欠陥ブロックにマップすることができる多数のメモリブ
ロックまたは回路ブロックを有する冗長性を備えている
ことが望ましい。通常、RAMメモリは、このような冗
長システムに実装されるため、以下の従来技術の説明
は、主にRAMメモリ実装に焦点を当てている。しか
し、様々な他のタイプのメモリも同様に冗長性を持って
実装することができる。
【0004】従来技術においてRAMチップで検出され
る欠陥の訂正に利用される一般的な技法は、メモリの冗
長サブブロックをRAMチップ内に設けるというもので
あり、これを使用してチップ内のメモリの欠陥サブブロ
ックを有効に置換することができる。図1は、RAM構
造内に冗長サブブロックを実装する例示的な概観を示
す。図に示すように、非常に大きなRAMブロック(ま
たはRAM構造)300をチップ内に実装することができ
る。RAMブロック300に欠陥がある場合、ダイの歩留
まりを改善するために欠陥を修復できることが望まし
い。またRAM300に欠陥がないかあるいはすべての欠
陥が修復されたと確認されてから、RAM300を含むチ
ップまたはシステムを顧客に配送することが望ましい。
欠陥RAMブロック300の修復は、RAMブロック300内
の欠陥サブブロックの置換に使用することができるサブ
ブロック310、312、および314等の一群の冗長サブブロ
ックを設けることで、達成することができる。したがっ
て、本明細書で使用される「修復」という用語について
は、欠陥サブブロックの物理的な修復を意味するものと
狭義に解釈されるべきではなく、欠陥サブブロックの回
避(avoiding)を包含するようより広義に解釈されるべ
きである。理想的には、冗長サブブロックの任意の1つ
(例えば、サブブロック310、312、314等のうちのいず
れか1つ)を用いて、RAMブロック300における任意
の欠陥ロケーションを修復できることが望ましい。しか
し、RAMブロック300内の欠陥サブブロックから、物
理的に比較的に遠く離れて配置されている冗長サブブロ
ックにデータ(すなわちメモリデータ)を送る際に、問
題が生じる。すなわち、冗長サブブロックが欠陥サブブ
ロックから比較的に遠く離れて配置されている場合、こ
のような長距離のデータ移送に関わる待ち時間は、シス
テムの性能に負の影響を与える。
【0005】例えば、冗長サブブロック(310、312、31
4等)から物理的に比較的に遠く離れて配置されている
RAM300のサブブロック350内で欠陥が発生したと仮定
する。サブブロック350を修復するには、データをチッ
プ上の所望の宛先に運部ことができるように、書き込み
データをサブブロック350のポートから冗長サブブロッ
ク310等の冗長サブブロックに移送する必要があると共
に、読み出しデータを、冗長サブブロック310からサブ
ブロック350のポートに移送する必要がある。このよう
な長距離にわたってデータを送る結果生じる余分の待ち
時間(すなわち、配線遅延)は、システムの性能に対し
て大きな負の影響を与えうる。すなわち、欠陥ロケーシ
ョンから冗長サブブロックまでの比較的長い距離にデー
タを移送する結果生じる余分の待ち時間によって、冗長
サブブロック内のデータにアクセスするために必要な時
間量が増大し、そのためにシステムの動作速度が遅くな
る。
【0006】図2は、RAMブロック300の修復に冗長
サブブロックを利用する従来技術による設計を示す。図
2に示す解決策では、大きなRAMブロック300は、セ
グメント302、304、306、および308等のより小さなセグ
メント(すなわちバンク)に分割される。各セグメント
302、304、306、および308のそれぞれに、冗長サブブロ
ックが割り当てられる。より具体的には、冗長サブブロ
ック310がセグメント302に割り当てられ、冗長サブブロ
ック312がセグメント304に割り当てられ、冗長サブブロ
ック314がセグメント306に割り当てられ、冗長サブブロ
ック316がセグメント308に割り当てられる。したがっ
て、セグメント302におけるいかなる欠陥も、冗長サブ
ブロック310を用いて有効に修復することができる。同
様に、他の任意のセグメント内の任意の欠陥も、それぞ
れに割り当てられた冗長サブブロックを用いて修復する
ことができる。
【0007】図2に示す従来技術によるRAM設計の動
作をさらに説明するため、セグメント302内のサブブロ
ック(すなわちサブアレイ)321が欠陥を有するものと
仮定する。サブブロック321を修復するために、サブブ
ロック321の右側にある最近傍のサブブロックからデー
タがシフトされる。すなわち、サブブロック320は、M
UX(図示せず)を通してサブブロック321の入出力ポ
ート(I/Oポート)にルートアウト(route out)さ
れる。サブブロック320の右側にある残りの各ブロック
(すなわち、図2のサブブロック319および318)は、同
様にシフトされ、最終的に冗長サブブロック310がシフ
トされて、サブブロック318のためのデータを提供す
る。このようにして最近傍のサブブロックをシフトする
と、データはあるサブブロックの最近傍のサブブロック
にルートされるだけであるため、ルーティング(routin
g)の長さは比較的短くなる。したがって、欠陥RAM
を有効に修復可能とすることで、この従来技術によるR
AM設計を実施してダイの歩留まりを高くすることがで
きる。
【0008】RAMブロック300を分割する厳密な方法
は、様々でありうる。通常、RAMブロックが分割され
るセグメントの数は、RAMに実装される機能ユニット
の数(例えば、データキャッシュユニット、タグキャッ
シュユニット等の数)に依存する。より具体的には、各
機能ユニットを個別に修復することができる形でRAM
をセグメント化することが通常望ましい。例えば、大き
なRAMブロック300は、6つのDキャッシュデータセ
グメント、2つのIキャッシュデータセグメント、2つ
のDキャッシュタグセグメント、および2つのIキャッ
シュタグセグメントに分割することができる。このよう
にして、任意の数のセグメントを実装することができ
る。より大きなサイズのRAMブロック300について
は、通常、ダイの歩留まりを高くするために、セグメン
トの数をより多くすることが望ましい。また、セグメン
トの各サブブロック(例えば、サブブロック321、320、
319、318、310等)は、実際は、メモリセルのグループ
すなわち「アレイ」を構成することができる。このよう
に、各サブブロックは、X個の行のメモリセル×Y個の
列のメモリセルを構成することができる。したがって、
本明細書で用いる置換可能なユニット(すなわち「修復
可能なサブブロック」)は、メモリセルのアレイを構成
することができる。
【0009】図3は、図2と共に説明した従来技術によ
る実施のさらなる例を示す。図3は、図2のセグメント
302をより詳細に示しているが、図3に示す例では、サ
ブブロック321ではなくサブブロック319が欠陥を有す
る。したがって、図3は、修復可能なサブブロック33
0、320、319、および318ならびにセグメント302に実装
される冗長サブブロック310を示す。冗長MUXのセッ
ト(例えば、MUX220、222、224、226、228、230、23
2、234、および236)が示され、これらは、メモリサブ
ブロックについての実際のデータを再ルートするために
利用される。欠陥サブブロックがセグメント302内で検
出される場合、メモリサブブロックについてのデータ
は、本明細書において「メモリデータ」と呼ばれること
もある。図3に示す例では、サブブロック330は良好な
(欠陥のない)サブブロックである。したがって、冗長
MUX222は、メモリデータがサブブロック330の内部信
号18aからMUX222を通って「データアウト(DOU
T)」信号18bに流れるようにプログラムされるが、こ
れはサブブロック330についての正常な経路である。ま
た、MUX220は、「データイン(DIN)」信号18c
(これも「メモリデータ」と考えることができる)を受
け取り、DIN信号18cをサブブロック330にルートする
が、これはDIN信号18cのサブブロック330の正常な経
路に沿ったルーティングである。
【0010】同様に、サブブロック320は良好な(欠陥
のない)サブブロックである。したがって、冗長MUX
226は、データがサブブロック320の内部信号16aからM
UX226を通ってDOUT信号16bに流れるようにプログ
ラムされるが、これはサブブロック320についての正常
な経路である。また、MUX224は、DIN信号16cを受
け取り、DIN信号16cをサブブロック320にルートする
が、これはDIN信号16cのサブブロック320の正常な経
路に沿ったルーティングである。しかし、サブブロック
319は欠陥を有する。したがって、MUX230は、サブブ
ロック319の最近傍、すなわちサブブロック318からDO
UT信号を出力するようプログラムされる。すなわち、
MUX230は、欠陥サブブロック319の内部DOUT信号
14aをDOUT信号14bにルートするのではなく、サブブ
ロック318の内部DOUT信号12aをDOUT信号14bに
ルートするようプログラムされる。また、MUX228
はオフにされ、MUX232は、受け取ったDIN信号14c
を欠陥サブブロック319ではなくサブブロック318にルー
トするようプログラムされる。
【0011】サブブロック318は有効にシフトされて欠
陥サブブロック319を置換したため、冗長サブブロック3
10が、サブブロック318に代わるためにシフトされる。
このようなシフトを達成するために、MUX234は、サ
ブブロック318の内部データアウト信号12aをDOUT信
号12bにルートするのではなく、冗長サブブロック310の
内部DOUT信号10aをDOUT信号12bにルートするよ
うプログラムされる。また、MUX236は、受け取った
DIN信号12cを、サブブロック318にではなく冗長サブ
ブロック310にルートするようプログラムされる。その
結果、欠陥サブブロック319によって生成されるデータ
は完全に無視される。加えて、欠陥を修復するために、
データは1つのサブブロック分だけシフトされるだけで
あり、データ移送に伴う待ち時間はごくわずかである。
さらに、このようなシフトを可能にするために、2:1
のMUXが実装されるが、これらは単純であり、かつ性
能に対してほとんど影響を及ぼさない(すなわち、信号
の遅延はわずかである)冗長MUXを制御するために、
通常、ヒューズがRAM設計に実装される。従来的に
は、レーザ溶断ヒューズが利用されている。図3の従来
技術の実施において、レーザ溶断ヒューズの利用に伴う
いくつかの問題が存在する。第1に、このようなレーザ
溶断ヒューズはサイズが非常に小さいが、しかし従来的
にはこのようなヒューズが多数必要とされる。さらに、
レーザ溶断ヒューズは、チップ製造のウェーハレベルに
おいて(すなわちパッケージング前に)溶断しなければ
ならない。すなわち、回路がパッケージ内に入れられて
しまうと、レーザをダイ上に適切に照射することが非常
に困難であるため、レーザ溶断ヒューズはウェーハレベ
ルでしか溶断することができない。したがって、レーザ
溶断ヒューズの場合、製造者には、欠陥RAMを検出し
て修復するために、ワンショットのみ、すなわちウェー
ハレベルの間しか許されない。ウェーハ段階は通常、R
AMにおける欠陥の検出に最適の電気的環境ではないの
で、これはさらに問題をはらんでいる。したがって、R
AMに存在する欠陥がウェーハ段階では現れないが、後
のパッケージング段階において現れる可能性がある。こ
のような従来技術のRAM設計に、電気溶断ヒューズが
実装されている。電気溶断ヒューズの場合、製造者に
は、任意の時点でヒューズを溶断するという自由度が与
えられる。したがって、製造者は、レーザ溶断ヒューズ
の場合に可能な段階よりも後の段階(例えば、パッケー
ジング段階後)に電気溶断ヒューズを溶断することがで
きる。しかし、電気溶断ヒューズは、各ヒューズを確実
に溶断するために必要なより大きな電流を流すための回
路が必要となるので、レーザ溶断ヒューズよりもサイズ
がはるかに大きい。
【0012】図3に示す従来技術による実装に伴う1つ
の問題は、修復可能なサブブロック毎に1個のヒューズ
を実装する必要があることである。したがって、大きな
RAMは、通常、多数のヒューズを要する。しかし、溶
断する必要があるのは、通常はこのようなヒューズのう
ちの少数だけである。例えば、図3の欠陥サブブロック
319の場合、ヒューズ20のみを溶断する必要があり、残
りのヒューズは、欠陥がその他のサブブロックのうちの
1つについて検出された場合に備えて、RAM設計に存
在する必要がある。このように多数のヒューズが必要な
ことは、特に、より大きな電気溶断ヒューズを実装する
場合に問題となる。これは、かかるヒューズのためにチ
ップ上に必要な表面積が相対的に大きいためである。
【0013】図3の従来技術による設計の説明を続け
て、スキャンパス(scan path)22が設計に示されてい
る。スキャンパス22は、通常、シリアルシフトレジスタ
を備えており、これによって、データをスキャンインし
て、チップのどこかに設けられるコントローラから冗長
MUXをプログラムできるようにする。このようなスキ
ャンパス22によって、製造者は、実際にヒューズを溶断
して冗長MUXについての制御をセットする前に、冗長
MUXについての制御信号が適当かを確認することがで
きる。すなわち、スキャンパス22によって、製造者は、
任意のヒューズを溶断して実際にRAMについてのこの
ような制御信号をセットする前に、制御信号のセットを
スキャンインして、このような制御信号が正しく欠陥R
AMを修復することを確認できる。例えば、欠陥がサブ
ブロック319に存在する図3に示す場合では、適切な数
の0に続けて適切な数の1をスキャンチェーン22にスキ
ャンインして、実際にヒューズ20を溶断する前に、ヒュ
ーズ20の溶断がこのような欠陥を修復することを確認で
きる。
【0014】このような従来技術によるRAM実装の動
作において、ヒューズチェーンは、リセット中にグラウ
ンド(GND)に引き下ろされる(pull down)。ヒュ
ーズがいずれも溶断されない場合には、ヒューズチェー
ン全体が引き下ろされ、すべて0がスキャンパスラッチ
にプログラムされる。したがって、冗長MUXはいずれ
も、シフトを行うようプログラムされない。ヒューズ2
0が溶断される場合には、溶断されるヒューズ20の前に
あるヒューズチェーンのすべてのトレースが引き下ろさ
れ、かつヒューズの20後にあるすべてのトレースが引き
上げられる(pull high)。したがって、適切な数の0
および1がスキャンパスラッチにロードされ、冗長MU
Xに、欠陥サブブロック319の修復するための適切なシ
フトを行わせる。サブブロックのいずれも欠陥を有さな
い場合には、ヒューズチェーン20のいずれのヒューズも
溶断されない。
【0015】従来技術におけるさらなる進歩は、スキャ
ンパスを通してデータをシフトするために、状態機械
(state machine)を実装することである。図4は、従
来技術のこのさらなる進歩を示す。この従来技術による
RAM設計において、状態機械210を使用して、欠陥が
見つかった位置を走査チェーン22にプログラムするため
に、2進数のヒューズが利用される。図3に示す例のよ
うに、図4の例において、サブブロック319が欠陥を有
し、残りのサブブロックは良好である(欠陥がない)。
サブブロック319は欠陥を有するため、状態機械210は、
サブブロック319に対応するスキャンラッチに1(高電
圧値)をスキャンインし、後続するサブブロック(すな
わち、サブブロック318および310)のスキャンラッチの
すべてにも同様にスキャンインする。したがって、状態
機械210の適切なヒューズを溶断することで、RAMセ
グメント302内の欠陥を修正するために、冗長MUXを
制御するスキャンチェーンラッチ22に適切な値を提供す
ることができる。サブブロックがいずれも欠陥を有さな
い場合には、いずれのヒューズも溶断されない。
【0016】この設計において実装されるヒューズは、
冗長MUXを制御するためにスキャンラッチに望ましい
値である2進コードに構成されるため、必要とされるヒ
ューズは図3に示す従来技術による設計よりも少数であ
る。例えば、セグメント302が256個の修復可能なサ
ブブロックを含む場合、セグメント302についての冗長
MUXの制御に必要となるのは、9個のヒューズだけで
ある。したがって、セグメント302についての冗長MU
Xの制御に必要なヒューズの数は、(サブブロックの数
+1)の2を底とする対数として計算することができ
る。すなわち、この従来技術の設計では、RAMのセグ
メントの2−1個のサブブロックに冗長性を提供する
には、「J」個のみのヒューズ、すなわち、256個の
サブブロック(29−1個のサブブロック)を有するセ
グメントであれば、それぞれ9個のヒューズが必要であ
る。この従来技術による設計のさらなる利点は、状態機
械210およびそのヒューズをセグメント302の冗長MUX
の物理的な近傍に配置する必要なく、セグメント302内
の任意のサブブロックを修復できることである。通常、
スキャンパス22は、パワーアップ時に比較的低い周波数
でシフトされる。開始パルスは通常、リセット時にトリ
ガされ、状態機械210に供給される。また、開始パルス
が状態機械210に入力されると、ヒューズを読み、クロ
ック信号を利用して適切な数の1および0を走査チェー
ン22にスキャンアウトするように、クロック信号も状態
機械210に供給される。状態機械210はいくらかの余分な
オーバヘッドを回路内に必要とするが、通常、状態機械
は比較的小さな構成要素であり、チップ上のどこにでも
配置することができる。したがって、状態機械210をメ
モリアレイそれ自身に配置する必要はないので、メモリ
アレイ自体のオーバヘッドを増大させず、メモリアレイ
の性能を高く維持する助けとなる。
【0017】しかし、図4の従来技術による実装には、
まだいくつかの問題がある。1つの問題は、サブブロッ
ク内では、1つの欠陥しか修復できないことである。そ
の結果、大きなRAMブロックは、セグメント302等の
多くのより小さなセグメントに分割されることがある。
RAMブロックについて実装されるセグメントの数が大
きくなるにつれ、RAMブロックの実装に必要なヒュー
ズの数が増大する。例えば、RAMが、それぞれ256
個のサブブロックを有する16個のセグメントで実装さ
れる場合、各セグメント毎に9個のヒューズが必要であ
り、冗長MUXを制御するために、総計144個のヒュ
ーズをRAM設計に実装しなければならない。例えば、
図5は、それぞれ256個のサブブロックを有する16
個のセグメント(すなわち、セグメント500、501、50
2、...、515)に分割されたRAMブロック300につ
いて実施される、従来技術による設計の概観を示す。図
に示すように、それぞれ9個のヒューズを有し、総計で
144個のヒューズを有する16個の状態機械(すなわ
ち状態機械200、201、202、...、215)が実装され
る。図5に示すように、状態機械200は、セグメント500
についての冗長MUX400(複数)を制御する。状態機
械201は、セグメント501についての冗長MUX401(複
数)を制御する。状態機械202は、セグメント502につい
ての冗長MUX402(複数)を制御し、セグメント515に
ついての冗長MUX415(複数)を制御する状態機械215
まで、同様である。また、図5に示すように、従来技術
による設計が、RAMセグメントについて冗長サブブロ
ック列を設けるものとしてこれまで説明してきたが、か
かる従来技術による設計は、代わりに、冗長MUX44
0、441、442、...、455を使用する行冗長についての
冗長サブブロック行を設けるよう実施してもよいことを
理解されたい。
【0018】図5のRAM設計内には16個のセグメン
トが実施されるが、16個のセグメントのすべてにおい
て欠陥が発生する確率は非常に低い。例えば、平均的
に、2、3、4、または5個のセグメントが欠陥を有し
うる。すなわち、多数のRAMチップの製造する場合、
チップ内の欠陥セグメントの平均(すなわち典型的な)
数は、非常に小さい。しかし、16個のセグメントのい
ずれか1つに欠陥が存在する確率は等しい。すなわち、
任意の所与のセグメントにおいて欠陥が発生する可能性
は等しい。したがって、RAMブロックは、任意のセグ
メントを個々に修復できるように設計されなければなら
ない。したがって、不必要に多数のヒューズをこの従来
技術による設計には実装する必要がある。なぜなら、こ
の設計では依然として、RAMブロック内で発生しうる
数の欠陥を修正するのに十分な数のヒューズのみを実装
するのではなく、発生しうるすべての可能な欠陥を考慮
に入れた十分なヒューズを実装する必要があるからであ
る。すなわち、あらゆるセグメントを修復する可能性を
得るために、この従来技術による設計内には多数のヒュ
ーズを実装する必要があるが、実際には、多数のヒュー
ズのうちの平均2、3個が欠陥の修正に利用されるに過
ぎないので、多くのヒューズは無駄になる。
【0019】
【発明が解決しようとする課題】上記を鑑みて、欠陥セ
グメントを修復することができるRAM構造等のメモリ
構造が必要とされている。また、修復可能なメモリ構造
に実装する必要のあるヒューズの数を低減する修復可能
なメモリ構造が必要とされている。またさらに、メモリ
構造のあらゆるセグメントの修復に十分な回路を実装す
るのではなく、メモリ構造の最適な数の欠陥セグメント
のみを修復するのに十分な回路を実装する修復可能なメ
モリ構造が必要とされている。したがって、メモリ構造
のあらゆるセグメントを修復するのに十分な数のヒュー
ズを実装するのではなく、メモリ構造の最適な数の欠陥
セグメントを修復するの必要な数のヒューズだけを実装
するメモリ構造が必要とされている。またさらに、修復
するべき最適な数の欠陥セグメントを考慮し、メモリ構
造の修復可能なセグメントのうち任意のものを修復する
べき最適な数のセグメントのうちの1つとして指定する
ことができる、修復可能なメモリ構造が必要とされてい
る。すなわち、セグメントのうち最適な数までしか修復
することができないが、修復可能なセグメントのうちの
任意のセグメントを、最適な数の修復すべきセグメント
のうちの1つとして指定できるよう考慮しており、それ
によって、最適な数のセグメントを上限とする任意の数
の修復可能なセグメントを修復することが可能なメモリ
構造が必要とされている。
【0020】
【課題を解決するための手段】これらおよび他の目的、
特徴、および技術的利点は、使用されない修復回路の量
を最小限に抑えるために、RAMメモリセグメント等
の、最適な数の欠陥メモリセグメントを修復する能力を
提供するシステムおよび方法によって達成される。すな
わち、メモリ内の欠陥の修復に使用されるヒューズのう
ち使用されないヒューズの数を最小限に抑えるために、
最適な数の欠陥メモリセグメントを修復することができ
るシステムおよび方法が開示される。本発明の好ましい
実施形態は、RAMブロック内の欠陥修復に必要なヒュ
ーズの数が、修復可能な欠陥セグメントの最適な数に比
例するように実装されるRAMブロックを提供する。修
復可能な欠陥セグメントの最適な数は、コスト、サイズ
要件、およびチップのダイの歩留まりの改善等の、任意
の基準に基づいて決定することができる。例えば、RA
Mブロック内で修復可能なセグメントの最適な数を決定
するために、費用便益分析を行ってもよい。例えば、チ
ップ内で修復するのに最も一般的に必要とされるセグメ
ントの数を最適な数(例えば、1つのRAMブロックに
ついて修復されるべき欠陥セグメントの数の平均)と決
定してもよい。したがって、好ましい実施形態におい
て、修復するべきRAMブロックのあらゆるセグメント
を考慮した十分なヒューズを実装するのではなく、最適
な数の欠陥セグメントのみを修復するのに十分なヒュー
ズが実装される。このため、好ましい実施形態では、使
用されないヒューズが少なくなり、修復可能なRAMブ
ロックの実装に必要なコストおよび面積が低減される。
【0021】さらに、好ましい実施形態は、欠陥セグメ
ントの最適な数を上限とする任意の数の欠陥RAMセグ
メントを修復できるようにする。通常、RAMセグメン
トのいずれか1つが欠陥を有する可能性は、RAMブロ
ック内で任意の他のRAMセグメントが欠陥を有する可
能性に等しい。しかし、欠陥セグメントの総数の最適な
数が存在する。例えば、RAMブロックが16個のセグ
メントに分割されると仮定する。さらに、RAMブロッ
ク内で4個の欠陥セグメントが検出される確率は高い
が、5個の欠陥セグメントが検出される確率ははるかに
低いものと仮定する。したがって、RAMブロック内で
修復可能な欠陥セグメントの最適な数は4であると決定
することができる。しかし、RAMブロックのいずれか
1つのセグメントにおいて欠陥が発生する可能性は等し
いため、16個のRAMセグメントのうちの任意の4つ
を修復可能であることが望ましい。
【0022】好ましい実施形態は、最適な数の欠陥セグ
メントを修復することを考慮しているが、一方で、修復
データを適切な欠陥セグメントにマップすることで、
(最適な数までの)任意の数のセグメントを修復するこ
とができる。より具体的には、好ましい実施形態は、複
数のセグメントを有するRAMブロックのセグメント内
の欠陥を検出し、かかる欠陥を修復するための修復デー
タを生成し、欠陥が検出されたセグメントを示すデータ
を生成し、生成された修復データを欠陥が検出されたセ
グメントにマップして、かかる欠陥を修復するよう動作
する。上述したように、好ましい実施形態は、修復する
べき最適な数の欠陥セグメントを考慮している。したが
って、好ましい実施形態は、RAMブロック内で修復す
べき複数の欠陥セグメントを考慮している。それ故、好
ましい実施形態は、複数のセグメントを有するRAMブ
ロックの複数のセグメント内の欠陥を検出し、欠陥が検
出された前記複数のセグメントの各セグメントを修復す
るための修復データを生成し、欠陥が検出された複数の
セグメントのそれぞれを示すデータを生成し、欠陥が検
出されたセグメント毎に生成された修復データを、かか
るセグメントそれぞれにマップするよう動作しうる。
【0023】好ましい実施形態は、それぞれ修復可能な
RAMメモリセルの複数のセグメントを有する修復可能
なRAMブロックを提供する。例えば、かかるセグメン
トは、それぞれ、かかるセグメント内の欠陥サブブロッ
クを修復するための冗長サブブロックを含むことができ
る。好ましい実施形態において、状態機械等の、1つま
たは複数の欠陥セグメントを修復するための修復データ
を生成することができる修復データ生成器が設けられる
と共に、スキャンアドレスマシン等の、複数のセグメン
トのうちの欠陥セグメントを表すデータ(例えば、RA
Mブロックの1つまたは複数の欠陥セグメントを識別す
るデータ)を生成することができるアドレス生成器が設
けられる。加えて、好ましい実施形態は、状態機械が生
成した修復データを、走査アドレスマシンによって特定
された1つまたは複数の欠陥セグメントにマップするマ
ッピング回路を備える。このため、欠陥を有するものと
して検出されたRAMのセグメントのうち任意の1つに
生成された修復データをマップすることができるので、
好ましい実施形態は、RAMのあらゆるセグメントを修
復するのに十分な回路を設ける必要なしに、最適な数の
欠陥セグメントを修復できるようにする。
【0024】本発明の一態様の技術的利点は、修復する
べき最適な数の欠陥セグメントを考慮する一方で、任意
のメモリブロックセグメントから選択される最適な数の
欠陥セグメントを考慮する、RAM構造等の修復可能な
メモリ構造が実装される点である。したがって、本発明
の一態様の技術的利点は、修復可能なメモリブロックを
提供するために実装される回路(例えばヒューズ)の量
を、最適な量に低減できることである。さらに、メモリ
ブロックを修復するために実装される、無駄でありかつ
使用されないヒューズの数を最小限に抑えられるため、
修復可能なメモリブロックに実際に実装されるヒューズ
の効率が増大し、修復可能なメモリブロックの実装に必
要な表面積が低減され、かつ修復可能なメモリブロック
の実装コストが低減される。
【0025】本明細書で開示される概念および特定の実
施形態は、本発明と同じ目的を実行するよう他の構造を
変更または設計するための基礎として容易に利用できる
ことを当業者はならば理解するであろう。
【0026】
【発明の実施の形態】図6は、本発明の好ましい実施形
態の一例を示す。図6には、複数のセグメント700、70
1、702、...、715を含むRAMブロック600が示され
ている。最も好ましい実施形態において、RAMブロッ
ク600は、それぞれ256個のサブブロックを有する1
6個のセグメントに分割される。しかし、代替の実施形
態では、RAMブロック600は、それぞれ任意の数のサ
ブブロックを有する任意の数のセグメントを有するよう
に実装されてもよく、任意のこのような実装が本発明の
範囲内にあるように意図されている。各セグメント70
0、701、702、...、715は、対応する冗長MUX80
0、801、802、...、815のセットそれぞれと共に実装
される。好ましい実施形態において、RAMブロック60
0内で発生する可能性のある(possible)欠陥すべてを
修復することができる十分な数のヒューズを設けるので
はなく、RAMブロック600内に発生しそうな(likel
y)数の欠陥を修復するために十分な数のヒューズが実
装される。したがって、好ましい実施形態は、RAM60
0内で発生しそうな数の欠陥を修復するために十分な数
のヒューズのみを実装しているが、一方で、RAM600
のセグメントの任意の1つで発生する欠陥を修復するこ
とができる。
【0027】図6の例示的な好ましい実施形態には、4
個のヒューズ状態機械610、612、614、および616が実装
されている。したがって、図6に示す例示的な実施形態
では、RAM600内で修復可能な欠陥の最適な数は4で
あると決定されている。例えば、RAMブロック600内
で4つの欠陥を修復する能力を備えることによって、ダ
イの歩留まりを最も費用効率的に増大させると決定され
ていることを示す。つまり、5つの欠陥を修復する能力
を備えるのに余分にかかるコスト(費用および/または
チップ上に必要な表面積の点で)は、この能力から得ら
れる歩留まりの増大量に見合わないと決定されていると
言いかえることができる。任意の数の欠陥を、RAM60
0内で修復可能な欠陥の最適な数と決定することができ
る。RAM600は、任意の最適な(または望ましい)数
の欠陥を修復する能力を備えるよう実装することがで
き、また任意のこのような実装は、本発明の範囲内にあ
ると意図されている。さらに、かかる最適な数は、任意
の理由により「最適」(または望ましい)と決定するこ
とができる。また任意の最適な数の欠陥を修復する能力
を有するRAMブロック600を実装することが望ましい
という理由のいずれもが、本発明の範囲内にあると意図
されている。通常、この最適な数は、RAMチップにお
いて普通に発見される欠陥の数として決定されており、
これは、このようなRAMチップのダイの歩留まりを最
も費用効率的に増大さる。
【0028】図6の例において、状態機械610、612、61
4、および616の任意の1つは、セグメント700、701、70
2、...、715の任意の1つを制御するスキャンパス
(スキャンラッチ)に値をシフトアウトすることができ
る。したがって、セグメント内の欠陥を修復するため
に、状態機械610、612、614、および616の任意の1つを
利用して、セグメント700、701、702、...、715の任
意の1つの冗長MUXを制御することができる。例え
ば、状態機械610は、スキャンパス/冗長MUX800、80
1、802、...、815の任意の1つをプログラムするた
めに、適切な値(すなわち適切な数の1および0)をシ
フトアウトすることができる。したがって、好ましい実
施形態は、「N」個の状態機械を設け、各状態機械の出
力は、修復が必要な任意の1つのセグメントに向けるこ
とができ、それによって、RAMブロック内で発生しう
る最適な数「N」個の欠陥を修復することができる。そ
のため、好ましい実施形態において、実装される状態機
械(例えば、状態機械610)の数は、RAMチップにお
いて修復可能な欠陥の最適な数と決定された数に等し
い。
【0029】したがって、好ましい実施形態は、状態機
械のいずれか1つの出力を、修復が必要な適切なセグメ
ントに向ける(すなわちマッピング)能力を備える。状
態機械の出力の適切なセグメントへのマッピングは、本
明細書において「マッピング」ブロック630と呼ばれる
ブロック630において達成される。好ましい実施形態に
おいて、マッピングブロック630は、デコーダ640(デコ
ーダのセット)と、MUX632、634、636、および638
と、を含む。任意の数のセグメントを含みうるRAMブ
ロック内で最適な(または望ましい)数の欠陥を修復す
るために実装する必要がある任意の数のデコーダおよび
MUXを実装してもよく、任意のこのような実装は、本
発明の範囲内にあると意図されている。
【0030】図に示すように、MUX632、634、636、
および638のそれぞれは、セグメント700、701、70
2、...、715に割り当てられる。例えば、図6に示す
ように、MUX632の出力は、セグメント715についての
スキャンチェーン/冗長MUX815に提供される。MU
X634の出力は、セグメント702についてのスキャンチェ
ーン/冗長MUX802に提供される。同様に、MUX636
の出力は、セグメント701についてのスキャンチェーン
/冗長MUX801に提供され、MUX638の出力は、セグ
メント700についてのスキャンチェーン/冗長MUX800
に提供される。さらに、図6に示すように、状態機械61
0、612、614、および616それぞれの出力は、マッピング
MUX632、634、636、および638それぞれに入力され
る。したがって、例えば、マッピングMUX638は、ス
キャンチェーン/冗長MUX800を制御するために、状
態機械610、612、614、および616の出力のいずれか1つ
を提供するようプログラムすることができる。同様に、
セグメント内に存在する欠陥を修復するために、必要で
あれば、状態機械610、612、614、および616の任意の1
つの出力をそれぞれのセグメントに向けるよう、他のマ
ッピングMUX632、634、および636をプログラムする
ことができる。
【0031】好ましい実施形態において、マッピングM
UX632、634、636、および638を制御するために、マッ
ピングブロック630はデコーダ640をさらに含む。すなわ
ち、デコーダ640は、マッピングMUX632、634、636、
および638の動作を制御するために信号を出力する。よ
り具体的には、デコーダ640は、RAMセグメント内の
欠陥を修復するために、状態機械610、612、614、およ
び616からの出力それぞれを、どのセグメント700、70
1、702、...、715にマップすべきかを指定する信号
を出力する。このように、各マッピングMUXに対応す
るセグメントのスキャンチェーン/冗長MUXを制御す
るために、デコーダ640によって出力される信号は、各
マッピングMUXが利用するべき状態機械の出力(もし
あれば)を各マッピングMUXに対して指定する。
【0032】図6に示すように、好ましい実施形態にお
いて、デコード回路640に適切な信号を提供するため
に、スキャンアドレスマシン650、652、654、および656
が実装される。最も好ましい実施形態において、RAM
ブロック600は、16個のセグメントに分割される。し
たがって、スキャンアドレスマシン650、652、654、お
よび656はそれぞれ、16個のセグメントのうち欠陥を
有するセグメントを指定できるように実装される。この
ため、好ましい実施形態では、スキャンアドレスマシン
650、652、654、および656はそれぞれ4個のヒューズを
備えており、デコード回路640がデコード可能な16個
のセグメントのうち任意の1つを表す2進コードを提供
することができる。もちろん、RAM600は、任意の数
「S」個のセグメントを実装することができる。したが
って、スキャンアドレスマシンに実装されるヒューズの
数は、RAM600に実施される「S」個のセグメントを
表す2進コードをスキャンアドレスマシンが提供できる
ように適当に調整することができ、また任意のこのよう
な実装が、本発明の範囲内にあると意図されている。さ
らに、上述したように、代替の実施形態では、RAM60
0内で発生しうる修復すべき任意の最適な数「N」の欠
陥を修復する能力を備えるよう実装されてもよい。した
がって、本発明は、4個のスキャンアドレスマシン65
0、652、654、および656の実装に制限されるよう意図す
るものではない。代わりに、RAMブロック600内で発
生しうる「N」個の欠陥を修復できるようにするため
に、代替の実施形態は、「N」個のスキャンアドレスマ
シンを備えるよう実施されてもよい。
【0033】好ましい実施形態において、状態機械61
0、612、614、および616は、RAM600がパワーアップ
されると、RAM600内のセグメントの欠陥サブブロッ
クを読み出すよう動作し、また、必要であれば、状態機
械610、612、614、および616はそれぞれ、欠陥セグメン
ト内の欠陥を修復するように、欠陥セグメントのスキャ
ンチェーン/冗長MUXを制御する適切な制御シーケン
ス(複数の1および複数の0のシーケンス)を出力す
る。欠陥サブブロックが4つの異なるセグメント内に存
在する場合には、状態機械610、612、614、および616が
それぞれ、別個の欠陥サブブロックの修復に適した制御
シーケンスを出力し、それにより、4つすべての欠陥の
修正に必要な制御シーケンスを提供する。欠陥サブブロ
ックが3つの異なるセグメントのみ内に存在する場合、
3つの状態機械(例えば、610、612、および614)が、
別個の欠陥サブブロックの修正に適した制御シーケンス
を出力し、それにより、3つすべての欠陥の修正に必要
な制御シーケンスを提供する。4番目の状態機械(例え
ば、616)は、単にすべて0を出力するようプログラム
されて、その結果、マップされるセグメント(すなわ
ち、欠陥のないセグメント)にシフトがないようにして
もよい。4つよりも多くの欠陥がRAM600内で検出さ
れる場合、図6に示す例示的な実施形態は、すべての欠
陥を修復することができない。しかし、図6の例示的な
実施形態において、4つの欠陥が修復すべき欠陥の最適
な数と決定されているため、4つよりも多くの欠陥を有
するチップの数が極度に大きくなることはないはずであ
る。
【0034】また、好ましい実施形態において、RAM
がパワーアップされると、走査アドレスマシンが、それ
ぞれ関連するヒューズを読み、RAM600の修復すべき
セグメントを決定する。走査アドレスマシン650、652、
654、および656はそれぞれ、RAM600の別個の修復す
べきセグメントに適した2進コードを出力することがで
きる。デコーダ640はこのような2進コードを受け取
り、それらをデコードして、サブブロックを修復するた
めの個々のデータを適切なセグメントにシフトするよう
マッピングMUX632、634、636および638がプログラム
されるように、マッピングMUXを制御する。好ましい
実施形態において、特定の状態機械によって出力される
「修復データ」(例えば、1と0の適切なシーケンス)
をマップするための適当なセグメントを指定するため
に、各スキャンアドレスマシン650、652、654、および6
56が特定の状態機械610、612、614、および616に割り当
てられていてもよい。例えば、スキャンアドレスマシン
650は、状態機械610によって出力された修復データをマ
ップすべき適切なセグメントを指定することができる。
さらに、スキャンアドレスマシン652は、状態機械612に
よって出力される修復データをマップすべき適切なセグ
メントを指定することができる。同様に、スキャンアド
レスマシン654は、状態機械614によって出力された修復
データをマップすべき適切なセグメントを指定すること
ができ、スキャンアドレスマシン656は、状態機械616に
よって出力された修復データをマップすべき適切なセグ
メントを指定することができる。好ましい実施形態で
は、各セグメントはそれぞれに割り当てられた冗長サブ
ブロックを1つしか持たないので、スキャンアドレスマ
シン650、652、654、および656によって出力されるスキ
ャンアドレスはそれぞれ、異なるアドレス(すなわち、
RAM600の異なるセグメントを指定する)である。し
かし、各セグメントが、セグメント内の複数の欠陥サブ
ブロックを修復するために、それぞれに割り当てられた
複数の冗長サブブロックを有する場合、複数のスキャン
アドレスが同じアドレスを出力することができる(すな
わち、修復すべきセグメント内に複数の欠陥サブブロッ
クが含まれることを考慮して、複数のスキャンアドレス
が同じセグメントを特定することができる)。
【0035】好ましい実施形態の1つの利点は、冗長性
をじっそうするために多数のヒューズを必要とすること
なく、RAM600に実装されるセグメントの数を増やす
ことができる点である。従来技術の実装では、セグメン
ト数が増えるにつれて、ヒューズの数が線形に増大する
ことが想起されよう。例えば、図4および図5と共に説
明した従来技術による実装では、256個のサブブロッ
クを有するRAM300の1つのセグメントに冗長性を提
供するために、状態機械210に必要なヒューズは9個だ
けである。しかし、RAM300の16個のセグメント50
0、501、502、...、515に冗長性を提供するために、
状態機械210、211、212、...、215には144個のヒ
ューズが必要である。したがって、この従来技術による
設計では、RAMのセグメントの2−1個のサブブロ
ックに冗長性を提供するために、セグメント毎に「J」
個のヒューズが必要である(すなわち、256個のサブ
ブロックを有するセグメント毎に9個のヒューズ)。上
述したように、従来技術では、RAMの各セグメントに
おける欠陥を修復する可能性を考慮してヒューズを設け
なければならないため、このように多数のヒューズが必
要である。
【0036】反対に、好ましい実施形態は、RAMブロ
ック内の最適な(例えば、望ましい、予期される、また
は平均)数の欠陥の修復に必要な数のヒューズのみを必
要とするため、はるかに少数のヒューズを実装すること
ができる。例えば、それぞれ256個のサブブロックを
有する16個のセグメント700、701、702、...、715
に分割されたRAMブロック600内で発生する欠陥の最
適な数が4つであると決定される場合、冗長性を備える
ために必要なヒューズは全部で52個だけである。すな
わち、4つの欠陥の修復を考慮して実装される4個の状
態機械それぞれに9個のヒューズが必要であり、また各
スキャンアドレスマシンが16個のセグメントのうち1
つを指定できるようにするために、4個のスキャンアド
レスマシンそれぞれに4個のヒューズが必要であり、全
部で52個のヒューズとなる。さらなる例として、RA
M600がそれぞれ256個のサブブロックを有する32
個のセグメントに分割され、さらに、修復可能な欠陥の
最適な数が4つであると決定されると仮定する。この場
合、このようなRAM600に冗長性を備えるには、56
個のヒューズを実装すればよい。すなわち、4つの欠陥
の修復を考慮して実装される4個の状態機械それぞれに
9個のヒューズが必要であり、また各スキャンアドレス
マシンが32個のセグメントのうち1つを指定できるよ
うにするために、4個のスキャンアドレスマシンそれぞ
れに5個のヒューズが必要であり、全部で56個のヒュ
ーズとなる。このように、RAM600のセグメント数
は、修復可能な欠陥の最適な数が4つであると決定され
る場合、わずか4個のヒューズを追加することで、セグ
メントの数を16個から32個に増やすことができる。
図4および図5の従来技術による設計では、それぞれ2
56個のサブブロックを持つ32個のセグメントを有す
るRAMは、288個のヒューズ(すなわち、32個の
セグメントそれぞれに9個のヒューズ)を必要とする。
【0037】従来技術による設計において生成される修
復データ(例えば、セグメントの冗長MUXを制御する
ための1と0のシーケンス)は、欠陥セグメントにマッ
プされないが、その代わりに、固定の所定セグメントに
割り当てられる。例えば、図5に示すように、状態機械
210、211、212、...、215の出力は、それぞれ固定の
所定セグメント、すなわちセグメント500、501、50
2、...、515に割り当てられる。このように、従来技
術の設計によるこのような状態機械の出力は、欠陥セグ
メントにマップされないが、代わりに、各状態機械は、
その出力を特定のセグメントに固定させている。例え
ば、状態機械210の出力は、出力がセグメント500に固定
されているため、セグメント501にマップされることは
できない。一方、好ましい実施形態では、図6の状態機
械610、612、614、および616はそれぞれ、所定のセグメ
ントに固定されていない。しかし代わりに、このような
状態機械によって出力される修復データは、任意の欠陥
セグメント700、701、702、...、715を修復するため
にマップされることができる。
【0038】上記を鑑みて、好ましい実施形態は、修復
されるべき最適な数の欠陥を考慮したRAM設計を提供
し、それによって冗長性の実装に必要なヒューズの数を
低減する。このような好ましい実施形態は、RAMブロ
ックのあらゆるセグメントの修復に必要となる十分な数
のヒューズを実装することなく、RAMブロックの任意
のセグメントを修復する能力を備える。さらに、状態機
械610、612、614、および616、スキャンアドレスマシン
650、652、654、および656、およびマッピングブロック
回路630は、好ましい実施形態にいくらかの余分のオー
バヘッドを生成するが、このような構成要素は通常、相
対的に小さいため、チップ上に過度の表面スペースを必
要としない。加えて、このような状態機械、スキャンア
ドレスマシン、およびマッピングブロック回路は、チッ
プ上のどこに配置してもよい。したがって、このような
回路はメモリアレイ内に配置する必要がないため、メモ
リアレイ自身のオーバヘッドを増大せず、メモリアレイ
の性能を高く維持する助けとなる。
【0039】好ましい実施形態のように、冗長の可制御
性すべてをオンチップに設けることの副次的な利益は、
チップへの組み込み自己試験(BIST)の実装に貢献
することである。従来技術によるRAMチップは、RA
Mブロックのセグメントそれぞれ1つを試験する試験ベ
クトルを生成するBISTと共に実装されていた。BI
STは、通常、各セグメントの各サブブロックにより出
力されたデータを読み、それを比較して、合格か不合格
かを決定する(すなわち、適切なデータが出力されるか
否か、すなわちサブブロックが欠陥を有するか否かを決
定する)。合格/不合格の結果に基づいて、BISTは
次に適切な修復データ(すなわち、適切な数の1および
0)を欠陥セグメントに与え、欠陥を実際に修復できる
か否かを決定するよう実装することができる。BIST
が、欠陥は修復可能であると決定すると、適切な修復デ
ータ(すなわち、欠陥の修復に必要な、1および0の適
切なシーケンス)を出力するよう状態機械をプログラム
するために、状態機械のヒューズを電気的に溶断するた
めにセットされる必要があるラッチを制御することがで
きる。したがって、チップへの少数のコマンドにより、
BISTは、メモリを試験し、欠陥サブブロックを決定
し、かかるサブブロックが修復可能であるか否かを決定
し、そして、欠陥を修復するために、適切な数のヒュー
ズをセットアップすることができる。次に、BIST
は、最終的に実行されて、ヒューズが正しくプログラム
され、かつRAMが100%良好(欠陥がない)である
ことを保証する。
【0040】このようなBISTは、本発明の好ましい
実施形態に実装することができる。従来技術によるこの
ようなBISTは、状態機械ヒューズを制御するだけで
なく、スキャンアドレスヒューズも制御するように変更
される必要がある。すなわち、BISTは、適切な修復
データを出力するよう状態機械をプログラムするため
に、状態機械ヒューズを制御するよう実装する必要があ
り、また、BISTは、状態機械の修復データがRAM
の適切なセグメントにマップされるよう、スキャンアド
レスマシンヒューズを制御する必要がある。勿論、好ま
しい実施形態は、BISTを備えずに実装されてもよい
が、最も好ましくは、RAMチップを容易に試験し、検
出されたあらゆる欠陥を修正するために、あるタイプの
BISTが含まれる。BISTをRAMチップ実装に設
けることで、通常、手動でチップを試験するよりもはる
かに高速に試験することが可能になる。これはまた、冗
長性を制御するようヒューズをプログラムする際のオー
バヘッドを低減する。さらに、BISTは、通常、チッ
プが使用されてから、欠陥が発生していないことを保証
するために、所望であればパワーアップ時に再実行する
ことができる。
【0041】修復可能なRAM構造について好ましい実
施形態を本明細書に開示したが、このような好ましい実
施形態は、本開示を他の任意のタイプの修復可能なメモ
リ構造について実施する例としてのみ意図されている。
したがって、本発明の範囲は、任意のタイプの修復可能
なメモリ構造を包含するよう意図され、RAMメモリ構
造のみに限定されるものではない。また、好ましい実施
形態のRAM設計は、パーソナルコンピュータ(P
C)、ラップトップコンピュータ、およびパーソナルデ
ータアシスタント(例えば、パームトップPC)を含む
任意のタイプのコンピュータ・システム内に実装するこ
とができる。
【0042】本発明およびその利点を詳細に説明した
が、本発明の精神および範囲から逸脱せずに、様々な変
更、置換、および代替を行うことができる。
【0043】本発明は、例として以下の実施形態を含
む。
【0044】(1)メモリブロック600を修復する方法
であって、複数のセグメント700、701、702、715を有す
るメモリブロックのセグメント内で欠陥を検出するステ
ップと、前記欠陥を修復するための修復データを生成す
るステップと、前記欠陥が検出された前記セグメントを
示すデータを生成するステップと、前記修復データを前
記欠陥が検出された前記セグメントにマップして、前記
欠陥を修復するステップと、を含む方法。
【0045】(2)前記修復データを生成するステップ
は、メモリデータを、前記セグメントの欠陥サブブロッ
クから前記セグメントの第1の非欠陥サブブロックに再
ルートすると共に、メモリデータを、前記セグメントの
第2の非欠陥サブブロックから前記セグメントの冗長サ
ブブロックに再ルートする制御信号を生成するステップ
をさらに含む、上記(1)に記載の方法。
【0046】(3)前記メモリブロック内で修復可能な
欠陥の最適な数を決定するステップと、前記最適な数の
欠陥のみの修復に十分な回路を実装するステップと、を
さらに含む上記(1)に記載の方法。
【0047】(4)前記メモリブロック内で修復可能な
欠陥セグメントの最適な数「N」を決定するステップ
と、前記最適な数「N」個の欠陥セグメントのみの修復
に十分な回路を実装するステップと、をさらに含む上記
(1)に記載の方法。
【0048】(5)前記回路が前記メモリブロックの前
記複数のセグメントから選択される任意の「N」個のセ
グメントを修復可能であるように、前記修復回路を実装
するステップをさらに含む上記(1)に記載の方法。
【0049】(6)メモリ構造600であって、それぞれ
修復可能なセグメントである、メモリセルの複数のセグ
メント700、701、702、715と、該複数の修復可能なセグ
メントの欠陥セグメントを修復するための修復データを
生成する手段610、612、614、616と、前記複数の修復可
能なセグメントのうち前記欠陥セグメントを識別するデ
ータを生成する手段650、652、654、656と、前記修復デ
ータを、前記複数の修復可能なセグメントのうちの前記
欠陥セグメントにマップする手段630と、を備えるメモ
リ構造。
【0050】(7)前記複数のセグメントのそれぞれ
は、少なくとも1つの修復可能なメモリセルのサブブロ
ックと、少なくとも1つのメモリセルの冗長サブブロッ
クと、を含む上記(6)に記載のメモリ構造。
【0051】(8)前記修復データは、セグメントの前
記複数のサブブロックのうちの欠陥サブブロックから前
記セグメントの前記複数のサブブロックのうちの非欠陥
サブブロックにメモリデータを再ルートするためのデー
タを含む、上記(7)に記載のメモリ構造。
【0052】(9)命令を実行するプロセッサと、該プ
ロセッサによりアクセス可能であり、少なくとも1つは
修復可能である、メモリセルの複数のセグメント700、7
01、702、715を含む、修復可能なメモリ構造600と、前
記少なくとも1つの修復可能なセグメントのうちの1つ
または複数の欠陥セグメントの修復を制御するための修
復データを生成する修復データ生成器610、612、614、6
16と、前記少なくとも1つの修復可能なセグメントのう
ちの1つまたは複数の欠陥セグメントを識別するデータ
を生成するアドレス生成器650、652、654、656と、生成
された修復データを、前記少なくとも1つの修復可能な
セグメントのうちの前記識別された1つまたは複数の欠
陥セグメントにマップするマッピング回路630と、を備
えるコンピュータシステム。
【0053】(10)前記マッピング回路630は、前記
アドレス生成器650、652、654、656から受け取ったデー
タをデコードするデコーダ640と、前記修復データを、
前記少なくとも1つの修復可能なセグメントのうちの前
記識別された1つまたは複数の欠陥セグメントにマップ
するMUX632、634、636、638と、を含む上記(9)に
記載のコンピュータシステム。
【0054】
【発明の効果】本発明によると、修復可能なメモリブロ
ックを提供するために実装される修復回路の量を、最適
な量に低減することができる。
【図面の簡単な説明】
【図1】RAM構造内に冗長サブブロックを実装する例
示的な概観を示す図である。
【図2】RAMブロックを修正するために冗長サブブロ
ックを利用する従来技術による設計を示す図である。
【図3】図2の従来技術による実装をより詳細に示す図
である。
【図4】スキャンパスを通してデータをシフトするため
に状態機械を実装するRAMブロックについての従来技
術による冗長実装を示す図である。
【図5】それぞれ256個のサブブロックを有する16
個のセグメントに分割されたRAMブロックについての
従来技術による冗長実装の例示的な概観を示す図であ
る。
【図6】本発明の好ましい実施形態の一例を示す図であ
る。
【符号の説明】
600 メモリブロック 610、612、614、616 修復データ生成器 630 マッピング回路 632、634、636、638 MUX 640 デコーダ 650、652、654、656 アドレス生成器 700、701、702、715 セグメント
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.7 識別記号 FI テーマコート゛(参考) G11C 11/34 371D 371A (72)発明者 ジェイ・フライシュマン アメリカ合衆国80526コロラド州フォー ト・コリンズ、ブロンソン・コート 2100 (72)発明者 ジェフリー・シー・ブラウチ アメリカ合衆国80525コロラド州フォー ト・コリンズ、レッドベリー・シーティー 1421

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 メモリブロックを修復する方法であっ
    て、 複数のセグメントを有するメモリブロックのセグメント
    内で欠陥を検出するステップと、 前記欠陥を修復するための修復データを生成するステッ
    プと、 前記欠陥が検出された前記セグメントを示すデータを生
    成するステップと、 前記修復データを前記欠陥が検出された前記セグメント
    にマップして、前記欠陥を修復するステップと、 を含む方法。
JP2001028520A 2000-02-18 2001-02-05 メモリブロックの修復方法 Pending JP2001273789A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/506620 2000-02-18
US09/506,620 US6249465B1 (en) 2000-02-18 2000-02-18 Redundancy programming using addressable scan paths to reduce the number of required fuses

Publications (1)

Publication Number Publication Date
JP2001273789A true JP2001273789A (ja) 2001-10-05

Family

ID=24015335

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001028520A Pending JP2001273789A (ja) 2000-02-18 2001-02-05 メモリブロックの修復方法

Country Status (2)

Country Link
US (1) US6249465B1 (ja)
JP (1) JP2001273789A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005353264A (ja) * 2004-06-11 2005-12-22 Samsung Electronics Co Ltd ツイストビットライン構造を有するメモリ装置の冗長回路及び不良セルの救済方法
JP2008269761A (ja) * 2007-04-17 2008-11-06 Hynix Semiconductor Inc 半導体メモリ装置
KR100882344B1 (ko) * 2002-06-28 2009-02-12 후지쯔 마이크로일렉트로닉스 가부시키가이샤 반도체 장치
US7602659B2 (en) 2004-04-28 2009-10-13 Hynix Semiconductor Inc. Memory device having shared fail-repairing circuit capable of repairing row or column fails in memory cell arrays of memory banks

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002008389A (ja) * 2000-06-20 2002-01-11 Mitsubishi Electric Corp 半導体記憶装置
AU2001273258A1 (en) * 2000-07-18 2002-01-30 Han-Ping Chen Memory access method and apparatus
US6687171B2 (en) * 2002-04-26 2004-02-03 Infineon Technologies Aktiengesellschaft Flexible redundancy for memories
US7093156B1 (en) * 2002-05-13 2006-08-15 Virage Logic Corp. Embedded test and repair scheme and interface for compiling a memory assembly with redundancy implementation
US7111193B1 (en) * 2002-07-30 2006-09-19 Taiwan Semiconductor Manufacturing Co. Ltd. Semiconductor memory having re-configurable fuse set for redundancy repair
EP1408513A1 (en) * 2002-10-07 2004-04-14 Infineon Technologies AG Carry decoder for a memory
EP1408516B1 (en) * 2002-10-07 2006-06-21 Infineon Technologies AG A fuse blowing interface for a memory chip
US20040088614A1 (en) * 2002-11-01 2004-05-06 Ting-Chin Wu Management system for defective memory
US7509543B2 (en) * 2003-06-17 2009-03-24 Micron Technology, Inc. Circuit and method for error test, recordation, and repair
US7437632B2 (en) * 2003-06-24 2008-10-14 Micron Technology, Inc. Circuits and methods for repairing defects in memory devices
US7415640B1 (en) * 2003-10-13 2008-08-19 Virage Logic Corporation Methods and apparatuses that reduce the size of a repair data container for repairable memories
DE102004041731B3 (de) * 2004-08-28 2006-03-16 Infineon Technologies Ag Speichermodul zum Bereitstellen einer Speicherkapazität
US20060066388A1 (en) * 2004-09-30 2006-03-30 Intel Corporation System and method for applying within-die adaptive body bias
US8205046B2 (en) * 2005-01-31 2012-06-19 Hewlett-Packard Development Company, L.P. System and method for snooping cache information using a directory crossbar
US7395470B2 (en) * 2005-06-09 2008-07-01 International Business Machines Corporation Method, apparatus, and computer program product for diagnosing a scan chain failure employing fuses coupled to the scan chain
JP4859402B2 (ja) * 2005-07-04 2012-01-25 株式会社アドバンテスト 試験装置、及び製造方法
DE102006013758A1 (de) * 2006-03-24 2007-09-27 Robert Bosch Gmbh Verfahren zum Betreiben einer Speichereinrichtung
US7663401B1 (en) * 2006-11-03 2010-02-16 Lattice Semiconductor Corporation Multiplexer initialization systems and methods
US7573762B2 (en) * 2007-06-06 2009-08-11 Freescale Semiconductor, Inc. One time programmable element system in an integrated circuit
TW201222254A (en) * 2010-11-26 2012-06-01 Inventec Corp Method for protecting data in damaged memory cells by dynamically switching memory mode
KR102227124B1 (ko) * 2014-12-26 2021-03-12 삼성전자주식회사 반도체 장치
KR102297926B1 (ko) * 2014-12-29 2021-09-07 에스케이하이닉스 주식회사 에러보정 제어 장치 및 이를 이용하는 컴퓨팅 시스템
KR102530327B1 (ko) * 2018-06-01 2023-05-08 삼성전자주식회사 비휘발성 메모리 장치 및 그 동작 방법

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4355376A (en) * 1980-09-30 1982-10-19 Burroughs Corporation Apparatus and method for utilizing partially defective memory devices
US5901095A (en) * 1997-12-23 1999-05-04 Lsi Logic Corporation Reprogrammable address selector for an embedded DRAM

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100882344B1 (ko) * 2002-06-28 2009-02-12 후지쯔 마이크로일렉트로닉스 가부시키가이샤 반도체 장치
US7602659B2 (en) 2004-04-28 2009-10-13 Hynix Semiconductor Inc. Memory device having shared fail-repairing circuit capable of repairing row or column fails in memory cell arrays of memory banks
JP2005353264A (ja) * 2004-06-11 2005-12-22 Samsung Electronics Co Ltd ツイストビットライン構造を有するメモリ装置の冗長回路及び不良セルの救済方法
JP2008269761A (ja) * 2007-04-17 2008-11-06 Hynix Semiconductor Inc 半導体メモリ装置

Also Published As

Publication number Publication date
US6249465B1 (en) 2001-06-19

Similar Documents

Publication Publication Date Title
JP2001273789A (ja) メモリブロックの修復方法
US5313425A (en) Semiconductor memory device having an improved error correction capability
US5920515A (en) Register-based redundancy circuit and method for built-in self-repair in a semiconductor memory device
US6803782B2 (en) Arrayed processing element redundancy architecture
KR950011728B1 (ko) 온-칩 ecc 및 최적화된 비트 및 워드 여유도를 갖는 dram
KR100790442B1 (ko) 글로벌 리던던시를 갖는 메모리소자 및 그 동작 방법
US6862721B2 (en) Method for identification of faulty or weak functional logic elements under simulated extreme operating conditions
JPH11219598A (ja) 半導体記憶装置
US7405989B2 (en) Electrical fuses with redundancy
US7366946B2 (en) ROM redundancy in ROM embedded DRAM
KR100278086B1 (ko) 퓨즈 수를 줄인 메모리 장치
JPH10283795A (ja) メモリシステム
KR20020062206A (ko) 테스트 기술 및 리던던시 기술을 최적화하도록 형성된반도체 기억 장치
JP3799197B2 (ja) 半導体記憶装置
WO2005015568A1 (en) Memory device and method of storing fail addresses of a memory cell
WO2002103522A2 (en) System and method for built in self repair of memories using speed stress test
KR100633595B1 (ko) 반도체 메모리 장치 및 그 구동 방법
US20050081093A1 (en) Ternary content addressable memory directed associative redundancy for semiconductor memories
JP4891748B2 (ja) 半導体集積回路およびそのテスト方法
US20080072121A1 (en) Method and Apparatus For Repairing Defective Cell for Each Cell Section Word Line
KR100963552B1 (ko) 반도체 메모리
JP3751810B2 (ja) 半導体メモリ装置
US6930934B2 (en) High efficiency redundancy architecture in SRAM compiler
US6535436B2 (en) Redundant circuit and method for replacing defective memory cells in a memory device
US6574157B2 (en) Modular memory structure having adaptable redundancy circuitry

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040708

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040727

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20041018

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20041021

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041206

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050916

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060511