説明

リダンダンシ演算装置及びリダンダンシ演算方法並びにメモリ試験装置

【課題】メモリデバイスの構造に依存しない汎用性を備えると共にリダンダンシ演算の高速化を図り、メモリデバイスの救済率の向上を図る。
【解決手段】全てのフェイルが救済されるための条件を第1の制約条件とし、同一の救済能力を有するスペアラインの集合であるスペアライングループ毎に使用されるスペアラインの本数を制限するための条件を第2の制約条件とし、フェイルの救済に使用されるスペアラインの総数、またはスペアラインをフェイルの救済に使用した場合に発生する総コストを目的関数とし、前記第1及び第2の制約条件の下、前記目的関数を最小化するという最適化問題を0−1整数計画法を適用して解くことにより、前記メモリセル領域におけるフェイル分布に対する前記スペアラインの割当パターンを求める。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、メモリデバイスにおける不良セルを予備セルで置換するリダンダンシ処理を行う上で、不良セルに対する予備セルの最適な割当パターンを演算によって求めるリダンダンシ演算装置及びリダンダンシ演算方法並びに当該装置を備えるメモリ試験装置に関する。
【背景技術】
【0002】
RAM(Random Access Memory)等のメモリデバイスは、製造時においてメモリセルに1つでも欠陥があると不良になる。このため、通常は、本来メモリセルとして用いられるセル領域の周囲に予備セルを形成しておき、メモリ試験装置の試験によってメモリデバイスに欠陥が生じた(フェイルと判定された)不良セルが検出された場合、レーザトリマ等によってメモリデバイス内の所定のパターンを切断して、不良セルを予備セルで置換して不良デバイスを救済することにより、製造歩留まりの低下を防止している。このように、メモリデバイスにおいて不良セルを予備セルで置換する処理をリダンダンシ処理という。
【0003】
このような予備セルによる置換は、図9に示すように、ライン単位で行われることが一般的である。図9は、メモリデバイスに形成されるメモリセル及びその周囲に形成された予備セルを概念的に示す図である。図9において、符号100を付した矩形領域は複数のメモリセルが2次元配列されたメモリセル領域を表しており、このメモリセル領域100内の個々のメモリセルは列アドレス(Xアドレス)と行アドレス(Yアドレス)とによって特定される。メモリセル領域100の内部に示した記号「×」は、メモリ試験装置の試験によってフェイルと判定された不良セルを表している。
【0004】
図9に示す例では、メモリセル領域100の図中右側に、Yアドレス方向に延在するスペアライン(ライン状にYアドレスの数だけ形成された予備セルの集合体)が複数本用意されており、メモリセル領域100の図中下側に、Xアドレス方向に延在するスペアライン(ライン状にXアドレスの数だけ形成された予備セルの集合体)が複数本用意されている。ここで、同一の救済能力を有するスペアラインの集合をスペアライングループという。
【0005】
例えば、図9において、Yアドレス方向に延在する複数のスペアラインの各々は、Xアドレス方向に移動し、メモリセル領域100においてYアドレス方向に存在する不良セル(例えば符号C11のライン上の不良セル)を同時救済する能力がある。なお、スペアラインの移動とは、実際に物理的に移動するという意味ではなく、置換によって擬似的に移動しているように見えることを指す。このように、Xアドレス方向を移動範囲とし、Yアドレス方向に存在する不良セルの同時救済能力を有するスペアラインの集合を、スペアライングループXSLGと呼ぶ。また、図9において、Xアドレス方向に延在する複数のスペアラインの各々は、Yアドレス方向に移動し、メモリセル領域100においてXアドレス方向に存在する不良セル(例えば符号R11のライン上の不良セル)を同時救済する能力がある。このように、Yアドレス方向を移動範囲とし、Xアドレス方向に存在する不良セルの同時救済能力を有するスペアラインの集合を、スペアライングループYSLGと呼ぶ。
【0006】
メモリセル領域100内における不良セルの分布(フェイル分布)が図9に示す通りであるとすると、符号R11のライン上に配列されたメモリセルをスペアライングループYSLGの中の1本のスペアラインで置換すると共に、符号C11、C12、C13のライン上に配列されたメモリセルをスペアライングループXSLGの中の3本のスペアラインで置換することにより、メモリデバイスの不良を救済することができる。なお、以下では、符号C11、C12、C13、R11のように、フェイルが存在するラインをフェイルラインと呼ぶ。
【0007】
上記のように、メモリセル領域100におけるフェイル分布(つまりフェイルライン)に対するスペアラインの最適な割当パターンを演算によって求めることをリダンダンシ演算という。従来のリダンダンシ演算では、フェイル数の多いフェイルラインから優先的にスペアラインを割当てる方法や、下記特許文献1に記載されているように、スペアライングループ毎にスペアラインの1本当たりのコストを求め、このスペアラインの1本当たりのコストから算出される救済効率を基にスペアラインの割当てを行う方法などが考案されている。
【0008】
特許文献1の技術について具体的に説明すると、あるスペアライングループのリペア候補ラインの本数及び各リペア候補ライン上の未救済フェイル数を基に、そのスペアライングループの全体コストを算出し、当該全体コストをスペアライングループに属するスペアラインの本数で除算することにより、スペアラインの1本当たりのコストを算出する。ここで、リペア候補ラインとは、1本のスペアラインについて、フェイル上に割当て可能なライン(フェイルライン)の候補を指す(但し、同じスペアライングループに属するスペアラインは区別しない)。例えば、図9におけるスペアライングループXSLGに属するスペアラインのリペア候補ラインは、符号C11、C12、C13、C14、C15のラインとなる。また、スペアライングループYSLGに属するスペアラインのリペア候補ラインは、符号R11、R12、R13、R14、R15のラインとなる。
【0009】
そして、1フェイル当たりの救済コストCRを、CR=(スペアライン1本当たりのコスト)/(救済フェイル数)によって算出し、当該救済コストCRの逆数を救済効率(=1/CR)とする。このようなコスト計算により、救済効率の高いリペア候補ラインを探索し、救済効率の高いリペア候補ラインに優先的にスペアラインの割当てを行い、全フェイル救済完了と判定されるまで、または救済不可能と判定されるまで、スペアラインの割当てを繰り返す。ここで、全フェイル救済完了と判定された場合、最終的に得られたスペアラインの割当パターンデータを用いて、実際のリダンダンシ処理(レーザトリマ)を行う。一方、全フェイルの救済は不可能と判定された場合、スペアラインの割当パターンを変更してリトライを行い、再度、全フェイル救済完了と判定されるまで、または救済不可能と判定されるまで、スペアラインの割当てを繰り返す。ここで、リトライ回数やリダンダンシ演算に要する時間が所定の閾値に到達した場合、最終的に救済不能デバイスと判断し、次のメモリデバイスのリダンダンシ演算を開始する。
【特許文献1】特開2007−066349号公報
【発明の開示】
【発明が解決しようとする課題】
【0010】
ところで、近年においては、メモリデバイスの低価格化が進んでおり、試験に要するコストを含めたメモリデバイスの製造コストの低減が要求されている。このため、メモリ試験装置を用いた試験時間及びメモリデバイスの不良救済に要する時間(つまりリダンダンシ演算に要する時間)等を極力短縮する必要がある。上述したメモリデバイスの不良救済は製造歩留まりを向上させて製造コストを低減する上で必要不可欠なものであり、メモリデバイスの不良救済を行う場合には救済が可能であるメモリデバイスのみが全数救済されるというのが理想的である。
【0011】
しかしながら、従来のリダンダンシ演算では、上述したように、救済効率の高いリペア候補ラインに優先的にスペアラインの割当てを行うため、最終的に全フェイル救済完了となるのか、または救済不可能となるのかはスペアラインの割当てが終了するまでわからなかった。このため、フェイル分布やデバイス構造(スペアラインの配置構造)によっては、リトライ回数が増大すると共にリダンダンシ演算に要する時間が増大し、本来ならば救済可能であったメモリデバイスを救済不能デバイスと判断して廃棄してしまうという問題があった。つまりメモリデバイスの救済率の低下を招いていた。
【0012】
近年、メモリデバイスの大容量化に伴い、デバイス構造、つまりスペアラインの配置構造はますます複雑化しており、上述した従来のリダンダンシ演算では、このような複雑な構造を有するメモリデバイスに対応することは困難となっていた。
【0013】
本発明は、このような事情に鑑みてなされたものであり、メモリデバイスの構造に依存しない汎用性を備えると共にリダンダンシ演算の高速化を図り、メモリデバイスの救済率の向上を図ることのできるリダンダンシ演算装置及びリダンダンシ演算方法並びにメモリ試験装置を提供することを目的とする。
【課題を解決するための手段】
【0014】
上記課題を解決するために、本発明では、リダンダンシ演算装置に係る第1の解決手段として、複数のメモリセルが行アドレス方向及び列アドレス方向に2次元配列されたメモリセル領域の周辺に、複数の予備セルからなるスペアラインが設けられたメモリデバイスの不良救済を行う上で、前記メモリセル領域におけるフェイル分布に対する前記スペアラインの割当パターンを演算によって求めるリダンダンシ演算装置であって、全てのフェイルが救済されるための条件を第1の制約条件とし、同一の救済能力を有するスペアラインの集合であるスペアライングループ毎に使用されるスペアラインの本数を制限するための条件を第2の制約条件とし、フェイルの救済に使用されるスペアラインの総数、またはスペアラインをフェイルの救済に使用した場合に発生する総コストを目的関数とし、前記第1及び第2の制約条件の下、前記目的関数を最小化するという最適化問題を0−1整数計画法を適用して解くことにより、前記メモリセル領域におけるフェイル分布に対する前記スペアラインの割当パターンを求める演算処理部を備える、ことを特徴とする。
【0015】
また、本発明では、リダンダンシ演算装置に係る第2の解決手段として、上記第1の解決手段において、前記演算処理部は、1本のスペアラインについて、前記メモリセル領域におけるフェイル上に割当可能なラインの候補をリペア候補ラインj(j=1、2、・・・、n)とし、リペア候補ラインjがフェイルi(i=1、2、・・・、M)を救済する場合を「1」、救済しない場合を「0」とする係数rijと、リペア候補ラインjがスペアライングループk(k=1、2、・・・、K)に属する場合を「1」、属さない場合を「0」とする係数gkjと、リペア候補ラインjを採用する場合を「1」、採用しない場合を「0」とする変数xとを定義し、前記係数rijと変数xとから成る下記(15)式を、全てのフェイルが救済されるための第1の制約条件とし、前記係数gkjと変数xとから成る下記(18)式を、スペアライングループk毎に使用されるスペアラインの本数を制限するための第2の制約条件とし、スペアライングループkによって定まるコストwと前記係数gkjと前記変数xとから成る下記(20)式で表される総コストzを目的関数とし、前記第1及び第2の制約条件の下、前記目的関数zを最小化するという最適化問題を0−1整数計画法を適用して解くことにより、xの最適解を求める、ことを特徴とする。
【0016】
【数1】

【0017】
また、本発明では、リダンダンシ演算装置に係る第3の解決手段として、上記第2の解決手段において、前記演算処理部は、下記(21)式で表される行列A、b、x、cを作成し、前記目的関数zを下記(22)式で置き換え、前記第1及び第2の制約条件を下記(23)式で置き換えることを特徴とする。
【0018】
【数2】

【0019】
また、本発明では、リダンダンシ演算装置に係る第4の解決手段として、上記第2または第3の解決手段において、前記メモリデバイスにおける前記スペアライングループの配置構造に応じた演算条件データを予め記憶する演算条件データ記憶部と、前記メモリセル領域におけるフェイルのアドレスを示すフェイルアドレスデータを記憶するフェイルアドレス記憶部と、を備え、前記演算処理部は、前記演算条件データ及び前記フェイルアドレスデータを基に、リペア候補ラインjがフェイルiを救済するか否かを判別することにより、前記係数rijを作成することを特徴とする。
【0020】
また、本発明では、リダンダンシ演算装置に係る第5の解決手段として、上記第4の解決手段において、前記演算条件データは、前記スペアライングループの救済領域であるメモリセル領域の原点位置を規定するベースアドレスデータと、スペアライングループの行アドレス方向及び列アドレス方向の幅を規定するマスクデータと、スペアライングループの救済可能範囲を規定するリペアマスクデータとで構成されることを特徴とする。
【0021】
また、本発明では、リダンダンシ演算装置に係る第6の解決手段として、上記第5の解決手段において、前記演算処理部は、前記演算条件データの内、前記マスクデータと前記リペアマスクデータとの論理和をとった結果のビット反転データを判定用マスクデータとし、当該判定用マスクデータと前記フェイルアドレスデータとの論理和をとった結果が、前記ベースアドレスデータと一致した場合に、リペア候補ラインjがフェイルiを救済すると判別することを特徴とする。
【0022】
また、本発明では、リダンダンシ演算装置に係る第7の解決手段として、上記第1〜第6のいずれかの解決手段において、前記0−1整数計画法の解法として、間接列挙法を適用した分枝限定法を用いることを特徴とする。
【0023】
一方、本発明では、リダンダンシ演算方法に係る解決手段として、複数のメモリセルが行アドレス方向及び列アドレス方向に2次元配列されたメモリセル領域の周辺に、複数の予備セルからなるスペアラインが設けられたメモリデバイスの不良救済を行う上で、前記メモリセル領域におけるフェイル分布に対する前記スペアラインの割当パターンを演算によって求めるリダンダンシ演算方法であって、全てのフェイルが救済されるための条件を第1の制約条件とし、同一の救済能力を有するスペアラインの集合であるスペアライングループ毎に使用されるスペアラインの本数を制限するための条件を第2の制約条件とし、フェイルの救済に使用されるスペアラインの総数、またはスペアラインをフェイルの救済に使用した場合に発生する総コストを目的関数とし、前記第1及び第2の制約条件の下、前記目的関数を最小化するという最適化問題を0−1整数計画法を適用して解くことにより、前記メモリセル領域におけるフェイル分布に対する前記スペアラインの割当パターンを求める、ことを特徴とする。
【0024】
さらに、本発明では、メモリ試験装置に係る解決手段として、メモリデバイスのパス/フェイルを示すフェイル情報を格納するフェイルメモリを有するメモリ試験装置であって、前記フェイルメモリに格納された前記フェイル情報を用いて、前記メモリデバイスのメモリセル領域におけるフェイル分布に対する前記スペアラインの割当パターンを演算によって求める請求項1〜請求項7のいずれか一項に記載のリダンダンシ演算装置を備えることを特徴とする。
【発明の効果】
【0025】
本発明に係るリダンダンシ演算装置は、全てのフェイルが救済されるための条件を第1の制約条件とし、同一の救済能力を有するスペアラインの集合であるスペアライングループ毎に使用されるスペアラインの本数を制限するための条件を第2の制約条件とし、フェイルの救済に使用されるスペアラインの総数、またはスペアラインをフェイルの救済に使用した場合に発生する総コストを目的関数とし、前記第1及び第2の制約条件の下、前記目的関数を最小化するという最適化問題を0−1整数計画法を適用して解くことにより、メモリセル領域におけるフェイル分布に対するスペアラインの割当パターンを求めるものである。
【0026】
すなわち、従来のリダンダンシ演算では、救済効率の高いリペア候補ラインに優先的にスペアラインの割当てを行うため、最終的に全フェイル救済完了となるのか、または救済不可能となるのかはスペアラインの割当てが終了するまでわからなかったが、本発明では、リダンダンシ演算の始めから全てのフェイルが救済されるための制約条件を考慮して、目的関数を最小化するという最適化問題を解くため、得られた最適解は必ず全フェイルの救済を満足していることになる。従って、本発明に係るリダンダンシ演算装置によれば、従来では必要であったリトライが不要となるので、メモリデバイスの構造に依存しない汎用性を備えることができると共に、リダンダンシ演算の高速化を図ることが可能であり、その結果、メモリデバイスの救済率の向上を図ることが可能である。
【発明を実施するための最良の形態】
【0027】
以下、図面を参照して、本発明の一実施形態について説明する。
図1は、本発明の一実施形態におけるリダンダンシ演算装置を備えるメモリ試験装置の要部構成を示すブロック図である。図1に示す通り、メモリ試験装置10は、試験パターン発生部11、アドレス変換部12、コンパレータ13、フェイルメモリコントローラ14、フェイルメモリ15及びリダンダンシ演算装置20を備えており、複数(例えば、数百個)のメモリデバイス30の試験を並列して行う。なお、メモリデバイス30は、Xアドレス(列アドレス)及びYアドレス(行アドレス)により個々が特定される複数のメモリセルが2次元配列されたメモリセル領域と、メモリセル領域の周囲に、ライン状に形成された複数の予備セルからなるスペアラインを有する。なお、詳細は後述するが、メモリデバイス30内のアドレスは、上記のXアドレス及びYアドレスの他、ページという要素も含めた3次元の要素によって定義されている。
【0028】
試験パターン発生部11は、メモリデバイス30に与える試験パターンD1及び二次元のアドレスA1並びにパス/フェイル判定時に用いる期待値D3を発生する。アドレス変換部12は、所定の変換規則に従って、試験パターン発生部11で発生した二次元のアドレスA1を一次元のアドレスA2に変換する。コンパレータ13は、メモリデバイス30から読み出されたデータD2と試験パターン発生部11から出力される期待値D3とを比較してパス/フェイルを示すフェイルデータFDを出力する。フェイルメモリコントローラ14は、フェイルメモリ15に対するフェイルデータFDの書き込み制御及び読み出し制御を行う。フェイルメモリ15は、複数のメモリデバイス30の試験結果を示すフェイルデータFDを記憶するものであり、その容量は例えば数百ギガビット程度である。
【0029】
リダンダンシ演算装置20は、フェイルが発生したメモリデバイス30のメモリセル領域におけるフェイル分布(つまりフェイルライン)に対するスペアラインの最適な割当パターンを、0−1整数計画法を用いたリダンダンシ演算によって求めるものであり、演算処理部21、演算条件データ記憶部22、フェイルアドレス記憶部23及び表示部24を備えている。
【0030】
演算処理部21は、フェイルメモリコントローラ14を介してフェイルメモリ15からフェイルデータFDを取得すると共に、当該フェイルデータFDからフェイルが発生したメモリセルのアドレス(以下、フェイルアドレスと称す)を抽出し、このフェイルアドレスを所定のデータ表現形式のフェイルアドレスデータに変換してフェイルアドレス記憶部23に記憶する。また、この演算処理部21は、演算条件データ記憶部22に記憶されている演算条件データと、フェイルアドレス記憶部23に記憶されているフェイルアドレスデータとに基づいて、フェイルが発生したメモリデバイス30のメモリセル領域におけるフェイルラインに対するスペアラインの最適な割当パターンを、0−1整数計画法を用いたリダンダンシ演算によって求める。なお、この演算処理部21による0−1整数計画法を用いたリダンダンシ演算についての詳細は後述する。
【0031】
演算条件データ記憶部22は、DUT30に設けられたスペアラインの配置構造を規定する演算条件データを予め記憶しており、上記演算処理部21の制御の下、演算条件データを演算処理部21に出力する。フェイルアドレス記憶部23は、上記演算処理部21の制御の下、上記フェイルアドレスデータを記憶する一方、要求に応じてフェイルアドレスデータを演算処理部21に出力する。表示部24は、例えば液晶ディスプレイであり、演算処理部21の制御の下、リダンダンシ演算の演算結果を表示する。
【0032】
以下、上記の演算条件データ及びフェイルアドレスデータについて詳細に説明する。図2は、メモリデバイス30におけるメモリセル領域及びスペアラインの配置構造を示す概念図である。図2に示すように、メモリセル領域はブロック単位(BLK1、BLK2、BLK3)に区分されており、それぞれのブロックは独立して動作し、互いに影響を及ぼさない。本実施形態におけるリダンダンシ演算装置20(演算処理部21)は、このブロック毎にリダンダンシ演算を行う。
【0033】
また、図2に示すように、1つのブロック内には、予備セル領域であるスペアラインが形成されており、以下では、同一の救済能力を有するスペアラインの集合をスペアライングループ(XSLG1、XSLG2、YSLG)と呼ぶ。本実施形態では、これらスペアライングループの救済メモリセル領域を、セグメント(SEG1、SEG2)という領域で定義する。つまり、図2の例では、スペアライングループXSLG1に属するスペアラインは、Xアドレス方向を移動範囲とし、セグメントSEG1のYアドレス方向に存在する不良セル(以下、フェイルと略す)の同時救済能力を有する。また、スペアライングループXSLG2に属するスペアラインは、Xアドレス方向を移動範囲とし、セグメントSEG2のYアドレス方向に存在するフェイルの同時救済能力を有する。また、スペアライングループYSLGに属するスペアラインは、Yアドレス方向を移動範囲とし、セグメントSEG1及びSEG2のXアドレス方向に存在するフェイルの同時救済能力を有する。
【0034】
本実施形態では、上記のような構造のメモリデバイス30内の位置を指定するためのアドレスを、Xアドレス及びYアドレスに、ページPを加えた3次元要素(P、X、Y)によって定義する。メモリデバイス30がページ構造を有しないデバイスである場合、ページP=0とすれば良い。このような3次元要素からなるアドレスを用いることによって、セグメントやスペアライングループ、フェイルの位置などを定義することができる。
【0035】
本実施形態では、スペアライングループを、ベースアドレスデータ、マスクデータ、リペアマスクデータの3つのデータによって定義する。ベースアドレスデータとは、スペアライングループの救済領域であるセグメントの原点位置を規定するデータである。マスクデータとは、スペアライングループによって同時救済可能な領域、つまりスペアライングループのXアドレス方向及びYアドレス方向の幅を規定するデータである。リペアマスクデータとは、スペアライングループの移動可能範囲(救済可能範囲)を規定するデータである。本実施形態では、これら3つのデータを1組の演算条件データとする。この演算条件データは、スペアライングループの配置構造によって変わるため、メモリデバイス30におけるスペアライングループの配置構造に応じて演算条件データを作成し、演算条件データ記憶部22に予め記憶しておく。
【0036】
図3及び図4は、所定のスペアライングループの配置構造に対応する演算条件データの一例を示したものである。図3(a)は、Xアドレス方向を移動範囲とし、セグメントSEG1のYアドレス方向に存在するフェイルの同時救済能力を有するスペアライングループXSLG1の演算条件データである。ここで、Xアドレス「0」〜「FF」(16進数)、Yアドレス「0」〜「FF」で定義される領域をセグメントSEG1とする。つまり、セグメントSEG1はXアドレス方向及びYアドレス方向に「100(=256=2)」の幅を有している。
【0037】
演算条件データ(ベースアドレスデータ、マスクデータ、リペアマスクデータ)は、ページPに対応するページビット領域PBと、Yアドレスに対応するYアドレスビット領域YBと、Xアドレスに対応するXアドレスビット領域XBとで構成されている。ページビット領域PBのビット数はメモリデバイス30が有するページ数に応じて設定すれば良いが、Yアドレスビット領域YB及びXアドレスビット領域XBでは、少なくとも1つのセグメントに対応可能なビット数(つまり8ビット)が必要である。なお、図3及び図4において、ページビット領域PB、Yアドレスビット領域YB、Xアドレスビット領域XBの斜線部分はビットが「1」にセットされていることを示し、白抜き部分はビットが「0」にセットされていることを示している。
【0038】
図3(a)に示すように、セグメントSEG1を救済するスペアライングループXSLG1のベースアドレスデータは救済領域(セグメントSEG1)の原点を規定するデータであるので、Yアドレスビット領域YB及びXアドレスビット領域XBの全ビットは「0」(16進数で「0」)にセットされる。また、マスクデータはスペアライングループXSLG1によって同時救済可能な領域を規定するデータなので、Yアドレスビット領域YBの8ビット分は「1」(16進数で「FF」)にセットされ、Xアドレスビット領域XBの全ビットは「0」にセットされる。つまり、このマスクデータによって、スペアライングループXSLG1は、セグメントSEG1内のYアドレス方向に対して1ライン上に存在するフェイルを同時救済可能であることを定義している。また、リペアマスクデータはスペアライングループXSLG1の移動可能範囲を規定するデータなので、Xアドレスビット領域XBの8ビット分は「1」(16進数で「FF」)にセットされ、Yアドレスビット領域YBの全ビットは「0」にセットされる。つまり、このリペアマスクデータによって、スペアライングループXSLG1は、セグメントSEG1内のXアドレス方向に移動可能であることを定義している。
【0039】
図3(b)は、Yアドレス方向を移動範囲とし、セグメントSEG1のXアドレス方向に存在するフェイルの同時救済能力を有するスペアライングループYSLG1の演算条件データである。この図に示すように、スペアライングループYSLG1のベースアドレスデータにおいて、Yアドレスビット領域YB及びXアドレスビット領域XBの全ビットは「0」(16進数で「0」)にセットされる。また、マスクデータにおいて、Xアドレスビット領域XBの8ビット分は「1」(16進数で「FF」)にセットされ、Yアドレスビット領域YBの全ビットは「0」にセットされる。また、リペアマスクデータにおいて、Yアドレスビット領域YBの8ビット分は「1」(16進数で「FF」)にセットされ、Xアドレスビット領域XBの全ビットは「0」にセットされる。
【0040】
図4(a)は、Yアドレス方向を移動範囲とし、セグメントSEG1及びSEG2のXアドレス方向に存在するフェイルの同時救済能力を有するスペアライングループYSLG1−2の演算条件データである。なお、Xアドレス「100」〜「1FF」(16進数)、Yアドレス「0」〜「FF」で定義される領域をセグメントSEG2とする。この図に示すように、スペアライングループYSLG1-2のベースアドレスデータにおいて、Yアドレスビット領域YB及びXアドレスビット領域XBの全ビットは「0」(16進数で「0」)にセットされる。また、マスクデータにおいて、Xアドレスビット領域XBの9ビット分は「1」(16進数で「1FF」)にセットされ、Yアドレスビット領域YBの全ビットは「0」にセットされる。また、リペアマスクデータにおいて、Yアドレスビット領域YBの8ビット分は「1」(16進数で「FF」)にセットされ、Xアドレスビット領域XBの全ビットは「0」にセットされる。
【0041】
図4(b)は、Xアドレス方向を移動してセグメントSEG1を救済すると共に、連動してセグメントSEG2を同時救済する能力を有するスペアライングループXSLG1&2の演算条件データである。この図に示すように、スペアライングループXSLG1&2のベースアドレスデータにおいて、Yアドレスビット領域YB及びXアドレスビット領域XBの全ビットは「0」(16進数で「0」)にセットされる。また、マスクデータにおいて、Xアドレスビット領域XBの9ビット目は「1」(16進数で「100」)にセットされ、Yアドレスビット領域YBの全ビットは「1」(16進数で「FF」)にセットされる。また、リペアマスクデータにおいて、Xアドレスビット領域XBの8ビット分は「1」(16進数で「FF」)にセットされ、Yアドレスビット領域YBの全ビットは「0」にセットされる。
【0042】
このスペアライングループXSLG1&2の演算条件データは、以下のような作成方法を用いる。マスクデータを作成する場合、まず、図5に示すように、スペアライングループがセグメントSEG1を救済する場合のベースアドレスデータ(Yアドレスビット領域YB及びXアドレスビット領域XBの全ビット「0」)と、スペアライングループがセグメントSEG2を救済する場合のベースアドレスデータ(Xアドレスビット領域XBの9ビット目「1」、Yアドレスビット領域YBの全ビット「0」)との排他的論理和をとる。そして、その排他的論理和の結果と、スペアライングループがセグメントSEG1を救済する場合のマスクデータ(Yアドレスビット領域YBの8ビット分は「1」、Xアドレスビット領域XBの全ビット「0」)との論理和をとり、これにより得られたデータをスペアライングループXSLG1&2のマスクデータとして使用する。また、ベースアドレスデータ及びリペアマスクデータとしては、セグメントSEG1を救済する場合のベースアドレスデータ及びリペアマスクデータを使用する。
なお、図4(a)のようなスペアライングループYSLG1-2の演算条件データを作成する場合も同様の手法を用いることができる。
【0043】
図4(c)は、Xアドレス方向を移動してセグメントSEG1またはSEG2の一方を救済する能力を有するスペアライングループXSLG1|2の演算条件データである。この図に示すように、スペアライングループXSLG1|2のベースアドレスデータにおいて、Yアドレスビット領域YB及びXアドレスビット領域XBの全ビットは「0」(16進数で「0」)にセットされる。また、マスクデータにおいて、Yアドレスビット領域YBの8ビット分は「1」(16進数で「FF」)にセットされ、Xアドレスビット領域XBの全ビットは「0」にセットされる。また、リペアマスクデータにおいて、Xアドレスビット領域XBの9ビット分は「1」(16進数で「1FF」)にセットされ、Yアドレスビット領域YBの全ビットは「0」にセットされる。
【0044】
このスペアライングループXSLG1|2の演算条件データは、以下のような作成方法を用いる。リペアマスクデータを作成する場合、まず、スペアライングループがセグメントSEG1を救済する場合のベースアドレスデータと、スペアライングループがセグメントSEG2を救済する場合のベースアドレスデータとの排他的論理和をとる。そして、その排他的論理和の結果と、スペアライングループがセグメントSEG1を救済する場合のリペアマスクデータとの論理和をとり、これにより得られたデータをスペアライングループXSLG1|2のリペアマスクデータとして使用する。また、ベースアドレスデータ及びマスクデータとしては、セグメントSEG1を救済する場合のベースアドレスデータ及びマスクデータを使用する。
【0045】
以上説明したような救済能力を有するスペアライングループがメモリデバイス30内のメモリセル領域(セグメント)に応じて複数設けられており、各スペアライングループに応じた演算条件データが演算条件データ記憶部22に予め記憶されている。
なお、フェイルアドレス記憶部22に記憶されるフェイルアドレスデータも演算条件データと同様に、ページビット領域PB、Yアドレスビット領域YB、Xアドレスビット領域XBから構成されている。つまり、演算処理部21は、フェイルメモリコントローラ14を介してフェイルメモリ15からフェイルデータFDを取得すると共に、当該フェイルデータFDからフェイルアドレスを抽出し、このフェイルアドレスを上記のように、ページビット領域PB、Yアドレスビット領域YB、Xアドレスビット領域XBから構成されるフェイルアドレスデータに変換してフェイルアドレス記憶部23に記憶する。
【0046】
次に、上記のように構成されたメモリ試験装置10の動作について説明する。
メモリ試験装置10は、まずメモリデバイス30の試験を行い、次いで、フェイルが発生したメモリデバイス30のメモリセル領域(セグメント)におけるフェイル分布に対するスペアラインの最適な割当パターンを、0−1整数計画法を用いたリダンダンシ演算によって求める。
【0047】
メモリデバイス30の試験が開始されると、まず試験パターン発生部11から試験パターンD1とアドレスA1とが出力されて、試験パターンD1がメモリデバイス30に書き込まれる。試験パターンD1の書き込みが終了すると、試験パターン発生部11からアドレスA1と期待値D3とが出力される。
【0048】
試験パターン発生部11から出力されたアドレスA1がメモリデバイス30に与えられると、メモリデバイス30に予め書き込んだ試験パターンがデータD2として読み出されてコンパレータ13に入力され、試験パターン発生部11から出力された期待値D3と比較されてパス/フェイルが判定され、パス/フェイルを示すフェイルデータFDがフェイルメモリコントローラ14に入力される。また、試験パターン発生部11から出力されたアドレスA1は、アドレス変換部12に出力されて一次元のアドレスA2に変換されフェイルメモリコントローラ14に入力される。フェイルメモリコントローラ14は、アドレスA2で示されるフェイルメモリ15の記憶領域に、コンパレータ13から出力されたフェイルデータFDを書き込む。試験パターン発生部11からアドレスA1及び期待値D3が出力される度に上記の動作が繰り返し行われ、これによりフェイルデータFDがフェイルメモリ15に順次記憶される。
【0049】
メモリデバイス30の試験が終了すると、リダンダンシ演算装置20の演算処理部21は、フェイルメモリコントローラ14を制御してフェイルメモリ15に記憶されたフェイルデータFDを読み出すと共に、フェイルデータFDからフェイルアドレスを抽出し、このフェイルアドレスをページビット領域PB、Yアドレスビット領域YB、Xアドレスビット領域XBから構成されるフェイルアドレスデータに変換してフェイルアドレス記憶部23に記憶する。演算処理部21は、フェイルアドレス記憶部23へのフェイルアドレスデータの記憶処理が完了すると、以下に説明するリダンダンシ演算を行う。
【0050】
まず、本実施形態における0−1整数計画法を用いたリダンダンシ演算の原理について説明する。
【0051】
<0−1整数計画法>
0−1整数計画法とは、変数x及び係数cから成る(1)式で表される一次関数を目的関数zとし、変数x、係数aij及び係数bから成る(2)式で表される一次不等式の制約条件と、変数xが「0」または「1」の値しか取らないという(3)式で表される制約条件の下で、上記目的関数zを最小化または最大化するという最適化問題を解くことをいう。
【0052】
【数3】

【0053】
上記(1)、(2)、(3)式で表される0−1整数計画法の解の個数は2個である。よって、それらを全て列挙して逐一実行可能であるか否かを確認し、実行可能であれば、その目的関数zを求めることによってこの最適化問題を解くことができることは明らかである。しかしながら、変数xの個数nの値が大きくなると解の個数は指数関数的に増大するため、上記のように解の全てを列挙する方法を用いると演算時間が膨大となる恐れがある。そこで、このような0−1整数計画法の解法として、間接列挙法を適用した分枝限定法を用いる。この間接列挙法は変数の0−1条件を積極的に利用した解法である。
【0054】
<分枝限定法、間接列挙法>
直接的な解法が見つかっていない最適化問題Pが与えられている場合、(4)式に示すように、適当な条件を設定して、Pの実行可能領域Xをいくつかの部分領域X、X、・・・Xに分割し、その各々に対応する問題Pを考え、これをPの子問題という。この一群の子問題P(k=1、2、・・・)を解いて得られた解の中でf(x)の値が最小のものを見つければ、問題Pの最適解が得られることは明らかである。この子問題Pがまだ直接解けない場合は、Xをさらにいくつかの領域に分け、Pをさらにいくつかの子問題に分解する。このような手順を繰り返すことで、元の問題Pを解く方法が分枝限定法である。
【0055】
【数4】

【0056】
この分枝限定法は、分枝操作と限定操作とで構成されている。分枝操作とは、問題Pが直接解けない場合、その実行可能領域となるXを(5)式で表されるいくつかの部分集合X、・・・、Xに分割し、Pをその一群の子問題である(6)式で置き換えることである。
【0057】
【数5】

【0058】
一般に、Pの実行可能領域Xは、Xに制限を加えたX=X∩Bという形で与えられている。ここで、(7)式で表されるBk,p、・・・、Bk,qを用いて、Xを(8)式とすることにより、(5)式を満たす分割が得られる。
【0059】
【数6】

【0060】
上記のような子問題への分枝操作を終端させる操作を限定操作という。この限定操作では、(4)式の制約条件をさらに緩めた緩和問題P’を解くことになる。
【0061】
【数7】

【0062】
ここで、問題Pと緩和問題P’の間には次の関係が成立する。
(i)P’が実行可能解を持たない時は、Pも実行可能解を持たない。
(ii)P’の最適解をx’としたとき、x’∈Xならばx’はPの最適解である。
(iii)P’の最適値をz’とし、Pの最適値をzとすると、z’である。
【0063】
問題Pの少なくとも1つの実行可能解x”が得られているとし、x”に対応する目的関数値をz”=f’(x”)とすると、z”はPの暫定的な最適値となる。従って、P’の最適値z’が下記(10)式を満たせば、問題Pのいかなる実行可能解もx”より良い目的関数値を与えないことが明らかである。よって、この場合、Pをこれ以上分枝することは無意味であり、このような場合、Pは限定操作によって見切られて分枝停止となる。さらに、P’の最適解x’が下記(11)式を満たす場合、x’はPの最適解となる。よって、この場合もPを分枝する必要はない。
【0064】
【数8】

【0065】
このように(10)式または(11)式が成立するか否かを調べることを子問題Pを探査するといい、(10)式または(11)式が成立したことが判明した場合、子問題Pは探査済みとなり、それ以上分枝しても無意味なので、この時点で子問題Pは分枝停止となる。分枝限定法とは、上記のような分枝操作と限定操作を繰り返すことによって、元の問題Pを解くものである。
【0066】
また、上記(8)式において、Bk,lとして、下記(12)式を用いることにより、列挙する解の個数を減らすことができる。このように、0−1条件を利用して列挙する解の個数を減らし、効率良く問題を解く方法が間接列挙法である。
【0067】
【数9】

【0068】
<0−1整数計画法を用いたリダンダンシ演算>
次に、上記のような0−1整数計画法の原理を応用した、本実施形態におけるリダンダンシ演算について説明する。
まず、リペア候補ライン(1本のスペアラインについて、フェイル上に割当て可能なライン(フェイルライン)の候補)を数え上げて、通し番号j=1、2、・・・、nで表す(但し、同じスペアライングループに属するスペアラインは区別しない)。また、フェイルを通し番号i=1、2、・・・、Mで表し、スペアライングループを通し番号k=1、2、・・・、Kで表す。なお、計算量を減らすために、フェイルを救済しないスペアライングループは除外しておく。
【0069】
ここで、係数rijと変数xを、下記(13)及び(14)式のように定義すると、全てのフェイルが救済されるための条件は、下記(15)式で表される。また、どのリペア候補ラインも少なくとも1つはフェイルを救済するため、付帯条件として下記(16)式が成立する。
【0070】
【数10】

【0071】
また、スペアライングループkに属するスペアラインの本数をLとし、係数gkjを下記(17)式のように定義すると、スペアライングループk毎に使用されるスペアラインの本数を制限するための条件は、下記(18)式で表すことができる。また、どのリペア候補ラインも属するスペアライングループの数は1つであるから、付帯条件として下記(19)式が成立する。
【0072】
【数11】

【0073】
ここで、スペアラインを使用すると、属するスペアライングループkによって定まるコストwが発生する場合がある。この時の総コストzは、下記(20)で表すことができる。
【0074】
【数12】

【0075】
全てのフェイルを救済して、総コストzを最小化するという最適化問題を考えると、以下に示すように、(15)式を第1の制約条件、(18)式を第2の制約条件とし、上記(20)式を目的関数とした、0−1整数計画問題として定式化される。
【0076】
【数13】

【0077】
ここで、下記(21)式に示すような、行列A、b、x、cを定義すると、目的関数及び制約条件は、下記(22)、(23)式のように表すことができる。
【0078】
【数14】

【0079】
このように、本実施形態におけるリダンダンシ演算では、上記(23)式で表される制約条件の下、(22)式で表される目的関数zを最小化するという最適化問題を解き、xの最適解を求めることにより、あるブロックのフェイル分布に対して、全フェイルを救済し且つ総コストzを最小化することのできるスペアラインの割当パターンを求める。そして、リダンダンシ演算における0−1整数計画法の解法として、上述した間接列挙法を適用した分枝限定法を用いる。
【0080】
具体的には、リダンダンシ演算における最適化問題の規模の縮小化については以下のように行う。あるフェイルi’に対して、リペア候補ラインがj’の1通りしかない場合、リペア候補ラインj’の採用が確定し、xj’=1と定まる。この時、行列Aの第j’列と、行列x、cの第j’行は削除することができ、行列bは、b−(Aの第j’列)、すなわち、下記(24)式で置き換えることができる。
【0081】
【数15】

【0082】
この結果、行列bnewの第i’行の成分は、1−ri’j’なので零となるが、その他にも第i行(1M)が零ならば、フェイルiも同時に救済されているので、このような行は全て行列A、bnewから削除することができる。また、行列bnewの第M+k行(1K)が零ならば、スペアライングループkのスペアラインは全て使い果たしているので、このような行を行列A、bnewから削除する。スペアライングループkに属するリペア候補ラインj(すなわち、gkj=1となるj)についてはx=0と定まるので、行列Aの第j列と、行列x、cの第j行も削除することができる。このような操作を繰り返した結果、行列Aの第i行(1M)の成分が全て零となった場合、フェイルiは救済不可能と判定される。
【0083】
この他、最適化問題の規模を縮小する方法として、救済できるフェイル数が大きなリペア候補ラインjの採用を確定する(x=1)という方法も考えられる。また、その他のヒューリスティックな方法によって採用するリペア候補ラインを確定していくと、同様に問題規模を縮小することができる。
【0084】
以下、リダンダンシ演算装置20の演算処理部21によって実行されるリダンダンシ演算の処理手順について、図6のフローチャートを参照して説明する。
【0085】
まず、演算処理部21は、演算条件データ記憶部22から演算条件データを読み込むと共に、フェイルアドレスデータ記憶部23からフェイルアドレスデータを読み込む(ステップS1)。そして、演算処理部21は、演算条件データの内、マスクデータとリペアマスクデータを用いて判定用マスクデータを作成する(ステップS2)。
【0086】
ここで、判定用マスクデータとは、マスクデータとリペアマスクデータとの論理和をとり、その結果得られたデータにビット反転を施して得られるデータである。図7に、図3(a)のスペアライングループXSLG1に対応する演算条件データから作成した判定用マスクデータを示す。この判定用マスクデータは、上記(13)式で表される係数rijを作成するため、つまり、あるリペア候補ラインjが、あるフェイルiを救済可能か否かを判別するために用いられるデータであり、判定用マスクデータとフェイルアドレスデータとの論理和をとることで得られたアドレスデータが、そのリペア候補ラインjが属するスペアライングループのベースアドレスデータと一致する場合、そのリペア候補ラインjはフェイルiを救済可能であると判別することができる。
【0087】
このように、演算処理部21は、判定用マスクデータとフェイルアドレスデータとの論理和をとることで得られたアドレスデータが、そのリペア候補ラインjが属するスペアライングループのベースアドレスデータと一致するか否かを判別することによって、そのリペア候補ラインjはフェイルiを救済可能であるか否かを判別して係数rijを作成する他、上記(17)式で表される係数gijを作成して、(21)式で表される各行列を作成する(ステップS3)。そして、演算処理部21は、上述したような0−1整数計画法の解法として、間接列挙法を適用した分枝限定法を用いて、(22)(23)式で表される最適化問題を解き、xの最適解(以下、救済解と称す)を求めることにより、あるブロックのフェイル分布に対して、全フェイルを救済し且つ総コストzを最小化することのできるスペアラインの割当パターンを求める(ステップS4)。
【0088】
そして、演算処理部21は、上記ステップS4における演算結果を表示部24に表示させる(ステップS5)。具体的には、演算処理部21は、救済解を求めることができればスペアラインの割当パターンを表示部24に表示させ、救済解を求めることができなければ「救済不可能」というメッセージを表示部24に表示させる。そして、演算処理部21は、救済解を求めることができた場合、実際のリダンダンシ処理を行う(レーザトリマ等によってスペアラインとフェイルラインとの置換を行う)レーザリペア装置に、使用するスペアラインのアドレス(リペアアドレス)を通知する(ステップS6)。なお、このレーザリペア装置が、メモリ試験装置10内に設けられていない場合、一旦、演算結果を所定の記憶部に記憶しておき、全てのメモリデバイス30の試験とリダンダンシ演算が終了した後、上記記憶部に記憶されている演算結果を記憶媒体に格納して、レーザリペア装置に演算結果を移動させるようにしても良い。
【0089】
本願発明者は、様々なフェイル分布やスペアライングループの配置構造を用いて、上述した本実施形態におけるリダンダンシ演算の検証を行い、例えば図8に示すような基本的なスペアライングループの配置構造では、フェイル数が多くてもリダンダンシ演算に要する時間は数msec程度であるという結果を得ることができ、また、救済不可能な条件でリダンダンシ演算を行った場合は、正確に救済不可能という演算結果を得ることができた。図8は、リダンダンシ演算の検証に用いたフェイル分布及びスペアライングループの配置構造の一例である。図8(a)は、スペアライングループXSLG1及びYSLG1の配置構造を示し、図8(b)は、セグメントSEG1におけるフェイル分布(フェイルアドレス)を示し、図8(c)は、本実施形態におけるリダンダンシ演算の結果として得られたスペアラインの割当パターンを示している。
さらに、従来のリダンダンシ演算では救済解を得ることができなかったフェイル分布及びスペアライングループの配置構造を用いて、本実施形態におけるリダンダンシ演算の検証を行った結果、数十msec程度の短時間で救済解を得ることができた。
【0090】
以上説明したように、本実施形態におけるリダンダンシ演算装置20では、全てのフェイルが救済されるための条件を第1の制約条件とし、同一の救済能力を有するスペアラインの集合であるスペアライングループ毎に使用されるスペアラインの本数を制限するための条件を第2の制約条件とし、スペアラインをフェイルの救済に使用した場合に発生する総コストを目的関数とし、上記第1及び第2の制約条件の下、上記目的関数(総コスト)を最小化するという最適化問題を0−1整数計画法を適用して解くことにより、メモリセル領域(セグメント)におけるフェイル分布に対するスペアラインの割当パターンを求める。
【0091】
すなわち、従来のリダンダンシ演算では、救済効率の高いリペア候補ラインに優先的にスペアラインの割当てを行うため、最終的に全フェイル救済完了となるのか、または救済不可能となるのかはスペアラインの割当てが終了するまでわからなかったが、本実施形態におけるリダンダンシ演算では、演算の始めから(15)式で表される全てのフェイルが救済されるための制約条件を考慮して、目的関数を最小化するという最適化問題を解くため、得られた救済解は必ず全フェイルの救済を満足していることになる。従って、本実施形態のリダンダンシ演算によれば、従来では必要であったリトライが不要となるので、メモリデバイスの構造に依存しない汎用性を備えることができると共に、リダンダンシ演算の高速化を図ることが可能であり、その結果、メモリデバイス30の救済率の向上を図ることが可能である。
【0092】
また、本実施形態のリダンダンシ演算では0−1整数計画法を用いるため、変数xは「1」または「0」の値しか取り得ず、リダンダンシ演算の高速化に寄与する。さらに、0−1整数計画法の解法として、間接列挙法を適用した分枝限定法を用いることにより、さらにリダンダンシ演算の高速化を図ることが可能である
【0093】
なお、上記実施形態において、スペアラインをフェイルの救済に使用した場合に発生する総コストzを目的関数としたが、これに限らず、フェイルの救済に使用されるスペアラインの総数を目的関数とし、この使用されるスペアラインの総数を最小化するという最適化問題を0−1整数計画法を適用して解くようにしても良い。この場合、(20)式において、係数cを削除すれば良い。
【0094】
また、上記実施形態では、メモリ試験装置10内にリダンダンシ演算装置20が設けられている場合を想定して説明したが、これに限らず、リダンダンシ演算装置20を別個に設け、メモリ試験装置10からフェイル情報を取得するような構成としても良い。
【図面の簡単な説明】
【0095】
【図1】本発明の一実施形態に係るリダンダンシ演算装置20を備えたメモリ試験装置10の構成ブロック図である。
【図2】本発明の一実施形態に係るメモリデバイス30の内部構造を示す概念図である。
【図3】本発明の一実施形態に係るリダンダンシ演算装置20における演算条件データ記憶部22に記憶されている演算条件データの第1の例である。
【図4】本発明の一実施形態に係るリダンダンシ演算装置20における演算条件データ記憶部22に記憶されている演算条件データの第2の例である。
【図5】演算条件データにおけるマスクデータの作成方法を示す説明図である。
【図6】本発明の一実施形態に係るリダンダンシ演算装置20における演算処理部21が実行するリダンダンシ演算のフローチャートである。
【図7】リダンダンシ演算で使用される判定用マスクデータの作成方法を示す説明図である。
【図8】本発明の一実施形態に係るリダンダンシ演算装置20にて行われるリダンダンシ演算の検証例である。
【図9】リダンダンシ処理の説明図である。
【符号の説明】
【0096】
10…メモリ試験装置、11…試験パターン発生部、12…アドレス変換部、13…コンパレータ、14…フェイルメモリコントローラ、15…フェイルメモリ、20…リダンダンシ演算装置、21…演算処理部、22…演算条件データ記憶部、23…フェイルアドレス記憶部、24…表示部、30…メモリデバイス

【特許請求の範囲】
【請求項1】
複数のメモリセルが行アドレス方向及び列アドレス方向に2次元配列されたメモリセル領域の周辺に、複数の予備セルからなるスペアラインが設けられたメモリデバイスの不良救済を行う上で、前記メモリセル領域におけるフェイル分布に対する前記スペアラインの割当パターンを演算によって求めるリダンダンシ演算装置であって、
全てのフェイルが救済されるための条件を第1の制約条件とし、
同一の救済能力を有するスペアラインの集合であるスペアライングループ毎に使用されるスペアラインの本数を制限するための条件を第2の制約条件とし、
フェイルの救済に使用されるスペアラインの総数、またはスペアラインをフェイルの救済に使用した場合に発生する総コストを目的関数とし、
前記第1及び第2の制約条件の下、前記目的関数を最小化するという最適化問題を0−1整数計画法を適用して解くことにより、前記メモリセル領域におけるフェイル分布に対する前記スペアラインの割当パターンを求める演算処理部を備える、
ことを特徴とするリダンダンシ演算装置。
【請求項2】
前記演算処理部は、
1本のスペアラインについて、前記メモリセル領域におけるフェイル上に割当可能なラインの候補をリペア候補ラインj(j=1、2、・・・、n)とし、
リペア候補ラインjがフェイルi(i=1、2、・・・、M)を救済する場合を「1」、救済しない場合を「0」とする係数rijと、
リペア候補ラインjがスペアライングループk(k=1、2、・・・、K)に属する場合を「1」、属さない場合を「0」とする係数gkjと、
リペア候補ラインjを採用する場合を「1」、採用しない場合を「0」とする変数xとを定義し、
前記係数rijと変数xとから成る下記(15)式を、全てのフェイルが救済されるための第1の制約条件とし、
前記係数gkjと変数xとから成る下記(18)式を、スペアライングループk毎に使用されるスペアラインの本数を制限するための第2の制約条件とし、
スペアライングループkによって定まるコストwと前記係数gkjと前記変数xとから成る下記(20)式で表される総コストzを目的関数とし、
前記第1及び第2の制約条件の下、前記目的関数zを最小化するという最適化問題を0−1整数計画法を適用して解くことにより、xの最適解を求める、
ことを特徴とする請求項1記載のリダンダンシ演算装置。
【数1】

【請求項3】
前記演算処理部は、
下記(21)式で表される行列A、b、x、cを作成し、前記目的関数zを下記(22)式で置き換え、前記第1及び第2の制約条件を下記(23)式で置き換えることを特徴とする請求項2記載のリダンダンシ演算装置。
【数2】

【請求項4】
前記メモリデバイスにおける前記スペアライングループの配置構造に応じた演算条件データを予め記憶する演算条件データ記憶部と、
前記メモリセル領域におけるフェイルのアドレスを示すフェイルアドレスデータを記憶するフェイルアドレス記憶部と、を備え、
前記演算処理部は、前記演算条件データ及び前記フェイルアドレスデータを基に、リペア候補ラインjがフェイルiを救済するか否かを判別することにより、前記係数rijを作成することを特徴とする請求項2または3記載のリダンダンシ演算装置。
【請求項5】
前記演算条件データは、前記スペアライングループの救済領域であるメモリセル領域の原点位置を規定するベースアドレスデータと、スペアライングループの行アドレス方向及び列アドレス方向の幅を規定するマスクデータと、スペアライングループの救済可能範囲を規定するリペアマスクデータとで構成されることを特徴とする請求項4記載のリダンダンシ演算装置。
【請求項6】
前記演算処理部は、前記演算条件データの内、前記マスクデータと前記リペアマスクデータとの論理和をとった結果のビット反転データを判定用マスクデータとし、当該判定用マスクデータと前記フェイルアドレスデータとの論理和をとった結果が、前記ベースアドレスデータと一致した場合に、リペア候補ラインjがフェイルiを救済すると判別することを特徴とする請求項5記載のリダンダンシ演算装置。
【請求項7】
前記0−1整数計画法の解法として、間接列挙法を適用した分枝限定法を用いることを特徴とする請求項1〜6のいずれか一項に記載のリダンダンシ演算装置。
【請求項8】
複数のメモリセルが行アドレス方向及び列アドレス方向に2次元配列されたメモリセル領域の周辺に、複数の予備セルからなるスペアラインが設けられたメモリデバイスの不良救済を行う上で、前記メモリセル領域におけるフェイル分布に対する前記スペアラインの割当パターンを演算によって求めるリダンダンシ演算方法であって、
全てのフェイルが救済されるための条件を第1の制約条件とし、
同一の救済能力を有するスペアラインの集合であるスペアライングループ毎に使用されるスペアラインの本数を制限するための条件を第2の制約条件とし、
フェイルの救済に使用されるスペアラインの総数、またはスペアラインをフェイルの救済に使用した場合に発生する総コストを目的関数とし、
前記第1及び第2の制約条件の下、前記目的関数を最小化するという最適化問題を0−1整数計画法を適用して解くことにより、前記メモリセル領域におけるフェイル分布に対する前記スペアラインの割当パターンを求める、
ことを特徴とするリダンダンシ演算方法。
【請求項9】
メモリデバイスのパス/フェイルを示すフェイル情報を格納するフェイルメモリを有するメモリ試験装置であって、
前記フェイルメモリに格納された前記フェイル情報を用いて、前記メモリデバイスのメモリセル領域におけるフェイル分布に対する前記スペアラインの割当パターンを演算によって求める請求項1〜請求項7のいずれか一項に記載のリダンダンシ演算装置を備えることを特徴とするメモリ試験装置。






【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate


【公開番号】特開2009−64515(P2009−64515A)
【公開日】平成21年3月26日(2009.3.26)
【国際特許分類】
【出願番号】特願2007−231569(P2007−231569)
【出願日】平成19年9月6日(2007.9.6)
【出願人】(504145364)国立大学法人群馬大学 (352)
【出願人】(000006507)横河電機株式会社 (4,443)
【Fターム(参考)】